如何以编程方式从Microsoft LifeCam捕获800万像素静态图像?

时间:2012-11-21 13:20:07

标签: c# webcam directshow jpeg

我有一个能够捕获8MP(3840 x 2160)静态图像的Microsoft LifeCam。

切换到此模式时,使用LifeCam附带的软件,将禁用视频捕获。它仅适用于静态照片。视频捕捉最多只能达到1280 x 720。

我无法看到如何使用提供的软件以外的任何方法访问该功能。在GraphEdit中检查捕获设备时,只有1个引脚(称为“捕获”),它只提供视频。

如何访问此功能(最好使用C#)?

1 个答案:

答案 0 :(得分:0)

DirectShow用于视频捕获(流式视频),而非静止图像。对于剧照,您需要使用不同的API:Windows Image Acquisition (WIA)

我的理解是使用后处理实现最高分辨率,例如超分辨率和插值,并且此模式不能通过流式视频驱动程序获得。

该规范称它仅为500万像素。 WIA(和TWAIN)驱动程序可用性可能受操作系统版本的限制。由于USB带宽限制,最大分辨率 - 甚至非内插 - 可以限制为压缩视频格式。此帖子 - Can't make IAMStreamConfig.SetFormat() to work with LifeCam Studio - 枚举模式并显示此模型支持最高分辨率(1920x1080)。