0

我想使用 WebRTC 实现点对点音频会议。我已经尝试RTCMultiConnection.js来实现相同的功能,但是在网络之外(NAT 之外)播放它时遇到了一些问题。我也尝试设置 STUN 和 TURN,但问题仍然相同。收到错误“ICE 连接失败。重新连接对等连接。”

STUN 和 TURN 配置如下:

function initRTCMultiConnection(userid) {
var connection = new RTCMultiConnection();
connection.body = document.getElementById('videos-container');
connection.channel = connection.sessionid = connection.userid = userid || connection.userid;
connection.sdpConstraints.mandatory = {
    OfferToReceiveAudio: false,
    OfferToReceiveVideo: true
};

var iceServers = [];

iceServers.push({
    url: 'stun:stun.l.google.com:19302'
});

iceServers.push({
    url: 'stun:stun.anyfirewall.com:3478'
});

iceServers.push({
    url: 'turn:turn.anyfirewall.com:443?transport=tcp',
    credential: 'webrtc',
    username: 'webrtc'
});

connection.iceServers = iceServers;

我正在使用WebRTC-Scalable-Broadcast 的更新演示。

请建议我解决它。

是否有任何替代 API/库可用于使用 WebRTC 建立点对点音频会议?

4

1 回答 1

1

永远不要使用第三方 TURN 服务器。STUN 可能没问题,但是一旦您放置了自己的 TURN 服务器(或支付托管服务费用) - 它会免费为您提供 STUN 部分。

因此,首先部署您自己的 STUN 和 TURN 服务器。

于 2017-02-05T06:17:19.090 回答