使用HTML5网络套接字实现基于网络的实时视频聊天

使用HTML5网络套接字实现基于网络的实时视频聊天,第1张

使用HTML5网络套接字实现基于网络的实时视频聊天

如果只想使用HTML5,则需要一个实现 HTML Media Capture
草稿(在此处可用)的浏览器,以便从麦克风访问原始数据。

一旦掌握了这些数据,就需要通过网络发送它。Websockets将是HTML5选项,以便与服务器具有足够快的往返行程(同时发送本地音频数据和接收远程音频数据)

既然您提到python,我建议您看看websockets的扭曲实现。

您可以让所有客户端使用一个callerID在websocket服务器上“注册”,因此服务器知道在哪里可以找到给定的callerID。

然后,您的服务器将需要一个“邀请” API,其中caller1“邀请” caller2。

呼叫建立后,每个客户端开始发送其音频数据,服务器将能够将该音频数据发送给另一方。

接收到音频数据后,浏览器可能需要使用HTML5音频标签在扬声器上播放此音频数据。

为此,您可能被迫使用“技巧”:您可能需要模拟2个“无限”文件,而不是让websocket服务器将原始音频数据转发到客户端,而是:

  1. caller1.wav:在caller1麦克风上捕获的声音
  2. caller2.wav:在caller2麦克风上捕获的声音

呼叫建立后,caller1浏览器会在audio.src属性中添加caller2.wav(通过websocket通知caller1该事件),并希望python服务器在接收到原始音频数据后将其添加到caller2.wav,它将开始播放。

这听起来像是很酷的原型,您将要破解!

祝你好运,

杰罗姆·瓦格纳(Jerome Wagner)



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5639702.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存