Re: [webrtc-encoded-transform] Add description of an API for controlling SDP codec negotiation (#186)

> 1. Enable media agnostic RTP payload formats like SFrame.

Do you mean any other types here, or just SFrame? Do you have an example?

> For 1, we assume the UA implements the RTP payload format.
setCodecPreferences can be used if the UA does not negotiate it by default.

What would that look like? Would it multiply the payload types in `RTCRtpSender.getCapabilities("video")`?

> 2. Allow the application to select one of these RTP payload formats as part of a RTCRtpSender transform.

Do you mean a RTCRtpScriptTransform here? What would that look like?

> ```js
> partial interface RTCEncodedVideoFrame {
>    attribute DOMString rtpPayloadFormat;
> ```

What's the advantage or use case for choosing this per frame?

Apps can already specify SFrame ahead of negotiation, so doesn't the UA have all it needs to negotiate sframe?
```js
const {sender} = pc.addTransceiver(track);
sender.transform = new SFrameTransform({role: "encrypt"});
// negotiate
const {codecs} = sender.getParameters();
if (!codecs.find(findSFrame)) sender.transform = null;
```


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


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

Received on Friday, 13 October 2023 19:58:22 UTC