我正在将一个arrayBuffer转换为一个audioBuffer,以便能够收听它。
我通过websocket事件接收流
retrieveAudioStream(){
this.socket.on('stream', (buffer) => {
console.log('buffer', buffer)
})
}
buffer
是一个arrayBuffer,我需要它为audioBuffer
才能在我的应用程序中收听它。
我该怎么做?
答案 0 :(得分:2)
您可以使用BaseAudioContext.createBuffer()
方法。
它用于
创建一个新的空
AudioBuffer
对象,然后可以将其填充数据,并通过AudioBufferSourceNode
播放
有关详细信息,请参见MDN:https://developer.mozilla.org/en-US/docs/Web/API/BaseAudioContext/createBuffer
答案 1 :(得分:1)
由于您正在流式传输媒体,而不是先下载文件然后解码音频数据,所以AudioContext.createMediaStreamSource()
将更适合您的用例。
在这里https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/createMediaStreamSource
了解更多