summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/webrtc-svc
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/webrtc-svc')
-rw-r--r--testing/web-platform/tests/webrtc-svc/RTCRtpParameters-scalability.html14
-rw-r--r--testing/web-platform/tests/webrtc-svc/svc-helper.js4
2 files changed, 12 insertions, 6 deletions
diff --git a/testing/web-platform/tests/webrtc-svc/RTCRtpParameters-scalability.html b/testing/web-platform/tests/webrtc-svc/RTCRtpParameters-scalability.html
index ff28c2b5e9..134a28bd5e 100644
--- a/testing/web-platform/tests/webrtc-svc/RTCRtpParameters-scalability.html
+++ b/testing/web-platform/tests/webrtc-svc/RTCRtpParameters-scalability.html
@@ -78,13 +78,17 @@
const param = transceiver.sender.getParameters();
const encoding = param.encodings[0];
assert_true('scalabilityMode' in encoding);
+
// If L3T3 is not supported at all, abort test.
assert_implements_optional(encoding.scalabilityMode === 'L3T3');
- // Pick a codec known to not have L3T3 support
- const capabilities = RTCRtpSender.getCapabilities('video');
- const codec = capabilities.codecs.find(c => c.mimeType === 'video/VP8');
- assert_true(codec !== undefined);
- transceiver.setCodecPreferences([codec]);
+
+ pc2.ontrack = e => {
+ // Pick a codec known to not have L3T3 support.
+ const capabilities = RTCRtpReceiver.getCapabilities('video');
+ const codec = capabilities.codecs.find(c => c.mimeType === 'video/VP8');
+ assert_true(codec !== undefined);
+ e.transceiver.setCodecPreferences([codec]);
+ }
exchangeIceCandidates(pc1, pc2);
await exchangeOfferAnswer(pc1, pc2);
const sendParams = pc1.getSenders()[0].getParameters();
diff --git a/testing/web-platform/tests/webrtc-svc/svc-helper.js b/testing/web-platform/tests/webrtc-svc/svc-helper.js
index e73ccfa750..6a357f085b 100644
--- a/testing/web-platform/tests/webrtc-svc/svc-helper.js
+++ b/testing/web-platform/tests/webrtc-svc/svc-helper.js
@@ -36,7 +36,9 @@ function createScalabilityTest(mimeType, scalabilityModes) {
const transceiver = pc1.addTransceiver(track1, {
sendEncodings: [{ scalabilityMode: scalabilityMode }],
});
- transceiver.setCodecPreferences(RTCRtpSender.getCapabilities('video').codecs.filter(c => c.mimeType == mimeType));
+ pc2.addEventListener('track', e => {
+ e.transceiver.setCodecPreferences(RTCRtpReceiver.getCapabilities('video').codecs.filter(c => c.mimeType == mimeType));
+ });
const haveTrackEvent = new Promise(r => pc2.ontrack = r);
exchangeIceCandidates(pc1, pc2);
await exchangeOfferAnswer(pc1, pc2);