在一个图像平面上缩略图的多个图像序列。(FFMPEG)

use*_*754 3 video ffmpeg images video-streaming

我在问这个问题,因为我找不到与我的问题类似的东西。我想读取不同的图像序列流并将其“缩略图”放入新的图像流中。

从下面的示例图像中,您可以看到我正在读取不同的图像序列来组成一个缩略图大图像流。

是否可以仅使用 ffmpeg 命令来解决这个问题???

谢谢!

在此处输入图片说明

Raj*_*jib 5

放置 4 个图像流的方法是:

ffmpeg -y -i input1.mp4 -i input2.mp4 -i input3.mp4 -i input4.mp4 -filter_complex "[0:0]pad=iw*2:ih*2[a];[a][1:0]overlay=w[x];[x][2:0]overlay=0:h[y];[y][3:0]overlay=w:h" -strict -2 output.mp4  
Run Code Online (Sandbox Code Playgroud)

这不使用任何其他过滤器,它使用垫来减小尺寸,然后使用叠加过滤器将其放置在四个像素位置。但在过滤器链中,它必须多次执行此操作,组合前 2 个输入的效果,然后叠加在第三个和第四个上。

我使用过mp4容器,但它可以用于其他容器。-strict -2在大多数情况下您不需要 -在这里使用它是因为我的 ffmpeg 默认aac为 mp4 的音频编码器。

如果您的情况很可能没有音频,那么您将不再需要该-strict -2选项。如果您确实有音频作为输入不想在输出中使用它,请-an在命令中添加参数。

或者,这是一个不错的选择,请使用以下map选项:

ffmpeg -y -i input1.mp4 -i input2.mp4 -i input3.mp4 -i input4.mp4 -filter_complex "[0:0]pad=iw*2:ih*2[a];[a][1:0]overlay=w[x];[x][2:0]overlay=0:h[y];[y][3:0]overlay=w:h[v]" -map '[v]' output.mp4
Run Code Online (Sandbox Code Playgroud)