【问题标题】:always accept webRTC webcam request始终接受 webRTC 网络摄像头请求
【发布时间】:2012-08-23 00:21:35
【问题描述】:

我正在构建一个通过 webRTC 使用计算机网络摄像头的网络应用程序。 该站点仅在一台特定的机器上运行,该机器每天会关闭并重新启动一次。

我的问题是:如何让机器在网站加载后自动确认网络摄像头对话?

系统是 OSX Leopard 和最新的 Chrome。已经谢谢了,我愿意接受任何事情。

【问题讨论】:

    标签: google-chrome webcam webrtc


    【解决方案1】:

    Firefox:(你必须告诉用户喜欢..)

    • 进入网址about:config

    • 搜索media.navigator.permission.disabled

    • dbClick 或将设置为true

    测试版本:23.0 + (和 43.0.4 仍在工作)


    Chromehttps://stackoverflow.com/a/16929608/622813 或使用 HTTPS

    【讨论】:

    • 经过半小时的故障排除后,我为这个项目切换到Firefox并使用上述内容要容易得多。我无法说服 chrome 允许 localhost
    • 我到处寻找这个 FireFox 选项...Mozilla 帮助页面似乎没有包含http://localhost 的说明。谢谢!!
    【解决方案2】:

    根据 Chromium 开发人员的说法,目前没有选项可以配置您的浏览器以允许使用摄像头,除非您使用“始终允许”对话框 - 只有在使用 HTTPS 提供网站时才会显示该对话框。这意味着,如果您使用 HTTPS 提供 HTML 页面,并且一旦确认“始终允许”选项,它应该从那里开始工作。以下是一系列链接,您可以在其中找到相同或相似问题的答案:

    1. Chromium issue 143372: allow "always allow" for http://localhost
    2. WebRTC: allow Chrome to access microphone via Chrome Extension
    3. http://www.chromium.org/developers/web-platform-status(请参阅 WebRTC 部分):“对于权限对话框:Chrome 仅对使用 https 的站点显示“始终允许”以提高安全性。”
    4. 讨论 WebRTC 谷歌群组:Automatically allow Camera Access Request in webrtc enabled Chrome

    【讨论】:

      【解决方案3】:

      有一个 Chrome 选项: (这适用于 httphttps

      --use-fake-ui-for-media-stream
      

      - 窗户:

      start chrome --use-fake-ui-for-media-stream
      

      - GNU/Linux:

      google-chrome --use-fake-ui-for-media-stream
      

      也许这只是时间问题,但它不适用于我在 Ubuntu 上的 chromium。 我必须从google chrome website 获取.deb。

      - Mac:

      Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --use-fake-ui-for-media-stream
      

      这在开发/测试环境中可能很有用。

      【讨论】:

      • Mac:/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --use-fake-ui-for-media-stream
      • 感谢@PeterEhrlich 的补充。如果你愿意,你也可以编辑我的答案:)
      • 你可以把这个命令放在chrome的快捷方式中。例如我的开发是使用这样的桌面快捷方式:"%localappdata%\Google\Chrome\Application\chrome.exe " --user-data-dir=$(mktemp -d) --kiosk "http://localhost:52902/Default.aspx" --use-fake-ui-for-media-stream
      • 有效吗?我有同样的问题,它不适合我。错误:getUserMedia() 不再适用于不安全的来源。
      • @user1253414 "从 Chrome 47 开始,getUserMedia() 请求只允许来自安全来源:HTTPS 或 localhost。" developers.google.com/web/updates/2015/10/… 可能有一个我不知道的解决方法。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-06
      • 2016-03-03
      • 2018-09-05
      • 2013-02-05
      相关资源
      最近更新 更多