This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2021.
The pause() method of the MediaRecorder interface is used to pause recording of media streams.
When a MediaRecorder object's pause() method is called, the browser queues a task that runs the below steps:
MediaRecorder.state is "inactive", raise a DOM InvalidState error and terminate these steps. If not, continue to the next step.MediaRecorder.state to "paused".Blob, but keep it available so that recording can be resumed later on.pause event.pause()
None.
None (undefined).
InvalidStateError DOMException
Thrown if the MediaRecorder is currently "inactive"; you cannot pause the recording if the MediaRecorder is not active. If you call pause() while already paused, the method silently does nothing.
pause.onclick = () => {
mediaRecorder.pause();
console.log("recording paused");
};
| Specification |
|---|
| MediaStream Recording> # dom-mediarecorder-pause> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
pause |
49 | 79 | 25 | 36 | 14.1 | 49 | 25 | 36 | 14.5 | 5.0 | 49 | 14.5 |
Navigator.getUserMedia
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/MediaRecorder/pause