SourceBuffer: abort() Methode

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Hinweis: Diese Funktion ist in Dedicated Web Workers verfügbar.

Die abort()-Methode des SourceBuffer Interfaces bricht das aktuelle Segment ab und setzt den Segmentparser zurück.

Syntax

js
abort()

Parameter

Keine.

Rückgabewert

Keiner (undefined).

Ausnahmen

InvalidStateError DOMException

Wird ausgelöst, wenn die Eigenschaft MediaSource.readyState der übergeordneten Mediaquelle nicht open ist, oder dieser SourceBuffer aus der MediaSource entfernt wurde.

Beispiele

Die Spezifikationsbeschreibung von abort() ist etwas verwirrend — betrachten Sie zum Beispiel Schritt 1 von Reset Parser State. Die MSE-API ist vollständig asynchron, aber dieser Schritt scheint eine synchrone (blockierende) Operation vorzuschlagen, was keinen Sinn ergibt.

Das gesagt, können aktuelle Implementierungen in bestimmten Situationen nützlich sein, wenn Sie den aktuellen Anhängevorgang (oder was auch immer) auf einem Quellpuffer stoppen und dann sofort erneut Operationen darauf durchführen möchten. Betrachten Sie zum Beispiel diesen Code:

js
sourceBuffer.addEventListener("updateend", (ev) => {
  // ...
});

sourceBuffer.appendBuffer(buf);

Angenommen, nach dem Aufruf von appendBuffer, ABER bevor das updateend-Ereignis ausgelöst wird (d. h. ein Puffer wird angehängt, aber der Vorgang ist noch nicht abgeschlossen), "scrubbt" ein Benutzer das Video und sucht einen neuen Zeitpunkt. In diesem Fall sollten Sie manuell abort() auf dem Quellpuffer aufrufen, um das Dekodieren des aktuellen Puffers zu stoppen, dann das neu angeforderte Segment abrufen und anhängen, das sich auf die aktuelle neue Position des Videos bezieht.

Spezifikationen

Specification
Media Source Extensions™
# dom-sourcebuffer-abort

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
abort
Available in workers
Experimental

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
Partial support
Partial support
No support
No support
Experimental. Expect behavior to change in the future.

Siehe auch