"""
利用ffmpeg快速提取视频的音频文件
"""

# 参考"https://www.cnblogs.com/CodeAndMoe/p/13360011.html window安装ffmpeg并且设置环境变量 https://zhuanlan.zhihu.com/p/118362010"
import os
from better_ffmpeg_progress import FfmpegProcess


def main(v_path): # v_path表示视频所在路径 生成后的MP3音频文件会在该视频文件目录中
# ffmpeg_path 这个路径是bin目录下的ffmpeg的路径
ffmpeg_path = r"J:\PC_path\idm_download\ffmpeg-master-latest-win64-gpl-shared\ffmpeg-master-latest-win64-gpl-shared\bin\ffmpeg" # ffmpeg设置好环境变量后的ffmpeg目录
audio_path = v_path.split('.')[0] + ".mp3"
# 拼接好运行ffmpeg的命令行语句
# cmd = ffmpeg_path + " -f concat -safe 0 -i " + file_txt_path + " -c copy " + result_file_path

cmd = ffmpeg_path + f" -i {v_path} -q:a 0 -map a {audio_path}"

print(cmd)
# 调用cmd命令行执行ffmpeg提取视频音频
os.popen(cmd)
print('-------------fine!')

def main2(v_path):
  #参考 FFmpeg 速成教学(九):让FFmpeg工作时任务进度条和剩余时间!全网最优秀的解决方案!_哔哩哔哩_bilibili
# ffmpeg_path 这个路径是bin目录下的ffmpeg的路径
ffmpeg_path = r"J:\PC_path\idm_download\ffmpeg-master-latest-win64-gpl-shared\ffmpeg-master-latest-win64-gpl-shared\bin\ffmpeg" # ffmpeg设置好环境变量后的ffmpeg目录
audio_path = v_path.split('.')[0] + ".mp3"
# 拼接好运行ffmpeg的命令行语句
# cmd = ffmpeg_path + " -f concat -safe 0 -i " + file_txt_path + " -c copy " + result_file_path

#将原始命令转化成列表
cmd = ffmpeg_path + f" -i {v_path} -q:a 0 -map a {audio_path}"
cmd_list = cmd.split(" ")

#执行ffmpeg命令,并且输出执行进度
process = FfmpegProcess(cmd_list)
process.run()


if __name__ == '__main__':
path = "H:\视频\电影2\怦然Flipped.rmvb"
main2(path)
posted on 2024-05-09 00:51  我爱你的  阅读(257)  评论(0)    收藏  举报