MediaSource: duration-Eigenschaft

Hinweis: Dieses Feature ist verfügbar in Dedicated Web Workers.

Die duration-Eigenschaft der MediaSource-Schnittstelle ruft die Dauer des derzeit präsentierten Mediums ab und setzt sie.

Wert

Ein Gleitkommawert. Es wird ein Wert in Sekunden erwartet.

Ausnahmen

Die folgenden Ausnahmen können auftreten, wenn ein neuer Wert für diese Eigenschaft festgelegt wird.

InvalidAccessError DOMException

Wird ausgelöst, wenn versucht wurde, einen negativen Dauerwert oder NaN festzulegen.

InvalidStateError DOMException

Wird ausgelöst, wenn MediaSource.readyState nicht gleich open ist oder eines oder mehrere der SourceBuffer-Objekte in MediaSource.sourceBuffers aktualisiert werden (d.h. ihre SourceBuffer.updating-Eigenschaft ist true.)

Beispiele

Der folgende Ausschnitt basiert auf einem einfachen Beispiel von Nick Desaulniers (sehen Sie sich die vollständige Demo live an oder laden Sie den Quellcode herunter, um weiter zu untersuchen). Die Funktion getMediaSource(), die hier nicht definiert ist, gibt eine MediaSource zurück.

js
const mediaSource = getMediaSource();

function sourceOpen() {
  console.log(this.readyState); // open
  const sourceBuffer = mediaSource.addSourceBuffer(mimeCodec);
  fetchAB(assetURL, (buf) => {
    sourceBuffer.addEventListener("updateend", () => {
      mediaSource.endOfStream();
      mediaSource.duration = 120;
      video.play();
      console.log(mediaSource.readyState); // ended
    });
    sourceBuffer.appendBuffer(buf);
  });
}

// …

Spezifikationen

Specification
Media Source Extensions™
# dom-mediasource-duration

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch