Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

ManagedMediaSource: startstreaming Ereignis

Eingeschränkt verfügbar

Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.

Want more browser support for this feature? Tell us why.

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

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Das startstreaming-Ereignis der ManagedMediaSource-Schnittstelle wird ausgelöst, wenn sich die streaming-Eigenschaft von false auf true ändert. Dies weist darauf hin, dass der Benutzeragent mehr Daten benötigt, um eine unterbrechungsfreie Wiedergabe sicherzustellen, und die Anwendung sollte beginnen, Media-Segmente abzurufen und anzuhängen.

Syntax

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

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

onstartstreaming = (event) => {};

Ereignistyp

Ein generisches Event.

Beispiele

Abrufen von Daten als Reaktion auf startstreaming

Dieses Beispiel erstellt eine ManagedMediaSource, verknüpft sie mit einem <video>-Element und verwendet das startstreaming-Ereignis, um mit dem Abrufen und Anhängen von Mediendaten zu beginnen.

js
const videoUrl =
  "https://mdn.github.io/shared-assets/videos/flower-fragmented.mp4";
const mediaType = 'video/mp4; codecs="avc1.64001F, mp4a.40.2"';

if (ManagedMediaSource.isTypeSupported(mediaType)) {
  const video = document.createElement("video");
  const source = new ManagedMediaSource();

  video.controls = true;
  video.disableRemotePlayback = true;
  video.src = URL.createObjectURL(source);
  document.body.appendChild(video);

  source.addEventListener("sourceopen", () => {
    const sourceBuffer = source.addSourceBuffer(mediaType);

    source.addEventListener("startstreaming", async () => {
      console.log("startstreaming — fetching media data");
      const response = await fetch(videoUrl);
      const data = await response.arrayBuffer();
      sourceBuffer.appendBuffer(data);
    });
  });
}

Spezifikationen

Spezifikation
Media Source Extensions™
# dfn-startstreaming

Browser-Kompatibilität

Siehe auch