如何循环输入视频x使用FFMPEG的时间?

时间:2015-07-13 09:45:51

标签: ffmpeg

我希望将相同的视频循环4次,并使用ffmpeg输出为视频。 所以我在ffmpeg中创建这样的代码。

ffmpeg -loop 4 -i input.mp4 -c copy output.mp4

但是当我运行它时会给出这样的错误。

Option Loop Not Found.

如何解决这个错误。请帮助我

2 个答案:

答案 0 :(得分:4)

在最近的版本中,它是

ffmpeg -stream_loop 4 -i input.mp4 -c copy output.mp4

由于存在错误,上述内容不适用于MP4。但如果你换上MKV,它对我有用。

ffmpeg -i input.mp4 -c copy output.mkv

然后,

ffmpeg -stream_loop 4 -i output.mkv -c copy output.mp4

答案 1 :(得分:1)

我发现过时/错误版本-stream_loop的等效解决方法with input concatenation

ffmpeg -f concat -safe 0 -i "video-source.txt" -f concat -safe 0 -i "audio-source.txt" -c copy -map 0:0 -map 1:0 -fflags +genpts -t 10:00:00.0 /path/to/output.ext

这将使视频和音频彼此独立循环,并在10小时标记处强制停止输出。

两个文本文件均由

组成
file '/path/to/file.ext'

,但是您必须确保重复此行足够的次数以使输出满意。

例如,如果您的视频总时间少于音频总时间,则视频输出将比预期的时间更早停止,并且音频将继续播放,直到达到-t 10H或音频过早结束。