1 /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
4 * You can obtain one at http://mozilla.org/MPL/2.0/.
6 * The origin of this IDL file is
7 * http://w3c.github.io/webrtc-pc/#rtcrtpsender-interface
10 enum RTCPriorityType {
17 enum RTCDegradationPreference {
19 "maintain-resolution",
23 dictionary RTCRtxParameters {
27 dictionary RTCFecParameters {
31 dictionary RTCRtpEncodingParameters {
35 boolean active = true;
36 // From https://www.w3.org/TR/webrtc-priority/
37 RTCPriorityType priority = "low";
38 unsigned long maxBitrate;
40 double scaleResolutionDownBy;
41 // From https://w3c.github.io/webrtc-extensions/#rtcrtpencodingparameters-dictionary
45 dictionary RTCRtpHeaderExtensionParameters {
51 dictionary RTCRtcpParameters {
56 dictionary RTCRtpCodecParameters {
57 unsigned short payloadType;
59 unsigned long clockRate;
60 unsigned short channels = 1;
61 DOMString sdpFmtpLine;
64 dictionary RTCRtpParameters {
65 // We do not support these, but every wpt test involving parameters insists
66 // that these be present, regardless of whether the test-case has anything to
67 // do with these in particular (see validateRtpParameters).
68 sequence<RTCRtpHeaderExtensionParameters> headerExtensions;
69 RTCRtcpParameters rtcp;
70 sequence<RTCRtpCodecParameters> codecs;
73 dictionary RTCRtpSendParameters : RTCRtpParameters {
74 DOMString transactionId;
75 required sequence<RTCRtpEncodingParameters> encodings;