三行代码  ›  专栏  ›  技术社区  ›  MirceaKitsune

使用ffmpeg将rgba图像序列编译为两个单独的视频(rgb+alpha)

  •  0
  • MirceaKitsune  · 技术社区  · 3 年前

    我计划使用Blender为游戏渲染动画序列。我需要的视频有透明的背景,格式由它的引擎预期。这种格式包括透明度被定义为一个具有相同fps和持续时间的单独灰度视频。由于在Blender中拆分RGB和Alpha通道比较复杂,我更喜欢直接从ffmpeg中进行此操作。

    输入目录包含rgba格式的png文件的图像序列(例如:0000.png到0100.png)。我需要ffmpeg将它们编译成两个单独的视频:一个只包含RGB通道(保持透明度为黑色),另一个只包含灰度alpha通道。最后我会有一些像我的视频.mp4+我的视频.mp4。

    我熟悉使用以下方法将不透明图像序列编译为视频:

    ffmpeg -f image2 -i /path/to/sequence/%04d.png output.mp4
    

    但我不知道如何提取alpha频道并将其制作成单独的视频文件。要获得这个结果,最简单的ffmpeg命令是什么?

    1 回复  |  直到 3 年前
        1
  •  0
  •   Gyan    3 年前

    使用

    ffmpeg -f image2 -i /path/to/sequence/%04d.png my_video.mp4 -vf alphaextract my_video_mask.mp4