1

我正在尝试使用 DirectShow 从网络摄像头捕获视频。我假设使用 SampleGabber 类。现在我看到 DirectShow 只能以一些所需的 fps 连续读取帧。DirectShow 可以按请求读取帧吗?

4

1 回答 1

1

DirectShow 管道设置流式视频。如果您进行了设置,帧将通过 Sample Grabber 及其回调连续流式传输。如果您不强制更改格式(特别是强制视频为 RGB),回调本身会增加最小的处理开销。取决于是否在那里处理或跳过一帧。

根据请求抓取将采用最后一个已知的视频帧流式传输,或者接下来通过 Sample Grabber。这是典型的操作模式。

一些设备提供了额外的功能,可以根据要求进行静态拍摄。这是一种罕见的情况,它在 MSDN 上有所描述:Capturing an Image From a Still Image Pin

一些相机可以产生与捕获流分离的静止图像,并且通常静止图像比捕获流产生的图像质量更高。相机可能有一个用作硬件触发的按钮,也可能支持软件触发。支持静止图像的相机会暴露一个静止图像引脚,即引脚类别 PIN_CATEGORY_STILL。

从设备获取静止图像的推荐方法是使用 Windows 图像采集 (WIA) API。[...]

要触发静止引脚,请使用 [...]

于 2013-08-13T12:32:02.547 回答