我正在创建 Windows 视频捕获应用程序并使用 DirectShow 进行捕获。随着每一帧的到来,我想将其作为原始 RGB 位图抓取到缓冲区中,此时我的代码将执行我需要的任何处理。
我一直在寻找与我想做的类似的示例,而且我在网上看到的所有地方,人们都建议使用 IMediaDet和/或 ISampleGrabber接口(interface)进行逐帧捕获。不幸的是,两者都已弃用,甚至不在最新版本的 Windows SDK 中。
在 DirectShow 中进行逐帧捕获的最佳(现代)方法是什么?如果没有,我是否应该使用其他库来进行逐帧捕获?
最佳答案
Sample Grabber
几年前就被弃用了,那是在 DirectShow 开发实际上停止几年之后。也就是说,按照建议的方法阅读时使用 Sample Grabber
,它将非常适合您。
您唯一需要做的就是将定义复制到您的源代码中,查看详细信息:
关于c++ - DirectShow - 获取视频帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8039809/