Silverlight 5网络摄像头捕获:同一设备上的两个捕获源

时间:2012-03-24 11:00:42

标签: silverlight webcam video-capture

我尝试将相同的视频源设备(WEB CAM)连接到两个不同的CaptureSource对象,但它看起来像是想要工作。

系统抛出异常:连接到系统的设备无法正常运行。 (HRESULT异常:0x8007001F)

我认为网络摄像头已锁定在第一个CaptureSource上。

是否有人知道如何从同一设备显示两个图像但是来自不同的捕获源?我想在一侧使用简单的CaptureSource,在另一侧使用MediaStremSource进行一些过滤,以查看原始视频源和已过滤视频源之间的差异。

我想使用普通的CaptureSource,因为它的性能优于MediaStreamSource。当引发OnSample事件时,MediaStreamSource会丢失时间,这不会发生在CaptureSource上。

2 个答案:

答案 0 :(得分:0)

我知道这个异常,当你在调试模式下工作时,silverlight会失败。 按Ctrl + F5运行项目。 (发布模式)

另外使用请求权限方法这将显示相​​机的权限窗口。

答案 1 :(得分:0)

它很有能力,就是我自己做的。但是,在尝试使用不同的相机和不同的输入时.... 2连接到USB3的MS LifeCams =相同的错误。连接到USB2集线器到USB2 MB就像一个魅力。此外,如果我运行类似ActiveCam的东西并且崩溃,可能需要重新启动。哦,你需要使用2个捕获源....但仍然可以请求许可一次。

还记得不要使用DefaultCaptureDevice但是:

var dev1 = CaptureDeviceConfiguration.GetAvailableVideoCaptureDevices()[0];
var dev2 = CaptureDeviceConfiguration.GetAvailableVideoCaptureDevices()[1];

可能有更好的命名约定和逻辑来检查设备是否存在等等......