如何在 browserStack 功能中将假媒体流传递给 safari IOS?

问题描述 投票:0回答:2

我正在使用 protractorselenium浏览器堆栈 并尝试自动化 webrtc web 应用程序,我需要摆脱浏览器请求许可并使用假流而不是 chrome 中提供的真实相机和麦克风.

我尝试过使用这些选项,但它们都不起作用。

选项1:

    var capabilities = {
    'browserName': 'iPhone',
    'device': 'iPhone 6S',
    'realMobile': 'true',
    'os_version': '11.4',
    "media.navigator.permission.disabled": true,
    "media.navigator.streams.fake": true
  };

选项2

    var capabilities = {
    'browserName': 'iPhone',
    'device': 'iPhone 6S',
    'realMobile': 'true',
    'os_version': '11.4',
    'safariOptions': {
      'args': ["--use-fake-ui-for-media-stream", '--use-fake-device-for-media-stream']
    }
  };

对于我使用的构建选项:

var driver = new webdriver.Builder()
usingServer('http://hub-cloud.browserstack.com/wd/hub').
withCapabilities(capabilities).
build();
selenium protractor e2e-testing getusermedia browserstack
2个回答
2
投票

目前,没有这种 BrowserStack 特定的自定义功能可以在 Safari 上传递虚假媒体流。此外,Safari 浏览器尚不支持传递假流。您可以阅读以下问题:

https://github.com/web-platform-tests/results-collection/issues/125

https://github.com/web-platform-tests/wpt/issues/7424

此外,Safari 浏览器似乎不支持此类参数。我在 SafariOptions 示例中回顾了相同的内容here


0
投票

我的开发项目需要一个类似的解决方案。事实证明,最简单的方法是安装免费的 OBS Studio - 它也适用于 Mac。 安装后,它可以创建一个虚拟网络摄像头。然后网络浏览器会将其视为真正的相机。 您可以播放任何视频,它将显示为真实的相机输入流。

© www.soinside.com 2019 - 2024. All rights reserved.