将PNG序列的alpha通道转换为H265的Y通道
Converting alpha channel of PNG sequence to Y channel of H265
我有一个需要两个 H265 流 (YUV420) 的视频渲染器,我需要烘焙它们以使其中一个形成另一个的 alpha 蒙版。这一切都已解决并且运行良好,但是如果我按照此处的说明进行操作:
ffmpeg splitting RGB and Alpha channels using filter
Alpha 通道稍微关闭。我的假设是这是由于 alpha 通道通过 RGB->YUV 矩阵缩放。
输入是一系列PNG文件,输出是两个MKV文件。
那么问题来了:我如何告诉 FFmpeg 在不触及像素数据的情况下将 alpha 通道“重新解释”为 Y 通道?理想情况下,如另一个问题所示,在一个命令行中生成两个 MKV:s,但至少不重写源文件。
我通过使用带有像素格式 yuv444p 的原始视频格式和一个编写原始视频输入的小脚本解决了这个问题(基本上是将 alpha 通道写入 Y 通道并在其他任何地方置零)。
如果有更简洁的解决方案(即不需要通过自定义脚本进行管道传输的解决方案),我会很乐意接受它作为答案:)
我有一个需要两个 H265 流 (YUV420) 的视频渲染器,我需要烘焙它们以使其中一个形成另一个的 alpha 蒙版。这一切都已解决并且运行良好,但是如果我按照此处的说明进行操作: ffmpeg splitting RGB and Alpha channels using filter Alpha 通道稍微关闭。我的假设是这是由于 alpha 通道通过 RGB->YUV 矩阵缩放。
输入是一系列PNG文件,输出是两个MKV文件。
那么问题来了:我如何告诉 FFmpeg 在不触及像素数据的情况下将 alpha 通道“重新解释”为 Y 通道?理想情况下,如另一个问题所示,在一个命令行中生成两个 MKV:s,但至少不重写源文件。
我通过使用带有像素格式 yuv444p 的原始视频格式和一个编写原始视频输入的小脚本解决了这个问题(基本上是将 alpha 通道写入 Y 通道并在其他任何地方置零)。
如果有更简洁的解决方案(即不需要通过自定义脚本进行管道传输的解决方案),我会很乐意接受它作为答案:)