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:
- 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
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
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
stop | Chrome Full support 49 | Edge Full support 79 | Firefox Full support 25 | IE No support No | Opera Full support 36 | Safari No support No | WebView Android Full support 49 | Chrome Android Full support 49 | Firefox Android Full support 25 | Opera Android Full support 36 | Safari iOS No support No | Samsung Internet Android Full support 5.0 |
Legend
- Full support
- Full support
- No support
- No support
See also
- Using the MediaRecorder 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