我有一台服务器,其中有16个视频捕获卡 channel ,并希望通过ffmpeg对其进行流传输,是否可能会有另一个流以16个独特 channel 的4x4拼贴输出?

编辑:由于尚未提交有效答案,因此添加了赏金-将奖励给第一个可以显示代码以产生4个x4网格的16个实时 channel 的输入(输入设备为http://localhost:8090/x.mpg)其中x =数字0-15,MPEG1VIDEO格式的352x288视频,YUV420P颜色为24-30FPS)-或使我引向该解决方案的代码-输出将位于http://localhost:8090/all.mpg,将是1408x1152 mpg的实时流。

最佳答案

我认为您正在寻找ffmpeg覆盖过滤器,这是documentation的示例。下面是2x1示例的副本,但您必须对流格式,帧大小和更多面板进行调整。

ffmpeg -i left.avi -i right.avi -filter_complex "
nullsrc=size=200x100 [background];
[0:v] setpts=PTS-STARTPTS, scale=100x100 [left];
[1:v] setpts=PTS-STARTPTS, scale=100x100 [right];
[background][left]       overlay=shortest=1       [background+left];
[background+left][right] overlay=shortest=1:x=100 [left+right]
"

另外,还有一种方法可以用VLC生成马赛克。

关于ffmpeg - 如何将多个ffmpeg流组合成一个4x4拼贴?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15391368/

10-16 11:28