我正在尝试将音频文件与视频文件合并。 我有两个选择:
在音频文件尚未结束时,有一个非常小的视频文件(例如,10秒)。
有一个非常长的视频文件(比我的任何音频文件都长),我可以在其上附加音频文件。我希望在音频播放完毕后剪切视频。
我使用后者和ffmpeg的-t选项。这意味着我必须获取音频文件的持续时间才能将其输入ffmpeg。是否可以避免这一步?
第一个解决方案的任何指针?
答案 0 :(得分:2)
使用ffmpeg的-shortest选项可以轻松解决第二个要点。有关详细信息,请参阅:http://www.ffmpeg.org/ffmpeg-doc.html#SEC12。
答案 1 :(得分:0)
如果要将新的音频与视频重复视频合并,直到音频播放完毕,可以尝试以下操作:
ffmpeg -stream_loop -1 -i input.mp4 -i input.mp3 -shortest -map 0:v:0 -map 1:a:0 -y out.mp4
使用-stream_loop -1表示无限循环输入。mp4,-shortest表示最短输入流结束时完成编码。这里最短的输入流将是input.mp3。
如果您想将新的音频与视频重复音频合并,直到视频结束,可以尝试以下操作:
ffmpeg -i input.mp4 -stream_loop -1 -i input.mp3 -shortest -map 0:v:0 -map 1:a:0 -y out.mp4
使用-y选项将覆盖输出文件而无需询问。
答案 2 :(得分:-2)
对于第一个,尝试ffmpeg -i yourmovie.mp4 -loop 10
循环输入10次