Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Video 如果持续时间不同,则叠加视频_Video_Ffmpeg - Fatal编程技术网

Video 如果持续时间不同,则叠加视频

Video 如果持续时间不同,则叠加视频,video,ffmpeg,Video,Ffmpeg,我有两个视频。我使用以下代码将一个视频覆盖在另一个视频上: -stream_loop {LoopCount} -i 1.mp4 -c copy -y 2.mp4 -i 2.mp4 -i preresult.mp4 -filter_complex "[0:v][1:v]overlay=shortest=1[out]" -map "[out]" -y result.mp4 -stream_loop{LoopCount}-i 1.mp4-c copy-y 2.mp4 -i 2.mp4-i preres

我有两个视频。我使用以下代码将一个视频覆盖在另一个视频上:

-stream_loop {LoopCount} -i 1.mp4 -c copy -y 2.mp4 -i 2.mp4 -i preresult.mp4 -filter_complex "[0:v][1:v]overlay=shortest=1[out]" -map "[out]" -y result.mp4 -stream_loop{LoopCount}-i 1.mp4-c copy-y 2.mp4 -i 2.mp4-i preresult.mp4-filter_complex“[0:v][1:v]overlay=shortest=1[out]”-map“[out]”-y result.mp4 {LoopCount}这是一个变量,用于存储覆盖视频比原始视频长多少倍的值

请告诉我如何在filter_complex中组合这两个命令,以便ffmpeg可以循环叠加视频多次,使其与preresult.mp4的持续时间匹配


谢谢大家!

-stream\u loop-1-i 1.mp4-i preresult.mp4-filter\u complex“[0:v][1:v]overlay=shortest=1[out]”-map“[out]”-y result.mp4


-1
将流循环设置为无限循环,使preresult成为覆盖过滤器中较短的视频。

是的,我尝试了此选项。但是我需要最终的视频和preresult.mp4一样长。例如,叠加视频持续3秒,预结果持续15秒。输出应为持续时间为15秒的视频,在这15秒期间,叠加视频应循环。现在,由于参数指定为shortest=1,最终视频将为3秒长。请将ffmpeg升级到至少4.1。stream_loop在几个月前还是有问题的。谢谢,升级到夜间构建有帮助。