【发布时间】:2017-09-16 00:16:06
【问题描述】:
有没有一种简单的方法可以做到这一点,还是我需要交错通道并创建一个包含特定标头格式以及交错数据的DataView?
【问题讨论】:
-
是否需要专门创建
.mp3文件?
标签: javascript web-audio-api audio-processing audiobuffer
有没有一种简单的方法可以做到这一点,还是我需要交错通道并创建一个包含特定标头格式以及交错数据的DataView?
【问题讨论】:
.mp3 文件?
标签: javascript web-audio-api audio-processing audiobuffer
目前,这在网络平台上是不可能的。我们想要彻底检查解码和编码原语,使它们既可以实时工作(比如今天的MediaRecorder),也可以离线工作(比如编码OfflineAudioContext)。我们甚至还没有开始对其进行标准化,我们正在努力完善 Web Audio API。
不过,多亏了 emscripten,无论如何,使用编译为 wasm 的 javascript 的 libmp3lame 版本,例如 https://github.com/higuma/mp3-lame-encoder-js,都非常容易。
我建议从您的AudioBuffer 获取ArrayBuffers,使用getChannelData(channelIndex),将其传输到网络工作者(无需复制,因此速度很快),并在完成后将编码的 blob 发布回主线程.
【讨论】: