This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2021.
The resume() method of the MediaRecorder interface is used to resume media recording when it has been previously paused.
If MediaRecorder.state is already "recording", calling resume() has no effect.
When the resume() method is invoked, the browser queues a task that runs the following steps:
MediaRecorder.state is "inactive", raise a DOM InvalidStateError exception and terminate these steps. If MediaRecorder.state is not "inactive", continue to the next step.MediaRecorder.state to "recording".Blob.resume event.resume()
None.
None (undefined).
InvalidStateError DOMException
Thrown if the MediaRecorder is currently "inactive".
pause.onclick = () => {
if (MediaRecorder.state === "recording") {
mediaRecorder.pause();
// recording paused
} else if (MediaRecorder.state === "paused") {
mediaRecorder.resume();
// resume recording
}
};
| Specification |
|---|
| MediaStream Recording> # dom-mediarecorder-resume> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
resume |
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/resume