如何以mp3 / m4a JavaScript-recorder.js的格式录制音频

时间:2015-08-21 11:13:09

标签: javascript audio mp3 audio-recording recorder.js

在recorderjs rec.exportWAV([callback][, type])中用于生成包含WAV格式录制音频的Blob对象。

但是WAV文件占用的空间很大,30秒就大约为1mb。所以我想以mp3 / m4a的格式录制音频,占用的空间更少。

有没有办法以mp3 / m4a的格式录制音频。

3 个答案:

答案 0 :(得分:0)

我认为你应该查看这个链接: HTML5 record audio to file

这里你可以改变这样的音频类型:   type = type || config.type || '音频/ WAV&#39 ;;

答案 1 :(得分:0)

Recorder.js不支持将捕获的音频编码为mp3。

它只能将16位单声道或立体声未压缩的pcm录制为wav。

要减小一半的大小,您可以在Recorder.js构造器中使用numChannels:1来录制单声道声音,而不是2声道/立体声,如下所示:

var rec = new Recorder(source,{numChannels:1})

numChannels是Recorder.js的未记录功能(不再维护该库)。

来源:https://addpipe.com/blog/using-recorder-js-to-capture-wav-audio-in-your-html5-web-site/

要录制到mp3中,您可以使用:

  1. WebAudioRecorder.js,其中包含LAME mp3 encoder
  2. asm.js 版本
  3. vmsg,其中包含LAME mp3 encoder
  4. 的WebAssembly版本

答案 2 :(得分:-1)

您可以通过提及exportWAV函数中的格式来更改录制格式,如下所示:

recorder.exportWAV(function (blob) {
                callback(blob);

                // create WAV download link using audio data blob
                // createDownloadLink();

                // Clear the Recorder to start again !
                recorder.clear();
            }, "audio/mp3");

我已经针对以下link找到了上述解决方案。