WebRTC不可用

时间:2017-09-03 08:09:08

标签: javascript google-chrome webrtc object-detection

从以下链接运行js-objectdetect示例:

  

http://mtschirs.github.io/js-objectdetect/examples/example_sunglasses.htm

但在运行时会显示警告“WebRTC not Available”

尝试从chrome:// flags / And在命令下运行WebRTC:

chrome.exe --enable-logging --vmodule=*/webrtc/*=2,*/libjingle/*=2,*=-2 --no-sandbox

1 个答案:

答案 0 :(得分:1)

您可以在compatibility.js

中找到相关代码
    getUserMedia = function(options, success, error) {
        var getUserMedia =
            window.navigator.getUserMedia ||
            window.navigator.mozGetUserMedia ||
            window.navigator.webkitGetUserMedia ||
            function(options, success, error) {
                error();
            };

        return getUserMedia.call(window.navigator, options, success, error);
    };

然后在HTML中,您可以找到以下代码:

        compatibility.getUserMedia({video: true}, function(stream) {
            try {
                video.src = compatibility.URL.createObjectURL(stream);
            } catch (error) {
                video.src = stream;
            }
            compatibility.requestAnimationFrame(play);
        }, function (error) {
            alert('WebRTC not available');
        });

如果您在当前版本的Chrome中运行该页面,则会收到以下警告:

  

[Deprecation] getUserMedia()不再适用于不安全的起源。要使用此功能,您应该考虑将应用程序切换到安全的来源,例如HTTPS。有关详细信息,请参阅https://sites.google.com/a/chromium.org/dev/Home/chromium-security/deprecating-powerful-features-on-insecure-origins

换句话说,您需要使用https://mtschirs.github.io/js-objectdetect/examples/example_sunglasses.htm(请注意http s )才能使其正常工作。