Re: [webrtc-encoded-transform] generateKeyFrame takes a "rid" argument, but is invoked with "rids" (#143)

> ... this argues for having generateKeyFrame() have the same semantics (thus - take a list argument).

This makes me wonder: how are transforms and simulcast supposed to work together anyway?

When I test In https://jsfiddle.net/jib1/x8e251sL/ simulcast only works if I uncheck `☐ transform` (in Safari and Firefox, Chrome doesn't work for some reason, @fippo does the mid↔rid logic seem sound?)

But if I leave `✅ transform` checked, then transforming works (verify by unchecking `☐ descramble`), but only a single (the smallest) layer is transmitted in all browsers. This seems broken.

So I have to theorize a bit about how it's supposed to work. Am I expected to get three `rtctransform` events? Or encoded frames from all layers sent through the same transform?

Either way, JS will be called once per layer, so how is JS expected to avoid calling `generateKeyFrame()` 3 times? Is there a way to get the rid from the encoded frame being processed? Should the default rid perhaps be implicit from which layer the JS is operating on?

-- 
GitHub Notification of comment by jan-ivar
Please view or discuss this issue at https://github.com/w3c/webrtc-encoded-transform/issues/143#issuecomment-3145844869 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Friday, 1 August 2025 21:41:39 UTC