MediaRecorder.stop()不清除选项卡中的录制图标

时间:2017-05-31 01:52:07

标签: javascript google-chrome web-audio web-mediarecorder

我启动并停止MediaRecorder流。红色"录音"图标会在启动时显示在Chrome标签页中,但在停止时不会消失。

图标如下所示:

enter image description here

我的代码如下所示:

const mediaRecorder = new MediaRecorder(stream);
...
// Recording icon in the tab becomes visible.
mediaRecorder.start();
...
// Recording icon is still visible.
mediaRecorder.stop();

我还定义了mediaRecorder.onstop处理程序。它不会返回任何内容或干扰事件对象。

清除"记录"的正确方法是什么?启动和停止MediaRecorder实例后选项卡的指示符?

1 个答案:

答案 0 :(得分:16)

这是因为此录制图标是 for(int i=0; i<1000; ++i){ try { FileWriter w = new FileWriter(f); BufferedWriter bw = new BufferedWriter(w); PrintWriter wr = new PrintWriter(bw); wr.append(nombreArchivo+" "); bw.close(); } catch (IOException e) { }; } 流媒体图标,而不是getUserMedia的图标。
当您MediaRecorder MediaRecorder时,流仍处于活动状态。

要停止此gum流(或任何其他MediaStream),您需要拨打MediaStreamTrack.stop()

stop

Fiddle ,因为即使使用https,stacksnippets也不允许gUM ...

通过stream.getTracks() // get all tracks from the MediaStream .forEach( track => track.stop() ); // stop each of them 访问流的other fiddle