如何使用ffmpeg以横向模式制作视频

如何使用ffmpeg以横向模式制作视频,ffmpeg,video-streaming,command-line-interface,video-processing,mkv,Ffmpeg,Video Streaming,Command Line Interface,Video Processing,Mkv,我有四段视频聊天。不知何故,我成功地将视频切割成片段,存储在阵列中,然后堆叠起来,最后在下面的youtube链接中找到视频。我在纵向视图中使用的尺寸是640*480。但我需要在风景中展示它们。给我提些建议 景观: 纵向视图: 这些是我的意见 输入#0,matroska,webm,来自“PA473fbf06ed1f952f95c88b9cf22ed0ba_pre.mkv”: 元数据: 编码器:GStreamer matroskamux版本1.8.1.1 创建时间:2019-11-05T06:08

我有四段视频聊天。不知何故,我成功地将视频切割成片段,存储在阵列中,然后堆叠起来,最后在下面的youtube链接中找到视频。我在纵向视图中使用的尺寸是640*480。但我需要在风景中展示它们。给我提些建议

景观: 纵向视图:

这些是我的意见

输入#0,matroska,webm,来自“PA473fbf06ed1f952f95c88b9cf22ed0ba_pre.mkv”:
元数据:
编码器:GStreamer matroskamux版本1.8.1.1
创建时间:2019-11-05T06:08:19.000000Z
持续时间:00:01:05.50,开始时间:63.041000,比特率:30 kb/s
流#0:0(英文):视频:h264(基线),yuvj420p(pc,渐进式),360x480,SAR 1:1 DAR 3:4,15 tbr,1k tbn,2k tbc(默认)
元数据:
标题:视频
输入#1,matroska,webm,来自“PA183db0ed986039de3197092103a411eb_pre.mkv”:
元数据:
编码器:GStreamer matroskamux版本1.8.1.1
创建时间:2019-11-05T06:07:20.000000Z
持续时间:00:03:15.14,开始时间:4.062000,比特率:172 kb/s
流#1:0(英文):视频:h264(基线),yuvj420p(pc,渐进式),360x480,SAR 1:1 DAR 3:4,15 fps,15 tbr,1k tbn,2k tbc(默认)
元数据:
标题:视频
输入#2,matroska,webm,来自“PA62a810038cbcc00be21fac43e98f5ee1_pre.mkv”:
元数据:
编码器:GStreamer matroskamux版本1.8.1.1
创建时间:2019-11-05T06:07:45.000000Z
持续时间:00:02:21.71,开始时间:28.803000,比特率:92 kb/s
流#2:0(英文):视频:h264(基线),yuvj420p(pc,渐进式),360x480,SAR 1:1 DAR 3:4,15 tbr,1k tbn,2k tbc(默认)
元数据:
标题:视频
来自“PA8fa44ff1ba37ee510a045198bca6f04a_pre.mkv”的输入#3,matroska,webm:
元数据:
编码器:GStreamer matroskamux版本1.8.1.1
创建时间:2019-11-05T06:07:48.000000Z
持续时间:00:01:50.69,开始时间:32.318000,比特率:28 kb/s
流#3:0(英文):视频:h264(基线)、yuvj420p(pc、渐进式)、360x480、SAR 1:1 DAR 3:4、15fps、15tbr、1k tbn、2k tbc(默认)
元数据:
标题:视频

首先,我将所有视频分辨率更改为640:480,因为每个视频可能具有不同的分辨率(概率)。所以我设定了一个固定的解决方案

ffmpeg-i PA8fa44ff1ba37ee510a045198bca6f04a_pre.mkv-vf scale=640:480 PA8fa44ff1ba37ee510a045198bca6f04a.mkv-hide_banner
输入#0,matroska,webm,来自PA8fa44ff1ba37ee510a045198bca6f04a_pre.mkv':
元数据:
编码器:GStreamer matroskamux版本1.8.1.1
创建时间:2019-11-05T06:07:48.000000Z
持续时间:00:01:50.69,开始时间:32.318000,比特率:28 kb/s
流#0:0(英文):视频:h264(基线),yuvj420p(pc,渐进式),360x480,SAR 1:1 DAR 3:4,15 fps,15 tbr,1k tbn,2k tbc(默认)
元数据:
标题:视频
流映射:
流#0:0->#0:0(h264(本机)->h264(libx264))
按[q]停止,按[?]获取帮助
[swscaler@0000021d72eb3f80]使用了不推荐的像素格式,请确保正确设置了范围
[libx264@0000021d72b33b40]使用SAR=9/16
[libx264@0000021d72b33b40]使用cpu功能:MMX2 SSE2Fast SSSE3 SSE4.2 AVX
[libx264@0000021d72b33b40]配置文件高,级别2.2,4:2:0,8位
[libx264@0000021d72b33b40]264-核心158 r2984 3759fcb-H.264/MPEG-4 AVC编解码器-Copyleft 2003-2019-http://www.videolan.org/x264.html -选项:cabac=1 ref=3 deblock=1:0:0 analysis=0x3:0x113 me=hex submi=7 psy=1 psy\u rd=1.00:0.00 mixed\u ref=1 me\u range=16色度\u me=1格线=1 8x8dct=1 cqm=0死区=21,11 fast\u pskip=1色度\u qp\u偏移量=-2线程=6前瞻线程=1切片线程=0 nr=0抽取=1交错线程=0 bluray\u compat=0受限线程=0 b帧=3 b金字塔=2 b\u自适应=1 b\u偏差=0直接=1权重b=1开放线程=0权重P=0权重P=2关键点=250关键点最小=15场景=40内部刷新=0 rc\u前瞻=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmax=0 qpstep=4 ip\U比率=1.40 aq=1:1.00
输出#0,matroska,至“PA8fa44ff1ba37ee510a045198bca6f04a.mkv”:
元数据:
编码器:Lavf58.32.104
流#0:0(英文):视频:h264(libx264)(h264/0x34363248),yuvj420p(pc),640x480[SAR 9:16 DAR 3:4],q=-1--1,15帧每秒,1k tbn,15 tbc(默认)
元数据:
标题:视频
编码器:Lavc58.56.101 libx264

两个视频合并命令

ffmpeg
-i ddb97d85-fc21-4fb4-8062-ca2084a48aeb.mkv
-i a8665a5f-fb5e-44cb-a072-070fbe07a14f.mkv
-过滤复合物“[0:v][1:v]hstack”1572934056.mkv

三个视频合并命令

ffmpeg
-i 16f90447-c8b6-4077-b3b6-4B2C07E19B5.mkv
-i ef501109-0ee9-4924-8de1-65eb796a4a78.mkv
-i 0b284aa6-4175-472c-aaf6-837412f97f32.mkv
-过滤器组合“[1:v]比例=320:-1[左];[2:v]比例=320:-1[右];[left][right]hstack[底部];[0:v][底部]vstack”1572934058.mkv

康卡特司令部

ffmpeg
-i 1572934031.mkv-i 1572934056.mkv-i 1572934058.mkv-i 1572934089.mkv-i 1572934155.mkv-i 1572934169.mkv-i 1572934198.mkv-filter_complex“[0]比例=640:480:原力_纵横比=减小,pad=640:480:(ow-iw)/2:(oh-ih)/2,fps=fps=fps=30,setsar=1[1]比例=640:480:原力_纵横比=减小,pad=480:(oh-iw=480:(oh-iw)/2)/2,fps=fps=30,setsar=1[1v];[2]比例=640:480:原力与纵横比=减小,pad=640:480:(ow-iw)/2:(oh-ih)/2,fps=fps=30,setsar=1[2v];[3]比例=640:480:原力与纵横比=减小,pad=640:480:(ow-iw)/2:(oh-ih)/2,fps=fps=30,setsar=1[3v];[4]比例=640:480:原力与纵横比=减小,pad=480:(ow-iw)/2:(oh-ih)/2/第二,fps=fps=fps=fps=fps=30,fps=fps=fps=fps=fps=fps=fps=fps=fps=fps=fps=fps=fps=fps=fps=fps=30,setsar=30,setsar=1[5v];[6]规模=640:480:480:480:(OWIW)/2:(oh ih)/2,pad=2,fps=640:4:480:(oh/2,fps=4:480:(oh/2:(oh)/2,fps=30,fps=30,fps=30,fps=fps=30,fps=fps=fps=30,(oh=30,(oh=30,第三方)第三方)第三方,第三方,第三方(第三方)第三方,第三方(第三方)第三方(第三方)第三方)第二C00CC6FBCEAA57EE.mp4

无需
ffmpeg \
-i left-1.mkv -i right-1.mkv \
-i topleft-2.mkv -i topright-2.mkv -i bottom-2.mkv \
-filter_complex \
"[0]scale=640:480:force_original_aspect_ratio=decrease,pad=640:960:(ow-iw)/2:(oh-ih)/2,setsar=1[left1];
 [1]scale=640:480:force_original_aspect_ratio=decrease,pad=640:960:(ow-iw)/2:(oh-ih)/2,setsar=1[right1];
 [left1][right1]hstack=inputs=2[set1];
 [2]scale=640:480:force_original_aspect_ratio=decrease,pad=640:480:(ow-iw)/2:(oh-ih)/2,setsar=1[topleft2];
 [3]scale=640:480:force_original_aspect_ratio=decrease,pad=640:480:(ow-iw)/2:(oh-ih)/2,setsar=1[topright2];
 [4]scale=640:480:force_original_aspect_ratio=decrease,pad=1280:480:(ow-iw)/2:(oh-ih)/2,setsar=1[bottom2];
 [topleft2][topright2][bottom2]xstack=inputs=3:layout=0_0|w0_0|0_h0[set2];
 [set1][set2]concat=n=2:v=1:a=0[v]" \
-map "[v]" output.mp4