DedicatedWorkerGlobalScope: rtctransform event
Baseline
2025
Newly available
Since October 2025, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
Note: This feature is only available in Dedicated Web Workers.
Sự kiện rtctransform được kích hoạt tại đối tượng DedicatedWorkerGlobalScope của worker khi một khung video hoặc âm thanh đã mã hóa được đưa vào hàng đợi để xử lý bởi WebRTC Encoded Transform.
Thuộc tính transformer của sự kiện trả về một RTCRtpScriptTransformer phơi bày ReadableStream nơi khung được xếp hàng, và một WritableStream nơi khung có thể được ghi vào để đưa nó trở lại pipeline WebRTC.
Sự kiện này không thể hủy và không nổi bọt.
Cú pháp
Sử dụng tên sự kiện trong các phương thức như addEventListener(), hoặc đặt thuộc tính trình xử lý sự kiện.
addEventListener("rtctransform", (event) => { })
onrtctransform = (event) => { }
Kiểu sự kiện
Một RTCTransformEvent. Kế thừa từ Event.
Thuộc tính sự kiện
Giao diện này cũng kế thừa các thuộc tính từ giao diện cha Event.
RTCTransformEvent.transformerRead only-
Trả về
RTCRtpScriptTransformerđược liên kết với sự kiện.
Ví dụ
Đoạn mã sau cho thấy một bộ xử lý cho sự kiện rtctransform trong worker, được thêm vào phạm vi global bằng addEventListener().
event.transformer là một RTCRtpScriptTransformer, đối ứng phía worker của RTCRtpScriptTransform.
addEventListener("rtctransform", (event) => {
let transform;
// Chọn một transform dựa trên các tùy chọn được truyền vào
if (event.transformer.options.name === "senderTransform")
transform = createSenderTransform(); // Một TransformStream
else if (event.transformer.options.name === "receiverTransform")
transform = createReceiverTransform(); // Một TransformStream
else return;
// Đẩy các frame từ readable sang writable qua TransformStream
event.transformer.readable
.pipeThrough(transform)
.pipeTo(event.transformer.writable);
});
Sự kiện rtctransform được kích hoạt khi một khung đã mã hóa được xếp hàng trên RTCRtpScriptTransformer và chỉ một lần khi RTCRtpScriptTransformer tương ứng của transformer được khởi tạo.
Mã trước tiên xác định transform nào sẽ áp dụng bằng giá trị name được truyền trong các tùy chọn (điều này cho phép các thể hiện RTCRtpScriptTransform được thêm vào các pipeline WebRTC đầu vào và đầu ra dùng chung một worker).
Các khung đã mã hóa sau đó được dẫn từ readable, qua TransformStream đã chọn, đến writable.
Mã transform thực tế không được hiển thị.
Lưu ý rằng mã này là một phần của ví dụ đầy đủ hơn được cung cấp trong Using WebRTC Encoded Transforms.
Đặc tả kỹ thuật
| Specification |
|---|
| WebRTC Encoded Transform> # dom-dedicatedworkerglobalscope-onrtctransform> |