小编Duc*_*Man的帖子

MediaRecorder ondataavailable 成功工作一次

MediaRecorder ondataavailable 工作成功一次。我需要获取 blob,获取 base64,发送到我的服务器,将此 base64 解码为音频 blob。这很奇怪。

例如,输出:

blob1 blob2 blob3 blob4 blob5 blob6 blob7 blob8 blob9

....

我只能听到 blob1,其他 blob 被“禁用”。

尝试一下!此代码记录音频:

window.startRecord = function(cb){
  var int;
  navigator.mediaDevices.getUserMedia({ audio: true , video:false}).then(function(stream){
    var options = {
      audioBitsPerSecond : 128000,
      videoBitsPerSecond : 2500000,
      mimeType : 'audio/webm\;codecs=opus'
    }

    if(!MediaRecorder.isTypeSupported(options['mimeType'])) options['mimeType'] =  "audio/ogg; codecs=opus";


    window.voice = new MediaRecorder(stream, options);

    voice.start(500);
    voice.ondataavailable = function(data){


      var reader = new FileReader();
      var blob = data.data;

      reader.readAsDataURL(blob);
      reader.onloadend = function () {
        var result = …
Run Code Online (Sandbox Code Playgroud)

html javascript ecmascript-6 web-mediarecorder

8
推荐指数
1
解决办法
6034
查看次数