Re: [webrtc-extensions] Negotiationless codec selection and per-encoding layer codec configuration (#126)

@ssilkin Yes, it is possible for `setParameters()` and O/A to be out of sync, because the codec constraints change as the negotiation proceeds: 

a. Prior to completion of O/A and determination of the "simulcast envelope", `codec` needs to be one of  `RTCRtpSender.getCapabilities(kind).codecs`.  

b. After completion of O/A and deterrmination of the "simulcast envelope", `codec` needs to be one of the negotiated codecs.

c. `codec` could be a valid value prior to completion of O/A, but invalid afterwards.  For example, mixed codec simulcast (e.g. AV1 at low resolution and H.264 at higher resolutions) could have been set prior to completion of O/A, but O/A negotiated VP8 at all resolutions.  Rather than throwing an exception, it seems like the application needs to use `getParameters()` to discover the settings and then use `setParameters()` to reset them. 

-- 
GitHub Notification of comment by aboba
Please view or discuss this issue at https://github.com/w3c/webrtc-extensions/issues/126#issuecomment-1371833175 using your GitHub account


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

Received on Thursday, 5 January 2023 06:30:04 UTC