MediaRecorder: stop() method
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2021.
The stop()
method of the MediaRecorder
interface is
used to stop media capture.
When the stop()
method is invoked, the UA queues a task that runs the
following steps:
- If
MediaRecorder.state
is "inactive", raise a DOMInvalidState
error and terminate these steps. If theMediaRecorder.state
is not "inactive", continue on to the next step. - Set the
MediaRecorder.state
to "inactive" and stop capturing media. - Raise a
dataavailable
event containing the Blob of data that has been gathered. - Raise a
stop
event.
Syntax
js
stop()
Parameters
None.
Return value
None (undefined
).
Exceptions
InvalidStateError
DOMException
-
Thrown if the
MediaRecorder
is currently"inactive"
; you cannot stop the recording if theMediaRecorder
is not active.
Examples
js
stop.onclick = () => {
mediaRecorder.stop();
console.log("recorder stopped, data available");
};
Specifications
Specification |
---|
MediaStream Recording # dom-mediarecorder-stop |
Browser compatibility
See also
- Using the MediaStream Recording API
- Web Dictaphone: MediaRecorder + getUserMedia + Web Audio API visualization demo, by Chris Mills (source on GitHub.)
- simpl.info MediaStream Recording demo, by Sam Dutton.
Navigator.getUserMedia