Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
RTCTransformEvent
Baseline 2025Newly available
Since October 2025, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
DerRTCTransformEvent derWebRTC API repräsentiert ein Ereignis, das in einem dedizierten Worker ausgelöst wird, wenn ein kodiertes Frame zur Verarbeitung durch einenWebRTC Encoded Transform eingereiht wurde.
Die Schnittstelle verfügt über einetransformer Eigenschaft, die einen lesbaren und einen beschreibbaren Stream bereitstellt. Ein Worker sollte kodierte Frames vontransformer.readable lesen, sie bei Bedarf modifizieren und in der gleichen Reihenfolge und ohne Duplikate intransformer.writable schreiben.
Zum Zeitpunkt der Erstellung gibt es nur ein Ereignis, das aufRTCTransformEvent basiert:rtctransform.
In diesem Artikel
Instanzeigenschaften
DaRTCTransformEvent aufEvent basiert, sind dessen Eigenschaften ebenfalls verfügbar.
RTCTransformEvent.transformerSchreibgeschütztGibt den mit dem Ereignis verbundenen
RTCRtpScriptTransformerzurück.
Transform-Ereignistypen
Es gibt nur einen Typ von Transform-Ereignis.
rtctransform
Dasrtctransform Ereignis wird im Worker-Globalbereich beim Aufbau eines zugehörigenRTCRtpScriptTransform ausgelöst und immer dann, wenn ein neuer kodierter Video- oder Audioblock zur Verarbeitung eingereiht wird.
Sie können einenrtctransform-Ereignislistener hinzufügen, um benachrichtigt zu werden, wenn das neue Frame verfügbar ist, entweder mitDedicatedWorkerGlobalScope.addEventListener() oder über dieonrtctransform-Ereignis-Handler-Eigenschaft.
Beispiel
Dieses Beispiel erstellt einen Ereignislistener für dasrtctransform Ereignis.
Das Beispiel geht davon aus, dass wir einenTransformStream mit einemoptions-Objekt haben, das von einemRTCRtpScriptTransform Konstruktor im Hauptthread übergeben wurde.Der Code am Ende zeigt, wie der Stream durch den Transformationsstrom vonreadable zuwritable geleitet wird.
addEventListener("rtctransform", (event) => { let transform; // Select a transform based on passed options if (event.transformer.options.name === "senderTransform") { transform = createSenderTransform(); // A TransformStream (not shown) } else if (event.transformer.options.name === "receiverTransform") { transform = createReceiverTransform(); // A TransformStream (not shown) } // Pipe frames from the readable to writeable through TransformStream event.transformer.readable .pipeThrough(transform) .pipeTo(event.transformer.writable);});Beachten Sie, dass dieser Code Teil eines vollständigeren Beispiels ist, das inUsing WebRTC Encoded Transforms bereitgestellt wird.
Spezifikationen
| Specification |
|---|
| WebRTC Encoded Transform> # rtctransformevent> |