- From: Jan-Ivar Bruaroey via GitHub <noreply@w3.org>
- Date: Tue, 17 Jun 2025 21:16:15 +0000
- To: public-webrtc@w3.org
jan-ivar has just created a new issue for https://github.com/w3c/webrtc-encoded-transform:
== SFrameTransform interface has two heads ==
The [SFrameTransform](https://w3c.github.io/webrtc-encoded-transform/#sframetransform) interface appears to have been designed with two disparate uses in mind:
1. in place of a RTCRtpScriptTransform:
```js
transceiver.sender.transform = new SFrameTransform;
```
2. as a [builtin TransformStream](https://streams.spec.whatwg.org/#generictransformstream):
```js
onrtctransform = async ({transformer: {readable, writable}}) => {
await readable.pipeThrough(new SFrameTransform({role: "encrypt"})).pipeTo(writable);
};
```
These are entirely different uses that arguably should be two different interfaces.
For instance, web developers shouldn't have to figure out what this means:
```js
await readable.pipeThrough(transceiver.sender.transform).pipeTo(writable); // what does this do?
```
A RTCRtpScriptTransform, in contrast, has no stream-like properties on main-thread.
Unfortunately, the current spec conflates two "transform" concepts, making this hard to see. But https://github.com/w3c/webrtc-encoded-transform/issues/229 should clear this up.
Please view or discuss this issue at https://github.com/w3c/webrtc-encoded-transform/issues/262 using your GitHub account
--
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config
Received on Tuesday, 17 June 2025 21:16:15 UTC