我对 PeerJs 和 WebRTC 是全新的。我有一个 1:1 NodeJS/PeerJS 应用程序在我的远程服务器上运行,效果很好。然而现在我想探索将其扩展到 1:N 模型,其中主机 ID 可以有多个对等点连接到它们,并且每个对等点都可以接收其他每个连接的对等点的音频/视频。我现在可以接受大约 4-5 个参与方的通话,因此网状架构就可以了。将来我将开发基于媒体服务器的架构,以便在同一会话中吸引更多参与者。
目前在我的代码中,如果通话中有超过 2 方,最后加入的一方将踢出前一方。
请问PeerJS库是否可以支持多方视频聊天(4-5个用户就可以了)?如果没有,您能否指导我如何将 1:1 应用程序增强为 1:N 模型?我在网上找不到任何明确的方向。
提前谢谢了 ... :-)
显示您的一些代码将有助于解决您的问题。通过使用干净的WebRTC,你可以实现电话会议,所以我认为你也可以在peerJs中做到这一点。
在通话开始时,您需要调用 getUserMediaonce并获取您的本地流。
var myStream;
navigator.getUserMedia({video: true, audio: true}, function(stream) {
myStream = stream;
}, function(err) {
console.log('Failed to get local stream' ,err);
});
所以当你向他们提出要约时,你可以写
var call = peer.call('another-peers-id', myStream);
call.on('stream', function(remoteStream) {
// Show stream in some <video> element.
});
当对等方收到呼叫时,它会应答
peer.on('call', function(call) {
call.answer(myStream); // Answer the call with an A/V stream.
call.on('stream', function(remoteStream) {
// Show stream in some <video> element.
});
});
我希望这可以帮助您解决您的问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)