如何编写无输入流DMO(directx媒体对象)组件

时间:2013-04-19 10:16:31

标签: winapi directshow dmo

DMO似乎用于替换DirectShow变换过滤器。一些文件称可能存在没有输入流的DMO。但它应该如何运作?如果没有输入流,在函数IMediaObject::CheckInputType应该写什么?

1 个答案:

答案 0 :(得分:0)

您可以实施无输入DMO,例如我们假设DMO在内部生成输出。没有人会调用CheckInputType因为没有输入,这很好(您的CheckInputType正文将为空,例如返回E_NOTIMPL)。

但是你应该退后一步并解释它的用途。不,DMOs不能替代DirectShow过滤器。 DMO可以通过DMO包装器过滤器映射到DirectShow过滤器空间,但后者does not support DMOs with no inputs因此您的DMO将对DirectShow管道无用。

要创建自定义DirectShow源,您需要实现完整过滤器。