首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > 多媒体 >

有先辈用过这个“CoreAVC Video Decoder” filter吗?加载不成功

2013-01-08 
有前辈用过这个“CoreAVC Video Decoder” filter吗?加载不成功代码如下:IBaseFilter* m_pVideoDecodeFilter

有前辈用过这个“CoreAVC Video Decoder” filter吗?加载不成功
代码如下:
IBaseFilter  * m_pVideoDecodeFilter;
hr = ::CoCreateInstance(CLSID_Decoder264, NULL,CLSCTX_INPROC_SERVER,
IID_IBaseFilter, (void **)(&m_pVideoDecodeFilter));

CLSID_Decoder264宏:是CoreAVC Video Decoder这个filter的GUID号,是系统已注册的(可以在graphedit中找到);

问题:CoCreateInstance返回提示内存访问无效,不知道为什么,是不是参数没有对,困扰很久了,我很怀疑是不是IID_IBaseFilter该参数不对;还是最后那个参数的类型不是IBaseFilter  *;

多多指教,先谢谢了!
[解决办法]
是不是DEBUG模式下调试加载的?有些FILTER不允许调试的.
如果GraphEdit里可以加载,应该就是这个问题。
[解决办法]
你应该这样,


IBaseFilter * m_pVideoDecodeFilter;
hr = ::CoCreateInstance(CLSID_Decoder264, NULL,CLSCTX_INPROC_SERVER,
IID_IBaseFilter, (void **)(&m_pVideoDecodeFilter));

MessageBox(...); //这个程序不要用 VS 启动,应该是手动双击启动后,出现 MessageBox 用 VS attach 上去,就行了,

[解决办法]
coreavc里面有反调式的

热点排行