diff --git a/amendments.json b/amendments.json index 8a86a36e0..64822e39d 100644 --- a/amendments.json +++ b/amendments.json @@ -604,6 +604,21 @@ "type": "correction", "status": "candidate", "id": 26 + }, + { + "description": "Separate Send/ReceiveCodecs and NegotiatedCodecs.", + "pr": 2972, + "difftype": "modify", + "tests": [ + "webrtc/RTCRtpSender-getParameters.html", + "webrtc/RTCRtpReceiver-getParameters.html" + ], + "testUpdates": [ + "web-platform-tests/wpt#46840" + ], + "type": "correction", + "status": "candidate", + "id": 47 } ], "create-answer-restrictions": [ @@ -841,6 +856,13 @@ "type": "addition", "status": "candidate", "id": 41 + }, + { + "description": "Separate Send/ReceiveCodecs and NegotiatedCodecs.", + "pr": 2972, + "type": "correction", + "status": "candidate", + "id": 47 } ], "rtcrtpreceiver-laststablestatereceivecodecs": [ diff --git a/tools/check-rec-amendment.js b/tools/check-rec-amendment.js index 826f03280..fa1b0818f 100644 --- a/tools/check-rec-amendment.js +++ b/tools/check-rec-amendment.js @@ -10,18 +10,22 @@ module.exports = async ({github, context, core}) => { } const amendments = require(process.env.GITHUB_WORKSPACE + '/amendments.json'); const prAmendmentSection = Object.values(amendments).find(list => list.find(a => Array.isArray(a.pr) ? a.pr.includes(context.issue.number) : a.pr === context.issue.number )); - const prAmendment = prAmendmentSection.find(a => Array.isArray(a.pr) ? a.pr.includes(context.issue.number) : a.pr === context.issue.number ); - if (!prAmendment) { + if (!prAmendmentSection) { core.setFailed(`Pull request ${context.issue.number} not labeled as editorial and not referenced in amendments.json`); + process.exit(2); } + const prAmendment = prAmendmentSection.find(a => Array.isArray(a.pr) ? a.pr.includes(context.issue.number) : a.pr === context.issue.number ); if (!prAmendment.testUpdates || !prAmendment.testUpdates.length === 0) { core.setFailed(`Pull request ${context.issue.number} declares an amendment but does not document its test status in testUpdates`); + process.exit(2); } const validTestUpdates = ["already-tested", "not-testable"]; if (typeof prAmendment.testUpdates === "string" && !validTestUpdates.includes(prAmendment.testUpdates)) { core.setFailed(`Pull request ${context.issue.number} declares an invalid test status in its amendment testUpdates field`); + process.exit(2); } if (Array.isArray(prAmendment.testUpdates) && !prAmendment.testUpdates.every(t => t.match(/^web-platform-tests\/wpt#[0-9]+$/))) { core.setFailed(`Pull request ${context.issue.number} declares test updates but not using the expected format to point to web-platform-tests PRs: "web-platform-tests/wpt#NNN"`); + process.exit(2); } }; diff --git a/webrtc.html b/webrtc.html index f31a14958..8938f2605 100644 --- a/webrtc.html +++ b/webrtc.html @@ -1864,9 +1864,9 @@
Set - transceiver.{{RTCRtpTransceiver/[[Receiver]]}}.{{RTCRtpReceiver/[[LastStableStateReceiveCodecs]]}} + transceiver.{{RTCRtpTransceiver/[[Receiver]]}}.{{RTCRtpReceiver/[[LastStableStateNegotiatedCodecs]]}} to - transceiver.{{RTCRtpTransceiver/[[Receiver]]}}.{{RTCRtpReceiver/[[ReceiveCodecs]]}}. + transceiver.{{RTCRtpTransceiver/[[Receiver]]}}.{{RTCRtpReceiver/[[NegotiatedCodecs]]}}.
false
.
- - For each of the codecs that description negotiates for receiving, execute the following steps: -
- If the direction is - {{RTCRtpTransceiverDirection/"sendonly"}} or - {{RTCRtpTransceiverDirection/"inactive"}}, - the receiver is not prepared to receive - anything, and the list will be empty. -
-If description is of type @@ -2244,13 +2226,37 @@
- For each of the codecs that description negotiates for sending, execute the following steps:
+ Clear the transceiver.{{RTCRtpTransceiver/[[Sender]]}}.{{RTCRtpSender/[[NegotiatedCodecs]]}} slot.
+
+ Then, for each of the codecs that description negotiates for sending, execute the following steps:
+ Clear the transceiver.{{RTCRtpTransceiver/[[Receiver]]}}.{{RTCRtpReceiver/[[NegotiatedCodecs]]}} slot.
+
+ Then, for each of the codecs that description negotiates for receiving, execute the following steps:
+
+ If the direction is + {{RTCRtpTransceiverDirection/"sendonly"}} or + {{RTCRtpTransceiverDirection/"inactive"}}, + the receiver is not prepared to receive + anything, and the list will be empty. +
+null
.
@@ -2693,9 +2699,9 @@ Set - transceiver.{{RTCRtpTransceiver/[[Receiver]]}}.{{RTCRtpReceiver/[[ReceiveCodecs]]}} + transceiver.{{RTCRtpTransceiver/[[Receiver]]}}.{{RTCRtpReceiver/[[NegotiatedCodecs]]}} to - transceiver.{{RTCRtpTransceiver/[[Receiver]]}}.{{RTCRtpReceiver/[[LastStableStateReceiveCodecs]]}}. + transceiver.{{RTCRtpTransceiver/[[Receiver]]}}.{{RTCRtpReceiver/[[LastStableStateNegotiatedCodecs]]}}.
+ Let sender have a [[\NegotiatedCodecs]] internal slot, consisting of {{RTCRtpCodecParameters}}, and initialized to an empty list. +
@@ -9188,8 +9197,7 @@
+ Let receiver have a [[\NegotiatedCodecs]] internal slot, consisting of {{RTCRtpCodecParameters}}, and initialized to an empty list. +
Let receiver have a - [[\LastStableStateReceiveCodecs]] internal slot and + [[\LastStableStateNegotiatedCodecs]] internal slot and initialize it to an empty list.
{{RTCRtpParameters/codecs}} is set to the value of the "enabled" codecs from the - {{RTCRtpReceiver/[[ReceiveCodecs]]}} internal slot. + {{RTCRtpReceiver/[[NegotiatedCodecs]]}} internal slot.