MediaRecorder: error Ereignis

Das error Ereignis des MediaRecorder-Interfaces wird ausgelöst, wenn ein Fehler auftritt: zum Beispiel, weil die Aufnahme nicht erlaubt war oder mit einem nicht unterstützten Codec versucht wurde.

Dieses Ereignis kann nicht abgebrochen werden und wird nicht weitergeleitet.

Syntax

Verwenden Sie den Ereignisnamen in Methoden wie addEventListener() oder setzen Sie eine Ereignis-Handler-Eigenschaft.

js
addEventListener("event", (event) => {});

onevent = (event) => {};

Ereignistyp

Ereigniseigenschaften

Erbt Eigenschaften von seiner Elternschnittstelle, Event.

error Nur lesbar

Ein DOMException, der Informationen über den aufgetretenen Fehler enthält.

Beschreibung

Auslöser

Eine Funktion, die immer dann aufgerufen wird, wenn während der Lebensdauer des Rekorders ein Fehler auftritt. Neben anderen allgemeinen Fehlern, die auftreten können, sind folgende Fehler beim Einsatz der MediaStream Recording-API speziell möglich; um festzustellen, welcher aufgetreten ist, überprüfen Sie den Wert von MediaRecorderErrorEvent.error.name.

SecurityError

Der MediaStream ist so konfiguriert, dass die Aufnahme nicht erlaubt ist. Dies kann beispielsweise der Fall sein, wenn Quellen mit getUserMedia() bezogen werden und der Benutzer die Berechtigung zur Nutzung eines Eingabegeräts verweigert.

InvalidModificationError

Die Anzahl der Tracks im aufgenommenen Stream hat sich geändert. Sie können keine Tracks hinzufügen oder entfernen, während Medien aufgenommen werden.

UnknownError

Ein nicht sicherheitsrelevanter Fehler ist aufgetreten, der sonst nicht kategorisiert werden kann. Die Aufnahme wird gestoppt, der state des MediaRecorder wird zu inactive, ein letztes dataavailable Ereignis wird an den MediaRecorder mit den verbleibenden empfangenen Daten gesendet, und schließlich wird ein stop Ereignis gesendet.

Beispiele

Verwendung von addEventListener(), um error Ereignisse abzuhören:

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();

Das Gleiche, aber mit der onerror Ereignis-Handler-Eigenschaft:

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();

Spezifikationen

Specification
MediaStream Recording
# dom-mediarecorder-onerror

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch