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.
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 MediaRecordercouldn't be created because the specified options weren't valid. Themessageattribute should provide additional information, if it exists.
- SecurityError
- 
    The MediaStreamis 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'sstatebecomesinactive, one lastdataavailableevent is sent to theMediaRecorderwith the remaining received data, and finally astopevent 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
| Specification | 
|---|
| MediaStream Recording # dom-mediarecordererrorevent-error | 
Browser compatibility
BCD tables only load in the browser