你好,我按照这个教程创建了一个简单的webrtc示例。 https://www.webrtc-experiment.com/docs/WebRTC-PeerConnection.html。为什么函数“onaddstream”永远不会被调用?
所以看看我的JFFiddle: https://jsfiddle.net/xzspquew/9/ 请告诉我为什么我不能进入函数onaddstream? console.log(“这个函数被调用”)被称为neved。为什么?
navigator.getUserMedia({audio:false, video:true}, success, error)
var pc = new RTCPeerConnection()
var pc2 = new RTCPeerConnection()
pc.onaddstream = function(event) {
console.log("this function is called")
var video2 = document.getElementById("video2")
video2.src = window.URL.createObjectURL(event.stream)
video2.play()
}
document.querySelector("#repondre").addEventListener('click', function repondre() {
var answer = prompt("Please enter your sdp remote offer");
console.log(answer)
pc2.setRemoteDescription(JSON.parse(answer))
pc2.createAnswer(successanswerrtc, errorrtc)
})
function successanswerrtc(answersdp) {
pc2.setLocalDescription(answersdp)
console.log(JSON.stringify(answersdp))
pc.setRemoteDescription(answersdp)
}
function sucessrtc(offersdp) {
pc.setLocalDescription(offersdp)
alert(JSON.stringify(offersdp))
console.log(JSON.stringify(offersdp))
}
function errorrtc(err) {
console.log("error" + err)
}
function success(stream) {
var video1 = document.getElementById("video1")
video1.src = window.URL.createObjectURL(stream)
video1.play()
pc.createOffer(sucessrtc, errorrtc)
}
function error() {
console.log("error")
}
这里有很多错误。你想做什么?您有两个对等连接,但您提示用户“输入远程报价”并继续将其称为答案。我无法辨别这里的目标是什么。连接两个对等连接,或连接到其他地方? – jib