MediaRecorder.stop()

The MediaRecorder.stop() method (part of the MediaRecorder API) is used to stop media capture.

When the stop() method is invoked, the UA queues a task that runs the following steps:

  1. If MediaRecorder.state is "inactive", raise a DOM InvalidState error and terminate these steps. If the MediaRecorder.state is not "inactive", continue on to the next step.
  2. Set the MediaRecorder.state to "inactive" and stop capturing media.
  3. Raise a dataavailable event containing the Blob of data that has been gathered.
  4. Raise a stop event.

Syntax

JavaScript
<span id="idl-def-IDBIndex" class="idlInterface"><span id="idl-def-MediaRecorder" class="idlInterface"><span class="idlMethod"><span class="idlMethType"><span id="idl-def-MediaRecorder" class="idlInterface"><span class="idlMethod"><span class="idlMethType"><span id="idl-def-MediaRecorder" class="idlInterface"><span class="idlMethod"><span id="idl-def-MediaRecorder" class="idlInterface"> </span></span></span></span></span></span></span></span></span></span><span class="idlMethod"><span class="idlInterface"><span class="idlMethod"><span class="idlMethType"><span class="idlInterface"><span class="idlMethod"><span class="idlMethType"><span class="idlInterface"><span class="idlMethod"><span class="idlInterface"><span class="idlMethod">MediaRecorder.stop()</span></span></span></span></span></span></span></span></span></span></span>

Errors

An InvalidState error is raised if the stop() method is called while the MediaRecorder object’s MediaRecorder.state is "inactive" — it makes no sense to stop media capture if it is already stopped.

Example

JavaScript
...

  stop.onclick = function() {
    mediaRecorder.stop();
    console.log("recorder stopped, data available");
  }

...

Specifications

Specification Status Comment
MediaStream Recording
The definition of 'MediaRecorder.stop()' in that specification.
Working Draft Initial definition

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support 47[2] 25.0 (25.0) Not supported Not supported Not supported
Feature Android Android Webview Firefox Mobile (Gecko) Firefox OS IE Phone Opera Mobile Safari Mobile Chrome for Android
Basic support Not supported Not supported 25.0 (25.0) 1.3[1] Not supported Not supported Not supported Not supported

[1] The intial Firefox OS implementation only supported audio recording.

[2] To try this feature on Chrome, enable Experimental Web Platform features from chrome://flags . Currently only video is supported, not audio.

See also

License

© 2016 Mozilla Contributors
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-us/docs/web/api/mediarecorder/stop

API Media Capture Media Recorder API MediaRecorder Method Reference stop