我正在尝试开发一个视频源 DirectShow 过滤器。
以下图表有效:
[h264 源]->[Elecard H264 解码器]->[视频渲染器]
[h264 源]->[MS DTV-DVD 解码器]->[DMO 颜色转换器]->[视频渲染器]
我的过滤器输出 h264,它将被解码为 NV12,然后使用默认的基本视频渲染器以某种方式渲染,该渲染器只接受 RGB32。
视频渲染器是我无法解决的限制。当我尝试将过滤器自动连接到渲染器时,会自动加载“AVI 解压缩器”但不起作用。
我现在的解决方案是安装可以输出 RGB32 的 Elecard H264 解码器。我需要安装某种具有高 MERIT 值的颜色转换器。默认的 DMO 颜色转换器可以为我做到这一点,但它的 MERIT 似乎不够高。我不想依赖昂贵的第 3 方解决方案。
我可以弄乱 DMO 颜色转换的优点来强制它加载,但这似乎不是一个好的解决方案。我可能会影响系统上的其他应用程序。另一种可能性是开发我的颜色转换器过滤器,它也可能与已安装的应用程序发生冲突。
我不确定如何进行。