Javascript RTPeerConnection在Firefox和Safari中不是构造函数
我正在编写一个非常简单的WebRTC应用程序,以从RaspberryPi Zero摄像机流式传输实时视频。我正在使用设置服务器和JavaScript来连接和播放视频流。我的JavaScript代码基于,它基本上使用RTC web套接字方法来执行协商 他们的代码在Chrome上运行得很好,但在Firefox或Safari下似乎不起作用Javascript RTPeerConnection在Firefox和Safari中不是构造函数,javascript,firefox,websocket,safari,webrtc,Javascript,Firefox,Websocket,Safari,Webrtc,我正在编写一个非常简单的WebRTC应用程序,以从RaspberryPi Zero摄像机流式传输实时视频。我正在使用设置服务器和JavaScript来连接和播放视频流。我的JavaScript代码基于,它基本上使用RTC web套接字方法来执行协商 他们的代码在Chrome上运行得很好,但在Firefox或Safari下似乎不起作用 RTCPeerConnection = window.webkitRTCPeerConnection; RTCSessionDescription = window
RTCPeerConnection = window.webkitRTCPeerConnection;
RTCSessionDescription = window.RTCSessionDescription;
RTCIceCandidate = window.RTCIceCandidate;
var ws;
function signal(url, onStream, onError, onClose, onMessage) {
if("WebSocket" in window) {
var pc;
ws = new WebSocket(url);
ws.onopen = function () {
var config = {"iceServers": [{"urls": ["stun:stun.l.google.com:19302"]}]};
pc = new RTCPeerConnection(config); // <---- ERROR here.
pc.onicecandidate = function (event) {
// ... ICE negotiation.
};
if('ontrack' in pc) {
pc.ontrack = function(event) {
// ... set stream object and play
};
} else { // onaddstream() is deprecated
pc.onaddstream = function (event) {
// ... set stream object and play
};
}
// ... other event listeners.
ws.send(...); // Signals the remote peer to initiate a call
};
}
}
rtpeerconnection=window.webkittrtpeerconnection;
RTCSessionDescription=window.RTCSessionDescription;
RTCIceCandidate=window.RTCIceCandidate;
var-ws;
函数信号(url、onStream、onError、onClose、onMessage){
如果(“窗口中的WebSocket”){
var-pc;
ws=新的WebSocket(url);
ws.onopen=函数(){
var config={“iceServers”:[{“URL”:[“stun:stun.l.google.com:19302”]};
pc=new rtpeerconnection(config);//我的错误被证明是一个愚蠢的打字错误。代码开头的rtpeerconnection声明是错误的。它应该是:
RTCPeerConnection = window.RTCPeerConnection || window.webkitRTCPeerConnection;
似乎rtpeerconnection
不可构造。您是否尝试删除新的?我刚刚尝试过,Chrome和Firefox都抱怨。错误消息说rtpeerconnection
不能用作函数。