pap*_*et7 5 html5 websocket node.js webrtc getusermedia
我需要构建一个Web应用程序,使用WebRTC获取网络摄像头视频流和麦克风音频流,并立即将其转换为服务器,以便进一步向多个客户端广播.该应用必须以全双工的方式实时完成.我的意思是这将是一种实时视频聊天.这将是某种教育应用程序.所以问题是:现在可能吗?我应该使用哪些技术?我应该在后端使用WebRTC和WebSocket以及Node.js吗?或者我可以使用PHP而不是节点?我可以使用Socket.io吗?有没有其他方法可以实现这一目标?可能是闪光?
WebRTC 中的 PeerConnection API 不需要后端服务器来在对等点之间进行一个或多个连接。
您唯一需要后端服务器的就是充当中介者,首先在对等点之间建立连接。为此,您可以使用 WebSocket API、Ajax 或实现该目标所需的任何其他方法。另外,是的,您可以使用 PHP 编写 WebSocket 的服务器端(或者您想要使用的任何方法来建立点对点连接)。这真的取决于你。
目前,只有 Chrome 和 Firefox 支持足够的 WebRTC API,使视频聊天成为可能。不过很快,Opera 可能会加入其中,但目前还没有人确定 WebRTC 是否会添加到 IE11 中,而且苹果似乎无意很快将 WebRTC 添加到 Safari 中(因为他们有自己的专有技术那个;听起来很熟悉?!)。
无论如何,WebRTC 是您最好的选择。作为补充说明,我认为不可能使用 JS 将视频和音频发送到服务器,然后让服务器将该数据转发到其他对等方。相反,您需要使用 WebRTC 建立点对点连接,然后从那里开始。
编辑:如果您使用 TURN 服务器,您可以通过服务器重新路由音频和视频数据,但这实际上是最不理想的情况,并且只有在使用 WebRTC API 时您仍然可以这样做。