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

 MediaRecorder.stop()

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

...

  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

DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
stopChrome Full support 49Edge Full support 79Firefox Full support 25IE No support NoOpera Full support 36Safari No support NoWebView Android Full support 49Chrome Android Full support 49Firefox Android Full support 25Opera Android Full support 36Safari iOS No support NoSamsung Internet Android Full support 5.0

Legend

Full support
Full support
No support
No support

See also