none
DirectShow访问摄像头的兼容性问题 RRS feed

  • 问题

  • 在使用DirectShow访问摄像头获取图像,并实时显示到自己创建的窗口中(VC++工程),当系统进入屏保或按下[CTRL+ALT+DEL]等,再返回桌面后,出现以下问题:

    1.窗口中的图像消失(只剩下白色),此时使用 CLSID_SampleGrabber 可以抓取到最后一次看到的图像(不是白色背景),但不再更新;

    2.会出现Aero被禁用,检测报告为:程序兼容性问题,导致桌面窗口管理器(DWM)被禁用。此时:

       - 重启“Desktop Window Manager Session Manager”服务后,Aero恢复有效,但摄像头画面问题依然存在;摄像头画面正常情况下,重启“Desktop Window Manager Session Manager”服务不会导致摄像头画面异常。

       - 退出程序,Aero自动恢复

    3.获取图像不显示到自己创建的窗口,由DirectShow自己创建窗口显示时不存在问题。

    请问这个属于什么问题,该如何解决?

    • 已编辑 mzhlnk 2017年8月31日 10:07 补充说明
    2017年8月31日 10:04