首页 文章

当我的音频持续时间小于视频视频持续时间时,如何循环音轨ffmpeg

提问于
浏览
2

我正在使用follow命令从图像生成视频:

“ffmpeg - framerate 1/2 -i storage / emulated / 0 / myapp / temp / picutre%0d.png”“ - i /storage/emulated/0/myapp/music.mp3-strict experimental -s”getScreenResolution() “-r 30 -vcodec mpeg4 -b 150k -ab 48000 -ac 2 -ar 22050 -shortest”filename;

我的音频持续时间是30秒,我的总视频时长是1分钟 . 有一种方法可以循环我的音频来完成我的视频时长吗?我正在使用lib ffmpeg for android在我的应用程序上生成vídeo .

2 回答

  • 0

    你必须生成1分钟的音频文件 . 这意味着你必须计算重复次数,然后像这样创建一个 concat.txt 文件:

    file '/path/to/original.mp3'
    file '/path/to/original.mp3'
    

    在您的情况下,原始音频的持续时间为30秒,您需要1分钟 . 所以 concat.txt 文件中只有2行 .

    然后生成新的音频文件:

    ffmpeg -t 60 -f concat -i concat.txt -c copy -t 60 output.mp3
    

    最后一步是为您的视频添加新的音频文件 . 更多细节请阅读 Eugen Rieck here的答案

  • 0

    您可以使用循环过滤器 .

    "ffmpeg - framerate 1/2 -i storage/emulated/0/myapp/temp/picutre%0d.png" + "-f lavfi -i amovie=/storage/emulated/0/myapp/music.mp3:loop=999 -strict experimental -s " + getScreenResolution() + " -r 30 -vcodec mpeg4 -b 150k -ab 48000 -ac 2 -ar 22050 -shortest " + filename;
    

相关问题