The MediaRecorder interface's error event is fired when an error occurs: for example because recording wasn't allowed or was attempted using an unsupported codec.
This event is not cancelable and does not bubble.
The MediaRecorder interface's error event is fired when an error occurs: for example because recording wasn't allowed or was attempted using an unsupported codec.
This event is not cancelable and does not bubble.
Use the event name in methods like addEventListener(), or set an event handler property.
js
addEventListener("event", (event) => {});
onevent = (event) => {};
A MediaRecorderErrorEvent. Inherits from Event.
Inherits properties from its parent interface, Event.
error Read only
A DOMException containing information about the error that occurred.
A function to be called whenever an error occurs during the recorder's lifetime. In addition to other general errors that might occur, the following errors are specifically possible when using the MediaStream Recording API; to determine which occurred, check the value of MediaRecorderErrorEvent.error.name.
InvalidStateError
An attempt was made to stop or pause an inactive recorder, start or resume an active recorder, or otherwise manipulate the MediaRecorder while in the wrong state. This exception can also occur when a request is made on a source that has been deleted or removed.
SecurityError
The MediaStream is configured to disallow recording. This may be the case, for example, with sources obtained using getUserMedia() when the user denies permission to use an input device.
NotSupportedError
An attempt was made to instantiate a MediaRecorder using a MIME type that isn't supported on the user's device; one or more of the requested container, codecs, or profiles as well as other information may be invalid.
InvalidModificationError
The number of tracks on the stream being recorded has changed. You can't add or remove tracks while recording media.
UnknownError
An non-security related error occurred that cannot otherwise be categorized. Recording stops, the MediaRecorder's state becomes inactive, one last dataavailable event is sent to the MediaRecorder with the remaining received data, and finally a stop event is sent.
These errors may occur either directly because of a call to a MediaRecorder method, or indirectly due to a problem arising during the recording process.
Using addEventListener to listen for error events:
js
async function record() {
const stream = await navigator.mediaDevices.getUserMedia({ audio: true });
const recorder = new MediaRecorder(stream);
recorder.addEventListener("error", (event) => {
console.error(`error recording stream: ${event.error.name}`);
});
recorder.start();
}
record();
The same, but using the onerror event handler property:
js
async function record() {
const stream = await navigator.mediaDevices.getUserMedia({ audio: true });
const recorder = new MediaRecorder(stream);
recorder.onerror = (event) => {
console.error(`error recording stream: ${event.error.name}`);
};
recorder.start();
}
record();
| Specification |
|---|
| MediaStream Recording # dom-mediarecorder-onerror |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
error_event |
25 | No | 14.1 | 25 | 14 | |||||||
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/MediaRecorder/error_event