【问题标题】:Can I connect 2 or more RTCPeerConnection using socket.io?我可以使用 socket.io 连接 2 个或更多 RTCPeerConnection 吗?
【发布时间】:2020-05-05 09:47:08
【问题描述】:

我可以使用 socket.io 连接超过 1 个 RTCpeerconnection 吗? 客户:

const pc = new RTCPeerConnection()
socket.emit("peer",pc)
socket.on("peerAnswer",(peer)=>{
    pc.addIceCandidate(peer)
})

服务器:

io.on("connection",(socket)=>{
    socket.on("peer",(peer)=>{socket.broadcast.emit("peerAnswer",peer)})
})

【问题讨论】:

    标签: javascript socket.io webrtc rtcpeerconnection


    【解决方案1】:

    您确实可以使用 socket.io 创建多个对等连接。为此,您需要将提议/答案发送到特定的套接字。

    这是使用simple-peer 进行多用户视频聊天的full example。这基本上是 RTCPeerConnection 的包装器。在/public/js/main.js可以看到有一个命令通过socket创建一个新的peerconnection对象。这些都存储在一个列表中。

    在服务器端/src/socketController.js,所有套接字连接也都存储在一个列表中以供以后引用。

    Github project

    DEMO

    【讨论】:

    • 我在代码中看到了屏幕共享代码块,但似乎无法正常工作或者您故意禁用它?
    猜你喜欢
    • 1970-01-01
    • 2014-04-09
    • 2021-10-25
    • 2020-12-25
    • 1970-01-01
    • 2014-12-19
    • 1970-01-01
    • 2014-03-01
    • 1970-01-01
    相关资源
    最近更新 更多