C++ InfTee过滤器没有';不能使用VMR
我有一个类似于源-->输入-->VMR7/VMR9的过滤图 当我连接类似于源-->VMR7/VMR9的图形时,图形工作正常,但一旦插入InfTee 在源和VMR之间进行筛选然后我发现infte筛选器的o/p引脚和VMR的I/p引脚之间的引脚连接有问题。 我不想添加任何其他过滤器,如AVIdecompressor或colorspace converter过滤器b/w InfTee和VMR 连接继续进行 直到InfTee输出引脚的DecideAllocator()函数 打电话。此函数具有以下代码: hr=pPin->NotifyAllocator(pTee->m_pAllocator,TRUE) NotifyAllocator返回E_FAIL 这里,pPin是接收引脚(VMR的输入引脚)和pTee->m_定位器 将从输入管脚接收的分配器信息存储在其自己的 NotifyAllocator()实现 我在网上查了一下,发现问题出在InfTee过滤器上,因为它是哑的,但并没有得到任何正确的解决方案C++ InfTee过滤器没有';不能使用VMR,c++,render,directshow,multimedia,C++,Render,Directshow,Multimedia,我有一个类似于源-->输入-->VMR7/VMR9的过滤图 当我连接类似于源-->VMR7/VMR9的图形时,图形工作正常,但一旦插入InfTee 在源和VMR之间进行筛选然后我发现infte筛选器的o/p引脚和VMR的I/p引脚之间的引脚连接有问题。 我不想添加任何其他过滤器,如AVIdecompressor或colorspace converter过滤器b/w InfTee和VMR 连接继续进行 直到InfTee输出引脚的DecideAllocator()函数 打电话。此函数具有以下代码:
有人能帮我吗?VMR-7、VMR-9、EVR-所有渲染器都“坚持”使用自己的内存分配器,由视频表面的内存支持。这些分配器有特定的要求。您无法更改此行为 另一方面,InfTee“坚持”自己的输出管脚内存分配器,并在输出管脚之间共享它,因此在T’ing提要时不会发生数据复制(这就是您所说的“哑性质”) 你们不能让它一起工作,你们需要一个额外的过滤器,将数据从tee复制到视频渲染器的内存中。就性能而言,最理想的是一个定制的转换过滤器,它可以复制数据,并考虑到扩展的步幅。没有它,您就有一个最接近的库存/注册过滤器来达到相同的目的