178
178
请看这个例子,取自本博客文章,但更新了最新的语法。大意如下:
ffmpeg -i video.mp4 -i audio.wav \
-c:v copy -c:a aac -strict experimental output.mp4
这里,我们假设视频文件还不包含任何音频流,并且你希望输出格式(这里是MP4)与输入格式相同。您可以使用任何其他想要的音频编解码器。
如果你的音频或视频流比较长,你可以添加-shortest
选项,这样ffmpeg会在一个文件结束后停止编码。
如果你的输出容器可以处理(几乎)任何编解码器–比如MKV–那么你可以简单地复制音频和视频流。
ffmpeg -i video.mp4 -i audio.wav -c copy output.mkv
如果你的输入视频已经包含了音频,而你想替换它,你需要告诉ffmpeg要取哪个音频流:
ffmpeg -i video.mp4 -i audio.wav \
-c:v copy -c:a aac -strict experimental \
-map 0:v:0 -map 1:a:0 output.mp4
map
选项使得ffmpeg只使用第一个输入的第一个视频流和第二个输入的第一个音频流作为输出文件。
如果你的音频流比视频流长,你必须把它剪掉,否则最后一帧视频作为静止图像和音频运行。
要剪切任何一个音频流,你可以使用 -ss [hh:mm:ss] -t [ss] 在 -i “file.ext "之前。