来源 | https://www.jianshu.com/p/017a158b6b18
自从Recorder H5 GitHub开源库优化后,对边录边转码成小语音片段文件实时上传服务器这种操作支持非常良好,因此以前不太好支持的H5语音通话已经有了更好的突破空间。
因此花了两晚时间打造了一个H5语音通话聊天的demo。
一、把玩方法
准备局域网内两台设备(Peer A、Peer B)用最新版本浏览器(demo未适配低版本)分别打开demo页面(也可以是同一浏览器打开两个标签)。
勾选页面中的H5版语音通话聊天,在Peer A中点击新建连接。
把Peer A的本机信手动复制传输给Peer B,粘贴到远程信息中,并点击确定连接。
把Peer B自动生成的本机信息手动复制传输给Peer A,粘贴到远程信息中,并点击确定连接。
双方P2P连接已建立,使用页面上方的录音功能,随时开启录音,音频数据会实时发送给对方。
二、技术特性
(1)数据传输
github demo中考虑到减少对服务器的依赖,因此采用了WebRTC P2P传输功能,无需任何服务器支持即可实现局域网内的两个设备之间互相连接,连接代码也算简单。有服务器支持可能就要逆天了,不过代码也会更复杂。
如果正式使用,可能不太会考虑使用WebRTC,用WebSocket通过服务器进行转发可能是最佳的选择。
WebRTC局