电脑上插了三个摄像头,写了一个程序,创建三个IGraphBuilder采集,每次运行到第三个的run的时候,都返回错误,错误提示为:hr = 0x8007001f 连到系统上的设备没有发挥作用。 请问是什么原因?class CHKCapture
{
public:
CHKCapture(const wchar_t* pszUniqueCameraName);
~CHKCapture(void); HRESULT Run();
void Stop(); CComPtr<ICaptureGraphBuilder2> m_pCapture;
CComPtr<IGraphBuilder> m_pGB;
CComPtr<IMediaControl> m_pMC;
CComPtr<IMediaEvent> m_pME;
}先通过枚举器枚举到电脑中有3个摄像头,并记录下这三个摄像头的UniqueName,然后为每一个摄像头创建一个CHKCapture类,在Run中连接filter构建graph,并调用Run开始采集,在Stop中调用IMediaControl::Stop停止采集。但是每次运行到第三个Run的时候,都提示:“hr = 0x8007001f 连到系统上的设备没有发挥作用”的错误,前两个都正常。
当调用Stop的时候,第一个能正常运行,第二个就卡死在Stop中。高手帮帮忙解决一下,分数不够还可以加,感激不尽。
{
public:
CHKCapture(const wchar_t* pszUniqueCameraName);
~CHKCapture(void); HRESULT Run();
void Stop(); CComPtr<ICaptureGraphBuilder2> m_pCapture;
CComPtr<IGraphBuilder> m_pGB;
CComPtr<IMediaControl> m_pMC;
CComPtr<IMediaEvent> m_pME;
}先通过枚举器枚举到电脑中有3个摄像头,并记录下这三个摄像头的UniqueName,然后为每一个摄像头创建一个CHKCapture类,在Run中连接filter构建graph,并调用Run开始采集,在Stop中调用IMediaControl::Stop停止采集。但是每次运行到第三个Run的时候,都提示:“hr = 0x8007001f 连到系统上的设备没有发挥作用”的错误,前两个都正常。
当调用Stop的时候,第一个能正常运行,第二个就卡死在Stop中。高手帮帮忙解决一下,分数不够还可以加,感激不尽。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货