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

关于用DShow进行视频采集的有关问题

2012-09-13 
关于用DShow进行视频采集的问题小弟刚学ds,对ds 不是太理解。做了一个小的对话框的例子,进行视频采集。思路

关于用DShow进行视频采集的问题
小弟刚学ds,对ds 不是太理解。
做了一个小的对话框的例子,进行视频采集。
思路如下:
两个Filter
一个源Filter,用枚举然后BindToObject()产生的
另一个是自己写的Filter,就叫Grabber Filter吧,
Grabber Filter,是继承CTransInplaceFilter,重写了CheckInputType()和Transfrom()两个函数
然后把这两个Filter加入Filter Graph,连接,然后run()
后台开一个线程,不停的把采集到的数据,用StretchDIBits()函数画到对话框上。

可是调了三天了,还是没有调试出来,怎么回事啊。是我的Filter写错了还是我的思路就不对
有知道的能详细的给我说一下吗
或者单独的讨论一下也行。
这个地方迷了好久了,急啊

[解决办法]
首先如果你的采集设备提供Source Filter(即采集的Filter)那么你就直接再连个Video Renderer Filter就可以实现播放了;那么如果你的采集设备不提供这个Source Filter你自己就要写一个采集的Filter;所以按照你上面写的是的一个源Filter是用枚举产生的,觉得不靠谱;最好还是先在GraphEdit连一下整个Filter,然后就按照这整条Filter用程序实现!希望这些能帮你解决问题。。。
[解决办法]
你把你的filter用graphedit连接起来介个render试试能不能播放,如果能播放的话应该是你对rgb的处理出错了,如果不能播放就可能是你的filter写的有问题了。

热点排行