【发布时间】:2013-12-25 01:29:29
【问题描述】:
我目前正在用 c# 编写一个小项目,旨在用于基于 Windows 的平板电脑。
我已经集成了来自http://easywebcam.codeplex.com/ 的开源代码来运行平板电脑相机。但是,当您单击开始按钮时,它会要求您在前置或后置摄像头之间进行选择,并且由于它是在触摸屏平板电脑上使用的,所以它有点繁琐。
有谁知道添加按钮以在摄像头之间进行选择的方法,或者更好的是自动选择后置摄像头的方法?
【问题讨论】:
标签: c#
我目前正在用 c# 编写一个小项目,旨在用于基于 Windows 的平板电脑。
我已经集成了来自http://easywebcam.codeplex.com/ 的开源代码来运行平板电脑相机。但是,当您单击开始按钮时,它会要求您在前置或后置摄像头之间进行选择,并且由于它是在触摸屏平板电脑上使用的,所以它有点繁琐。
有谁知道添加按钮以在摄像头之间进行选择的方法,或者更好的是自动选择后置摄像头的方法?
【问题讨论】:
标签: c#
对于 Windows 应用商店应用,可以从 DeviceInformation.FindAllAsync(DeviceClass.VideoCapture) 返回视频捕获设备 ID 列表。详情请见Device enumeration sample。
然后您可以set MediaCaptureInitializationSettings.VideoDeviceId 并使用它来初始化捕获会话。但是请注意,这仅支持无 UI 捕获。您无法在 CameraCaptureUI 对话框中自定义选择。
对于桌面应用程序,可以从设备分子返回视频捕获设备名字对象的列表(有关示例,请参阅 How To Get A List Of Available Video Capture Devices)。然后,您可以通过 IFilterGraph::AddFilter 将所需的设备名字对象插入过滤器图中。
【讨论】: