Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.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
用于合并多个视频和背景图像的FFMPEG脚本_Ffmpeg_Video Editing - Fatal编程技术网

用于合并多个视频和背景图像的FFMPEG脚本

用于合并多个视频和背景图像的FFMPEG脚本,ffmpeg,video-editing,Ffmpeg,Video Editing,我有30个在纵横比上不同的剪辑(比如有些视频是10801920(它们是垂直的),有些是1280720(水平纵横比视频)。我想合并所有剪辑,但也有一个高宽比为1920x1080的静态背景图像。视频将使所有剪辑连接在一起,但它们有一个背景图像(就像youtube上的tiktok编译视频一样)。有人能帮我完成这个程序吗?使用3个视频的示例。它可以很容易地扩展到30个视频。我将命令分成多行,以便您更好地查看语法。在执行之前,将其设置为一行 ffmpeg -i 1.mp4 -i 2.mp4 -i 3.mp

我有30个在纵横比上不同的剪辑(比如有些视频是10801920(它们是垂直的),有些是1280720(水平纵横比视频)。我想合并所有剪辑,但也有一个高宽比为1920x1080的静态背景图像。视频将使所有剪辑连接在一起,但它们有一个背景图像(就像youtube上的tiktok编译视频一样)。有人能帮我完成这个程序吗?

使用3个视频的示例。它可以很容易地扩展到30个视频。我将命令分成多行,以便您更好地查看语法。在执行之前,将其设置为一行

ffmpeg -i 1.mp4 -i 2.mp4 -i 3.mp4 -i image.png -filter_complex 
"[0:v]scale=1280:720:force_original_aspect_ratio=increase,crop=1280:720,setsar=1,fps=25,format=yuv420p[v0];
 [1:v]scale=1280:720:force_original_aspect_ratio=increase,crop=1280:720,setsar=1,fps=25,format=yuv420p[v1];
 [2:v]scale=1280:720:force_original_aspect_ratio=increase,crop=1280:720,setsar=1,fps=25,format=yuv420p[v2];
 [0:a]aformat=sample_rates=44100:channel_layouts=stereo[a0];
 [1:a]aformat=sample_rates=44100:channel_layouts=stereo[a1];
 [2:a]aformat=sample_rates=44100:channel_layouts=stereo[a2];
 [v0][a0][v1][a1][v2][a2]concat=n=3:v=1:a=1[vid][a];
 [3][vid]overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2[v]"
-map "[v]" -map "[a]" -c:v libx264 -c:a aac -movflags +faststart output.mp4
参考资料:


Stackoverflow不适合您的请求……答案对您有用吗?