我创建了几个 v4l2loopback 设备用作虚拟网络摄像头,并且能够让 Chrome 通过navigator.mediaDevices.enumerateDevices()
.我还能够构建 gstreamer 管道以将视频和图像数据发送到这些虚拟网络摄像头。据报道,我无法将这些设备指定为前置设备InputDeviceInfo.getCapabilities()
。这可能与 v4l2loopback 参数有关吗?是否可以通过某种方式配置我的 gstreamer 管道来完成?
答案1
通用的v4l2标准对“前置”和“后置”或“侧面”相机一无所知。
当涉及到智能手机时,这样的属性大多(仅?)有意义。这对我来说没有意义很好的老式模拟相机也不是我的USB网络摄像头也不是我的内置笔记本电脑网络摄像头,所有这些我都用过v4l2
。这对我来说没有多大意义全景相机要么(因为在这种情况下前/后二分法太粗糙),但 v4l2 无论如何都不支持......
所以:
- v4l2 不公开标准传达相机方向的属性
- 结果,
v4l2loopback
两者都没有
- 结果,
- 我也从未见过任何会暴露相机方向的 GStreamer 流,但似乎有关于这样的事情的讨论(显然由于缺乏标准化源而被拒绝)https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/520)
我想答案是:“不,不可能”