如何确定哪些摄像头是正面和背面时,使用HTML5 getUserMedia和enumerateDevices api ?



当使用HTML5 getUserMedia api访问相机时,您可以:

  1. 请求未指定的"用户";面对相机
  2. 请求未指定的"环境";面向摄像头(可选左或右)
  3. 请求可用摄像机列表

最初我们使用的是" faceing& quot;约束选择相机。如果摄像头正对着"用户"我们按照惯例显示镜像。

但是,当用户没有一个面向用户和一个面向环境的相机时,我们会遇到问题。他们可能缺少其中一个,或者有多个。这可能导致使用错误的相机,或者相机没有被正确镜像。

所以我们正在考虑列举设备。然而,我还没有找到一种方法来确定视频设备是否"面向用户"。并且应该被镜像

是否有可用的API来确定视频输入是否为"用户";面对这些api中的问题?

枚举设备时,作为输入的设备可能有一个称为getCapabilities()的方法。如果这个方法可用,你可以调用它来获得一个MediaTrackCapabilities对象。该对象有一个名为facingMode的字段,该字段列出了该设备的有效facingMode选项。

对于我来说,这在PC上是空的,但在我的Android设备上它可以正确填充。

这里有一个jsfiddle,你可以用它在你自己的设备上检查:https://jsfiddle.net/juk61c07/4/

感谢O. Jones的评论给我指明了正确的方向。

相关内容

  • 没有找到相关文章

最新更新