diff --git a/amendments.json b/amendments.json index 7391ca640..bf58ebca3 100644 --- a/amendments.json +++ b/amendments.json @@ -310,6 +310,13 @@ "type": "correction", "status": "candidate", "id": 24 + }, + { + "description": "Redefine SendCodecs and ReceiveCodecs", + "pr": 2935, + "type": "addition", + "status": "candidate", + "id": 41 } ], "webidl-rtcrtpencodingparameters": [ @@ -563,5 +570,14 @@ ], "id": 40 } + ], + "create-receiver-algo": [ + { + "description": "Redefine SendCodecs and ReceiveCodecs", + "pr": 2935, + "type": "addition", + "status": "candidate", + "id": 41 + } ] } diff --git a/base-rec.html b/base-rec.html index 4800fb3ed..99d8426da 100644 --- a/base-rec.html +++ b/base-rec.html @@ -10116,7 +10116,7 @@
Let receiver be a new
object.
diff --git a/webrtc.html b/webrtc.html
index ce09e1689..947c6b27e 100644
--- a/webrtc.html
+++ b/webrtc.html
@@ -2246,11 +2246,13 @@ RTCRtpReceiver
- Set - transceiver.{{RTCRtpTransceiver/[[Receiver]]}}.{{RTCRtpReceiver/[[ReceiveCodecs]]}} - to the codecs that description - negotiates for receiving and which the user - agent is currently prepared to receive. + For each of the codecs that description negotiates for receiving, execute the following steps: +
If the direction is @@ -2299,13 +2301,15 @@
- Set - transceiver.{{RTCRtpTransceiver/[[Sender]]}}.{{RTCRtpSender/[[SendCodecs]]}} - to the codecs that description - negotiates for sending and which the user - agent is currently capable of sending, - and set - transceiver.{{RTCRtpTransceiver/[[Sender]]}}.{{RTCRtpSender/[[LastReturnedParameters]]}} + For each of the codecs that description negotiates for sending, execute the following steps: +
null
.
- Set - transceiver.{{RTCRtpTransceiver/[[Receiver]]}}.{{RTCRtpReceiver/[[ReceiveCodecs]]}} - to the codecs that description - negotiates for receiving and which the user - agent is currently prepared to receive. + For each of the codecs that description negotiates for receiving, execute the following steps: +
- Set - transceiver.{{RTCRtpTransceiver/[[Sender]]}}.{{RTCRtpSender/[[SendCodecs]]}} - to the codecs that description - negotiates for sending and which the user - agent is currently capable of sending. + For each of the codecs that description negotiates for sending, execute the following steps: +
Let sender have a [[\SendCodecs]] internal - slot, representing a list of {{RTCRtpCodecParameters}} - dictionaries, and initialized to an empty list. + slot, representing a list of [=tuple=]s, each containing an {{RTCRtpCodecParameters}} + dictionary and an "enabled" boolean, and initialized to the + [=RTCRtpSender/list of implemented send codecs=], with the "enabled" flag + set in an implementation defined manner.
+ This conceptual list contains every combination of parameters that + the user agent is capable of processing. In practice, this would + be implemented as a piece of code that parses the parameters and + determines whether they are acceptable or not, but this is highly + codec dependent, so for the purpose of specification, we work with + a conceptual list containing all acceptable parameter combinations. +
+The list of implemented header extensions for sending, given kind, is an [=implementation-defined=] list of @@ -9232,8 +9246,9 @@
Let receiver be a new {{RTCRtpReceiver}} object. @@ -10264,8 +10279,10 @@
Let receiver have a [[\ReceiveCodecs]] - internal slot, representing a list of {{RTCRtpCodecParameters}} - dictionaries, and initialized to an empty list. + internal slot, representing a list of [=tuple=]s, each containing a {{RTCRtpCodecParameters}} + dictionaries, and initialized to an list containing all the codecs in the + list of implemented receive codecs for kind, and with the "enabled" flag + set in an implementation defined manner.
+ This conceptual list contains every combination of parameters that + the user agent is capable of processing. In practice, this would + be implemented as a piece of code that parses the parameters and + determines whether they are acceptable or not, but this is highly + codec dependent, so for the purpose of specification, we work with + a conceptual list containing all acceptable parameter combinations. +
The list of implemented header extensions for receiving, given kind, is an [=implementation-defined=] list of @@ -10427,6 +10452,7 @@
{{RTCRtpParameters/codecs}} is set to the value of the + "enabled" codecs from the {{RTCRtpReceiver/[[ReceiveCodecs]]}} internal slot.