本部分介绍如何编写自定义媒体基础转换(MFT)。
MFT 清单
实现自定义 MFT 时,请使用以下清单来确定要求:
MFT | 要求 |
---|---|
All MFTs | 所有MFT都必须实现 IMFTransform。 以下主题提供有关实现此接口的详细信息: |
编码器和解码器 | 要求:请参阅实现编解码器 MFT。 建议:实施 IMFQualityAdvise 或 IMFQualityAdvise2,以支持服务质量(QoS)通知。 |
视频解码器和视频处理器 | 可选:支持 DirectX 视频加速。 |
硬件编解码器 | 请参阅硬件 MFT。 |
要使 MFT 可被应用程序发现... | 请参阅注册和枚举 MFT。 |
异步数据处理 | 默认 MFT 模型使用同步(阻止)调用来处理数据。 对于某些 MFT,异步处理效率更高。 但是,实现起来也更为复杂。 有关详细信息,请参阅异步 MFT。 |
速率控制、技巧模式或反向播放 | 请参阅实现速率控制。 |
如果 MFT 创建了线程... | 实现 IMFRealTimeClient 接口。 |
如果 MFT 具有许可限制... | 考虑使用使用范围机制。 请参阅 用途限制。 |
如果要移植现有的 DirectX 媒体对象(DMO)... | 请参阅MFT 和 DMO 的比较。 |
本节包含以下主题: