【发布时间】:2012-06-13 13:45:03
【问题描述】:
我正在尝试使用 websocket 发送音频消息,我应该将音频流更改为哪种类型的消息,以便我可以使用套接字发送? 如果我直接使用 websocket.send(audio),我会得到一个错误“DOMException”,我应该把它改成二进制数据吗?如何? 我完全是编程新手,所以请帮忙!!!
【问题讨论】:
标签: websocket
我正在尝试使用 websocket 发送音频消息,我应该将音频流更改为哪种类型的消息,以便我可以使用套接字发送? 如果我直接使用 websocket.send(audio),我会得到一个错误“DOMException”,我应该把它改成二进制数据吗?如何? 我完全是编程新手,所以请帮忙!!!
【问题讨论】:
标签: websocket
Websocket API,支持发送 Blob 和 ArrayBuffer 二进制类型。
如果您的浏览器支持Mozilla's audio data API,那么您可以从音频标签中读出数据作为 ArrayBuffer 并发送。不过,这个 API 不太可能标准化。
如果您的浏览器支持 Web Audio API(由 Google 提出),那么您还可以提取数据的 ArrayBuffer 并将其发送。 Web Audio API 可能会得到更多的采用。这是intro to Web Audio API。 This FAQ 有一个答案,描述了如何使用 Web Audio API 从普通的音频/视频标签中读取。
更新:
this blog post 中提到的 Aurora.js 库看起来可能有助于处理音频和二进制数据。
【讨论】: