WebRTC未找到与提供的签名匹配的功能

时间:2017-04-28 21:20:33

标签: webrtc

我试过这段代码:

<html>
<head>
</head>
<body>
<video src="" id="video1"></video>
<video src="" id="video2"></video>
<textarea id="lesdp"></textarea><p id="btn">Activer</p>
</body>
<script>

    navigator.getUserMedia({audio:true,video:true}, function(stream) {
        var video1 = document.querySelector("#video1")
        video1.src = window.URL.createObjectURL(stream)
        video1.play()
    }, function() {

    })

    var pc = new RTCPeerConnection()
    pc.createOffer(function success(offer) {
        var sdp = offer;
        alert(JSON.stringify(sdp))
    }, function error() {

    })
    var btn = document.querySelector("#btn");
    btn.addEventListener('click', function() {
        console.log("clicked")
        var lesdp = JSON.parse(document.querySelector('#lesdp').value);
        pc.setRemoteDescription(new RTCSessionDescription(lesdp), function(streamremote) {
            var video2 = document.querySelector("#video2");
            video2.srcObject = window.URL.createObjectURL(streamremote)
            video2.play()
        }, function() {

        })

    })
</script>
</html>

您可以在此处进行测试:https://matr.fr/webrtc.html

打开导航器,复制弹出式提供字符串对象,将其粘贴到textarea中,然后单击“Activer”并在控制台中查看错误。

因此,当我点击“Activer”按钮时,它出现此错误:

  

无法在'URL'上执行'createObjectURL':未找到任何功能   符合提供的签名。

请帮帮我。我使用Google Chrome进行测试。

1 个答案:

答案 0 :(得分:0)

您正在调用form.action,这会在Chrome中产生错误。

window.URL.createObjectURL(undefined)未定义,因为setRemoteDescription无需设计解析。

您只有大约一半的代码需要进行剪切&#39;粘贴WebRTC演示。比较here