lynx   »   [go: up one dir, main page]

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

View in English Always switch to English

RTCPeerConnection: track-Ereignis

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨Januar 2020⁩.

Das track-Ereignis wird an den ontrack-Ereignis-Handler auf RTCPeerConnections gesendet, nachdem ein neuer Track zu einem RTCRtpReceiver hinzugefügt wurde, der Teil der Verbindung ist.

Zu dem Zeitpunkt, an dem dieses Ereignis ausgeliefert wird, wurde der neue Track vollständig zur Peer-Verbindung hinzugefügt. Siehe Track-Ereignistypen für Details.

Dieses Ereignis kann nicht abgebrochen werden und steigt nicht auf.

Syntax

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

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

ontrack = (event) => { }

Ereignistyp

Ein RTCTrackEvent. Erbt von Event.

Event RTCTrackEvent

Ereigniseigenschaften

Da RTCTrackEvent auf Event basiert, sind dessen Eigenschaften ebenfalls verfügbar.

receiver Schreibgeschützt

Der RTCRtpReceiver, der von dem Track verwendet wird, der zur RTCPeerConnection hinzugefügt wurde.

streams Schreibgeschützt Optional

Ein Array von MediaStream-Objekten, von denen jedes einen der Mediastreams darstellt, zu denen der hinzugefügte track gehört. Standardmäßig ist das Array leer, was einen streamlosen Track anzeigt.

track Schreibgeschützt

Der MediaStreamTrack, der zur Verbindung hinzugefügt wurde.

transceiver Schreibgeschützt

Der RTCRtpTransceiver, der von dem neuen Track verwendet wird.

Beispiele

Dieses Beispiel zeigt Code, der eine neue RTCPeerConnection erstellt und dann einen neuen track-Ereignis-Handler hinzufügt.

js
pc = new RTCPeerConnection({
  iceServers: [
    {
      urls: "turn:fake.turn-server.url",
      username: "some username",
      credential: "some-password",
    },
  ],
});

pc.addEventListener("track", (e) => {
  videoElement.srcObject = e.streams[0];
  hangupButton.disabled = false;
});

Der Event-Handler weist den ersten Stream des neuen Tracks einem vorhandenen <video>-Element zu, das durch die Variable videoElement identifiziert wird.

Sie können die Event-Handler-Funktion auch der ontrack-Eigenschaft zuweisen, anstatt addEventListener() zu verwenden.

js
pc.ontrack = (e) => {
  videoElement.srcObject = e.streams[0];
  hangupButton.disabled = false;
  return false;
};

Spezifikationen

Specification
WebRTC: Real-Time Communication in Browsers
# event-track

Browser-Kompatibilität

Лучший частный хостинг