0
点赞
收藏
分享

微信扫一扫

python使用ffmpeg将视频、音频合并合成(速度最快)

一、ffmpeg安装

ffmpeg下载安装教程及介绍

ffmpeg -y -i video.mp4 -i audio.m4a -c:v copy -c:a copy -strict experimental -shortest output.mp4
ffprobe -show_format video.mp4

二、合成代码

import subprocess

video_path = r"D:\Video\video.mp4"
audio_path = r"D:\Video\audio.m4a"
output_temp = r"D:\Video\output.mp4"
process = subprocess.Popen(
        [
            'ffmpeg',
            '-y',   # 忽略已存在的输出文件,强制输出
            '-i', video_path,
            '-i', audio_path,
            '-c:v', 'copy',  # 复制当前视频编码方式,速度最快
            '-c:a', 'copy',  # 复制当前音频编码方式,速度最快
            '-strict', 'experimental',
            '-shortest',   # 截取视频、音频之间最短
            output_temp
        ],
        stdout=subprocess.PIPE,
        stderr=subprocess.PIPE,
        text=True   # 让 stdout, stderr 为字符串,False 则为字节
)
stdout, stderr = process.communicate()
if process.returncode:
    print(f"视频音频合成失败: {stderr}")
else:
    print("合成成功!")
举报

相关推荐

0 条评论