默认摄像头设备显示屏幕而不是物理摄像头

blu*_*yke 18 webcam camera

在许多网站等上,它要求允许使用您的相机,这指向您在 Windows 中的默认相机。我想知道是否有办法设置默认摄像头来显示您的实际 Windows 屏幕,而不是来自网络摄像头的图片。

因此,例如,如果您被允许在网站上访问您的相机,它会显示您的屏幕或其区域,而不是您的网络摄像头图片。

这可能吗?窗口 10

use*_*686 27

让浏览器本身假装有一个“桌面”摄像头在技术上是可能的,但由于它只能在那个单一的浏览器上工作,看起来还没有人这样做过。(至少我找不到适用于 Chrome 或 Firefox 的任何工作——尽管它们将“屏幕共享”作为 WebRTC 功能,但似乎还没有人将其链接到网络摄像头 API。)

但是,有些产品会安装自定义设备驱动程序,以创建虚拟“网络摄像头”设备,然后任何程序都可以使用该设备。您的网络浏览器会认为您有两个网络摄像头;您仍然需要批准相机请求,并且仍然由您来选择“首选”相机。

我在 google 上搜索了“虚拟相机设备”,发现了几种可以流式传输桌面的产品,例如Webcamoid(似乎是多平台和开源的)、VCam(商业)、OBS VirtualCamOBS的插件)。

(对于 Linux,有两个“通用”驱动程序,akvcam或较旧的v4l2loopback,但它们仍然需要一个可以提供实际视频数据的程序。对于 Windows 和 macOS,每个产品最有可能使用自己的自定义驱动程序。)

  • “但他们仍然需要一个可以提供实际视频数据的程序”——`ffmpeg` 可用于提供桌面作为视频源:`ffmpeg -f x11grab -video_size "$(xrandr | grep -Po '(? <=primary )\d+x\d+')" -i "$DISPLAY" -c:v ffvhuff -f matroska - | mpv -` (9认同)