2017-01-03 75 views
1

我试图使用FFMPEG做9个视频网格,但最后一个必须是空白的。将空白屏幕添加到视频网格

|视频1 |视频2 |视频3 |

|视频4 |视频5 |视频6 |

|视频7 |视频8 |没有视频|

到目前为止,我得到这个:

ffmpeg -i video1.mp4 -i video2.mp4 -i video3.mp4 \ 
    -i video4.mp4 -i video5.mp4 -i video6.mp4 \ 
    -i video7.mp4 -i video8.mp4 -i video9.mp4 \ 
-filter_complex "[0:v][1:v][2:v]hstack=3[h1]; \ 
      [3:v][4:v][5:v]hstack=3[h2]; \ 
      [6:v][7:v][8:v]hstack=3[h3]; \ 
      [h1][h2][h3]vstack=3[v]" \ 
-map "[v]" mosaic.mp4 

其产生与9个视频一个完美的网格。

下一步是删除最后一个,并添加一个空白屏幕写有“无视频”。

我在this link有人说使用

-f lavfi -i color=s=WxH:color=black 

看到了,但我不知道如何(或者)使用它...

任何人都可以帮我吗?

回答

1

使用

ffmpeg -i video1.mp4 -i video2.mp4 -i video3.mp4 \ 
    -i video4.mp4 -i video5.mp4 -i video6.mp4 \ 
    -i video7.mp4 -i video8.mp4 -f lavfi -i color=s=WxH \ 
-filter_complex "[0:v][1:v][2:v]hstack=3[h1]; \ 
      [3:v][4:v][5:v]hstack=3[h2]; \ 
      [8]drawtext=text='No video':fontfile=/path/to/fontfile:fontsize=20:x=(W-tw)/2:y=(H-th)/2:fontcolor=white[bl]; 
      [6:v][7:v][bl]hstack=3:shortest=1[h3]; \ 
      [h1][h2][h3]vstack=3[v]" \ 
-map "[v]" mosaic.mp4 
+0

Mulvya,我想你的代码,但我得到这个错误: 无法分析选项值“宽x高”的图像尺寸 最后一条消息重复1次 错误设置期权的价值宽x高。 将选项应用于过滤器时出错。 错误初始化过滤器'颜色'与参数's = WxH color = s = WxH: ,这些值会不断增加: frame = 1463 fps = 9.8 q = 20.0 size = 54402kB time = 00:11:45.00 bitrate = 632.1kbits/s dup = 0 drop = 17087 speed = 4.71x – mvalencaa

+0

WxH是一个占位符,不要从字面上使用。更正了终止命令。 – Mulvya

+0

现在我可以生成没有文字的拼图!当我尝试添加它时,出现此错误: [Parsed_drawtext_2 @ 00000000027a3240]未找到选项'颜色' [AVFilterGraph @ 0000000002727d20]用args'初始化过滤器'drawtext'时出错text =无视频:fontfile = arial.ttf :fontsize = 20:x =(W-tw)/ 2:y =(H-th)/ 2:color = white' 初始化复杂滤镜时出错。 选项未找到 P.S .:我将字体复制到我的文件夹。 – mvalencaa