MediaRecorderErrorEvent.error
The read-only error
property in the MediaRecorderErrorEvent
interface is a DOMException
object providing details about the exception that was thrown by a MediaRecorder
instance.
When a MediaRecorderErrorEvent
occurs, you can determine to some extent what went wrong by examining the error
property within the MediaRecorderErrorEvent
received by the MediaRecorder
's error
event handler, onerror
.
Syntax
error = MediaRecorderErrorEvent.error;
Value
A DOMException
describing the error represented by the event. The error's name
property's value may be any exception that makes sense during the handling of media recording, including these specifically identified by the specification. The descriptions here are generic ones; you'll find more specific ones to various scenarios in which they may occur in the corresponding method references.
InvalidStateError
-
An operation was attempted in a context in which it isn't allowed, or a request has been made on an object that's deleted or removed.
NotSupportedError
-
A
MediaRecorder
couldn't be created because the specified options weren't valid. Themessage
atttribute should provide additional information, if it exists. SecurityError
-
The
MediaStream
is configured to disallow recording. This may be the case, for example, with sources obtained usinggetUserMedia()
when the user denies permission to use an input device. InvalidModificationError
-
The number of tracks on the stream being recorded has changed. You can't add or remove tracks while recording media.
UnknownError
-
A non-security related error occurred that cannot otherwise be categorized. Recording stops, the
MediaRecorder
'sstate
becomesinactive
, one lastdataavailable
event is sent to theMediaRecorder
with the remaining received data, and finally astop
event is sent.
Examples
Basic error-handling example
This function creates and returns a MediaRecorder
for a given MediaStream
, configured to buffer data into an array and to watch for errors.
function recordStream(stream) { let recorder = null; let bufferList = []; try { recorder = new MediaRecorder(stream); } catch(err) { /* exception while trying to create the recorder; handle that */ } recorder.ondataavailable = function(event) { bufferList.push(event.data); }; recorder.onerror = function(event) { let error = event.error; }; recorder.start(100); /* 100ms time slices per buffer */ return recorder; }
Specifications
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
error |
No
Uses a generic event with an
error property. |
No
Uses a generic event with an
error property. |
57 |
No |
No
Uses a generic event with an
error property. |
14 |
No |
No
Uses a generic event with an
error property. |
57 |
No
Uses a generic event with an
error property. |
14 |
No
Uses a generic event with an
error property. |
See also
© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/MediaRecorderErrorEvent/error