MediaRecorder: error-Ereignis
Eingeschränkt verfügbar
Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
Das error-Ereignis der MediaRecorder-Schnittstelle wird ausgelöst, wenn ein Fehler auftritt, beispielsweise weil die Aufzeichnung nicht erlaubt war oder mit einem nicht unterstützten Codec versucht wurde.
Dieses Ereignis kann nicht abgebrochen werden und wird nicht nach oben weitergegeben.
Syntax
Verwenden Sie den Ereignisnamen in addEventListener():
addEventListener("error", (event) => { })
Alternativ können Sie ihn der Event-Handler-Eigenschaft der Schnittstelle zuweisen:
onerror = (event) => { }
Ereignistyp
Ein MediaRecorderErrorEvent. Erbt von Event.
Beschreibung
>Auslöser
Die Funktion wird aufgerufen, wenn während der Lebensdauer des Recorders ein Fehler auftritt. Neben anderen allgemeinen Fehlern können bei der Verwendung der MediaStream Recording API insbesondere die folgenden Fehler auftreten. Um festzustellen, welcher Fehler aufgetreten ist, prüfen Sie den Wert von MediaRecorderErrorEvent.error.name.
SecurityError-
Der
MediaStreamist so konfiguriert, dass eine Aufzeichnung nicht zulässig ist. Dies kann beispielsweise bei Quellen der Fall sein, die übergetUserMedia()bezogen wurden, wenn der Benutzer die Berechtigung zur Verwendung eines Eingabegeräts verweigert. InvalidModificationError-
Die Anzahl der Tracks im aufgezeichneten Stream hat sich geändert. Während der Aufzeichnung von Medien können Sie keine Tracks hinzufügen oder entfernen.
UnknownError-
Ein Fehler, der nicht mit der Sicherheit zusammenhängt und sich keiner anderen Kategorie zuordnen lässt, ist aufgetreten. Die Aufzeichnung wird beendet, der
statedesMediaRecorderwechselt zuinactive, ein letztesdataavailable-Ereignis mit den verbleibenden empfangenen Daten wird an denMediaRecordergesendet und schließlich wird einstop-Ereignis gesendet.
Beispiele
So verwenden Sie addEventListener(), um auf error-Ereignisse zu reagieren:
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();
Dasselbe mit der Event-Handler-Eigenschaft onerror (beachten Sie jedoch, dass dadurch gegebenenfalls andere über onerror hinzugefügte Ereignis-Listener ersetzt werden):
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
| Spezifikation |
|---|
| MediaStream Recording> # dom-mediarecorder-onerror> |