FFmpeg - 用于马赛克视频输出的 Vstack 多个输入 - 额外输出 空白屏幕始终为绿色

标签 ffmpeg mosaic

我有一个网站,我们将多个视频与 ffmpeg xstack 结合起来。它是一个自动化的过程。当视频数量不是偶数时,马赛克中的空白图 block 为绿色。我想弄清楚如何使备用空白变黑。
我试过xstack=inputs=2:fill='black':layout=0_0 (这给出了一个未找到的错误对象)也试过 -filter_complex "color=s=1920x1080:c=black" .
有什么建议么?这是整个命令:

ffmpeg -i video1 -i video1 -i video1 -i video1 -i video1 -i video1 -i video1 \ 
    -i video1 -i video1 -filter_complex \
    "color=s=1920x1080:c=black;[0:v] setpts=PTS-STARTPTS, scale=qvga [a0];[1:v] setpts=PTS-STARTPTS, scale=qvga [a1];[2:v] setpts=PTS-STARTPTS, scale=qvga [a2];[3:v] setpts=PTS-STARTPTS, scale=qvga [a3];[4:v] setpts=PTS-STARTPTS, scale=qvga [a4];[5:v] setpts=PTS-STARTPTS, scale=qvga [a5];[6:v] setpts=PTS-STARTPTS, scale=qvga [a6];[7:v] setpts=PTS-STARTPTS, scale=qvga [a7];[8:v] setpts=PTS-STARTPTS, scale=qvga [a8];[a0][a1][a2][a3][a4][a5][a6][a7][a8]xstack=inputs=9:layout=0_0|w0_0|w0+w1_0|0_h0|w0_h0|w0+w1_h0|0_h0+h1|w0_h0+h1|w0+w1_h0+h1[out] " \
    -map "[out]" output

最佳答案

不需要彩色滤光片,因为仅 xstack 就足够了。具有 8 个输入的 3x3 示例;右下角用黑色填充:

ffmpeg -i input -i input -i input -i input -i input -i input -i input -i input -filter_complex "[0:v] setpts=PTS-STARTPTS, scale=qvga [a0];[1:v] setpts=PTS-STARTPTS, scale=qvga [a1];[2:v] setpts=PTS-STARTPTS, scale=qvga [a2];[3:v] setpts=PTS-STARTPTS, scale=qvga [a3];[4:v] setpts=PTS-STARTPTS, scale=qvga [a4];[5:v] setpts=PTS-STARTPTS, scale=qvga [a5];[6:v] setpts=PTS-STARTPTS, scale=qvga [a6];[7:v] setpts=PTS-STARTPTS, scale=qvga [a7];[a0][a1][a2][a3][a4][a5][a6][a7]xstack=inputs=8:layout=0_0|w0_0|w0+w1_0|0_h0|w0_h0|w0+w1_h0|0_h0+h1|w0_h0+h1:fill=black[out] " -map "[out]" output.mp4
确保您使用的是 4.3+ 或来自当前 git master 分支的构建。

关于FFmpeg - 用于马赛克视频输出的 Vstack 多个输入 - 额外输出 空白屏幕始终为绿色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63429206/

相关文章:

audio - 使用 FFMPEG 下载 HLS 视频时,不会下载音频

c++ - 视频中的Opencv马赛克

algorithm - 如何编写图像马赛克生成器

android - ffmpeg avio_open() 无法打开用于写入编码流的输出文件

c++ - 应用warpperspective(opencv)后如何发现坐标(0,0)?

javascript - 马赛克 Canvas 2d 游戏中的地形联合

HTML/CSS 马赛克图片库

c - .avi 文件的无操作重新混合

c++11 - 基于 FFMPEG H.265 C++ 的编码器 : avcodec_open2 fails

html - 在连续流上解码音频数据失败并出现空错误