DedicatedWorkerGlobalScope: rtctransform-Ereignis
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Hinweis: Diese Funktion ist nur in Dedicated Web Workers verfügbar.
Das rtctransform
-Ereignis wird in einem Worker-Objekt des DedicatedWorkerGlobalScope
ausgelöst, wenn ein kodierter Video- oder Audio-Frame zur Verarbeitung durch ein WebRTC Encoded Transform bereitgestellt wird.
Die transformer
-Eigenschaft des Ereignisses gibt einen RTCRtpScriptTransformer
zurück, der den ReadableStream
bereitstellt, auf dem der Frame platziert wird, und einen WritableStream
, wo der Frame geschrieben werden kann, um ihn wieder in die WebRTC-Pipeline einzuspeisen.
Dieses Ereignis ist nicht abbrechbar und blubbert nicht.
Syntax
Verwenden Sie den Ereignisnamen in Methoden wie addEventListener()
oder setzen Sie eine Ereignis-Handler-Eigenschaft.
addEventListener("rtctransform", (event) => { })
onrtctransform = (event) => { }
Ereignistyp
Ein RTCTransformEvent
. Erbt von Event
.
Ereigniseigenschaften
Diese Schnittstelle erbt auch Eigenschaften von ihrem Elternteil, Event
.
RTCTransformEvent.transformer
Schreibgeschützt-
Gibt den
RTCRtpScriptTransformer
zurück, der mit dem Ereignis verbunden ist.
Beispiel
Der folgende Codeausschnitt zeigt einen Handler für das rtctransform
-Ereignis im Worker, der dem globalen Geltungsbereich mit addEventListener()
hinzugefügt wurde.
Der event.transformer
ist ein RTCRtpScriptTransformer
, das Gegenstück des Workers zu RTCRtpScriptTransform
.
addEventListener("rtctransform", (event) => {
let transform;
// Select a transform based on passed options
if (event.transformer.options.name === "senderTransform")
transform = createSenderTransform(); // A TransformStream
else if (event.transformer.options.name === "receiverTransform")
transform = createReceiverTransform(); // A TransformStream
else return;
// Pipe frames from the readable to writeable through TransformStream
event.transformer.readable
.pipeThrough(transform)
.pipeTo(event.transformer.writable);
});
Das rtctransform
-Ereignis wird ausgelöst, wenn ein kodierter Frame in der RTCRtpScriptTransformer
eingereiht wird, und nur einmal, wenn der entsprechende RTCRtpScriptTransformer
des Transformers konstruiert wird.
Der Code bestimmt zuerst, welche Transformation angewendet werden soll, indem er den name
-Wert verwendet, der in den Optionen übergeben wird (dies ermöglicht, dass RTCRtpScriptTransform
-Instanzen, die den eingehenden und ausgehenden WebRTC-Pipelines hinzugefügt wurden, einen einzigen Worker teilen).
Kodierte Frames werden dann vom lesbaren ReadableStream
über den ausgewählten TransformStream
zu einem beschreibbaren Strom weitergeleitet.
Der eigentliche Transformationscode wird nicht gezeigt.
Beachten Sie, dass dieser Code Teil eines umfassenderen Beispiels ist, das in Using WebRTC Encoded Transforms bereitgestellt wird.
Spezifikationen
Specification |
---|
WebRTC Encoded Transform # dom-dedicatedworkerglobalscope-onrtctransform |