我正在尝试使用FFmpeg从一系列图像和各种音频文件中创建视频。虽然使用以下命令创建包含图像序列的视频没有问题:
ffmpeg -f image2 -i image%d.jpg video.mpg
我还没有找到在特定点添加音频文件到生成的视频的方法。 是否可以做类似的事情:
ffmpeg -f image2 -i image%d.jpg -i audio1.mp3 AT 10s -i audio2.mp3 AT 15s video.mpg
非常感谢任何帮助!
编辑:
我的案例中的解决方案是在下面的答案中使用blahdiblah建议的sox。首先必须创建一个空的音频文件作为起点:
sox -n -r 44100 -c 2 silence.wav trim 0.0 20.0
这将生成一个20秒的空WAV文件。之后,您可以将空文件与其他音频文件混合。
sox -m silence.wav "|sox sound1.mp3 -p pad 0" "|sox sound2.mp3 -p pad 2" out.wav
最终音频文件的持续时间为20秒,并在开始时播放sound1.mp3,在2秒后播放sound2.mp3。 要将图像序列与音频文件组合,我们可以使用FFmpeg。
ffmpeg -i video_%05d.png -i out.wav -r 25 out.mp4
答案 0 :(得分:2)
有关添加带有偏移量的单个音频输入,请参阅this question。 -itsoffset
bug mentioned there仍处于打开状态,但请参阅用户对其可行的某些案例的评论。
如果它适用于您的情况,那将是理想的:
ffmpeg -i in%d.jpg -itsoffset 10 -i audio1.mp3 -itsoffset 15 -i audio2.mp3 out.mpg
如果没有,您应该能够将所有音频文件与sox组合,覆盖或插入静音以产生正确的偏移,然后将其用作FFmpeg的输入。不方便,但保证工作。
答案 1 :(得分:1)
我能想到的一种方法是首先在视频的整个持续时间内创建音频文件,然后将音频与视频文件复用