You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Selenium WebDriver Chrome中修改虚拟视频设备名称

解决Chrome虚拟视频设备名称显示为文件名的问题

我之前在做自动化测试时也碰到过一模一样的问题——用--use-file-for-fake-video-capture指定虚拟视频源后,设备名称直接显示成了文件名,完全不符合需求。研究了Chrome的命令行参数和相关生态后,给你整理几个可行的方案:

1. 改用第三方虚拟摄像头工具(最推荐)

Chrome自带的fake视频流功能确实没有提供修改设备名称的参数,所以最靠谱的方式是绕过这个原生功能,用第三方虚拟摄像头工具来实现:

  • 比如OBS Virtual Camera、ManyCam或者DroidCam这类工具,都支持自定义虚拟摄像头的名称;
  • 安装工具后,在设置里把设备名称改成你想要的内容(比如“我的虚拟摄像头”);
  • 然后在Chrome里直接选择这个第三方虚拟设备,不需要再用--use-fake-device-for-media-stream和--use-file-for-fake-video-capture这两个参数;
  • 这种方式不仅能自定义名称,还支持更多视频格式和特效,兼容性也更好。

2. 通过Chrome扩展拦截媒体设备API(网页级修改)

如果你只需要在特定网页里修改设备显示名称,可以写一个简单的Chrome扩展,注入脚本重写媒体设备的返回结果:

  • 创建一个扩展,在manifest.json里添加activeTab和scripting权限;
  • 注入的脚本里重写navigator.mediaDevices.enumerateDevices()方法,拦截返回的设备列表,把对应虚拟设备的label字段改成你想要的名称;
  • 示例代码片段:
    const originalEnumerateDevices = navigator.mediaDevices.enumerateDevices;
    navigator.mediaDevices.enumerateDevices = async function() {
      const devices = await originalEnumerateDevices.call(this);
      return devices.map(device => {
        if (device.label.includes('video_camera.y4m')) {
          return {...device, label: '自定义虚拟摄像头'};
        }
        return device;
      });
    };
    
  • 这个方案只对安装了扩展的网页生效,属于前端层面的修改,不是全局设备名称变更。

3. 利用Chrome DevTools协议(自动化场景)

如果是用Selenium、Puppeteer这类自动化工具,可以尝试通过Chrome DevTools协议来修改设备信息:

  • 部分版本的Chrome支持Media.setDeviceOverride命令,你可以通过这个接口指定自定义的设备名称;
  • 以Puppeteer为例,大概的代码逻辑是:
    await page.target().createCDPSession().then(async session => {
      await session.send('Media.setDeviceOverride', {
        videoDeviceId: 'your-device-id',
        videoDeviceLabel: '自定义虚拟摄像头'
      });
    });
    
  • 注意:这个方法依赖Chrome的版本,部分旧版本可能不支持,而且需要提前获取到目标设备的ID,适配性不如第三方工具。

补充说明

Chrome官方的文档里确实明确了--use-file-for-fake-video-capture只支持无扩展名的mjpeg/y4m文件,且没有提供修改设备名称的配套参数,所以原生功能里暂时没办法直接修改名称。上面的几个方案里,第三方虚拟摄像头是最稳定、通用的选择。

内容的提问来源于stack exchange,提问作者Anton Budarov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.27 13:24:09