使用直接显示从DVD中抓取图像

时间:2010-10-15 11:14:45

标签: c++ directshow

有人知道使用DirectShow和C ++从DVD中获取图像的方法吗?使用DVD渲染器时不支持样本采集器,如果使用GetCurrentImage(它是VMR9无窗口控件的一部分),它似乎不起作用。

2 个答案:

答案 0 :(得分:1)

查看directshow示例中的“SampVid”示例:

http://msdn.microsoft.com/en-us/library/dd375468(VS.85).aspx

通过它,您可以编写自己的视频渲染器过滤器。你将拥有的唯一问题是如何捕获frmae,因为它通过“CDrawImage”类。 winutil.h& .cpp中包含的源代码,包含在直接显示基类中。滚动您自己的版本可以解决您的问题,并允许您在将图像数据写入屏幕时抓取它。

答案 1 :(得分:1)

编写一个trans-in-place视频过滤器,您可以使用它来获取样本并将其写入磁盘。

当您检测到按键时(截屏),请从过滤器的Transform()函数中调用回调到程序中。

有关编写过滤器的详细信息,请查看有关Writing Transform Filters的MSDN指南。

您可以查看MSDN中的EZRGB24 filter sample,其中演示了如何使用CTransformFilter

祝你好运!