要设置以最长文件为准进行音视频混流,你可以使用 FFmpeg 的 amix
过滤器并结合 -shortest
选项。下面是一个示例命令:
.\pkg\ffmpeg\windows\bin\ffmpeg.exe -i .\runtime\videos\Protobuff.mp4 -i .\runtime\audios\protobuff\target\1_group.wav -c:v copy -filter_complex "[1:a]amix=inputs=2:duration=longest[outa]" -map 0:v -map "[outa]" -shortest output1.mp4
在这个命令中,我们指定了输入的视频文件和音频文件,并使用 -c:v copy
将视频流直接复制到输出文件中。通过 -filter_complex
部分的 [1:a]amix=inputs=2:duration=longest[outa]
,我们将第二个音频文件与默认的音频流进行混流,并选择以最长音频文件的时长作为输出结果的音频时长。
最后,通过 -map 0:v -map "[outa]"
来指定输出文件中的视频流来自第一个输入文件的视频流,而音频流来自之前混流得到的结果。通过 -shortest
选项,确保输出结果的时长与最短输入源相匹配。
请根据实际情况调整输入、输出文件路径及名称。同时,请确保输入的视频编码格式和容器格式与输出参数兼容。
内容由零声教学AI助手提供,问题来源于学员提问