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

问题描述 投票:5回答:2

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

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

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

Option Loop Not Found.

如何做到这一点没有错误。请帮我

ffmpeg
2个回答
3
投票

在最近的版本中,它是

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
投票

我找到了一个等效的解决方案with input concatenation用于过时/错误的版本-stream_loop:

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或音频提前结束。

© www.soinside.com 2019 - 2024. All rights reserved.