我有一个旧的计算机视觉实验,它使用Video for Windows从连接到PC的相机中抓取帧。这是一个黑客,它使用VfW创建一个预览窗口,然后它从窗口DC执行GetDIBits。
我终于准备好将它移植到DirectShow了。我的理解是我可以使用ISampleGrabber从视频捕获图中抓取帧,但现在我读到了ISampleGrabber is deprecated。
从视频Feed中抓取帧的不推荐使用方式是什么?我是否必须实现自己的DirectShow过滤器,它基本上与ISampleGrabber有关?
答案 0 :(得分:6)
不推荐使用DirectShow;只是DirectShow编辑服务。我强烈建议使用DirectShow,因为支持的范围要广得多,除非需要MF的特定功能。
多年来一直没有开发DES,但样本采集器是一种广泛使用的过滤器,它在某种程度上独立于DES。我很乐意建议您使用它。如果在将来的Windows版本中存在问题,则更换过滤器的时间不会超过一两天。
答案 1 :(得分:5)
如果你只针对Vista / Win7,我认为Windows Media Foundation是你最好的选择,否则你仍然可以使用DirectShow / SampleGrabber方法,我怀疑它会很快被删除。相关问题here。