回答

1

現在,這是不可能在網絡平臺上。我們希望徹底檢修解碼和編碼原語,以便它們能夠實時工作(如今天的MediaRecorder)和離線(例如編碼OfflineAudioContext)。我們甚至沒有開始對此進行標準化,我們正在努力完成Web Audio API。

但是,得益於emscripten,無論如何,使用編譯爲javascript的libmp3lame版本(例如https://github.com/higuma/mp3-lame-encoder-js)都很容易。

我會建議您AudioBuffer越來越ArrayBuffer S,使用getChannelData(channelIndex),轉移,爲一個網絡工作者(不復制,所以它的速度快),並張貼在編碼的blob回主線程當它完成。