tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

RTCRtpParameters.webidl (2164B)


      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/.
      5 *
      6 * The origin of this IDL file is
      7 * http://w3c.github.io/webrtc-pc/#rtcrtpsender-interface
      8 */
      9 
     10 enum RTCPriorityType {
     11  "very-low",
     12  "low",
     13  "medium",
     14  "high"
     15 };
     16 
     17 enum RTCDegradationPreference {
     18  "maintain-framerate",
     19  "maintain-resolution",
     20  "balanced"
     21 };
     22 
     23 dictionary RTCRtpEncodingParameters {
     24  boolean                  active = true;
     25  RTCRtpCodec codec;
     26  // From https://www.w3.org/TR/webrtc-priority/
     27  RTCPriorityType          priority = "low";
     28  unsigned long            maxBitrate;
     29  DOMString                rid;
     30  double                   scaleResolutionDownBy;
     31  // From https://w3c.github.io/webrtc-extensions/#rtcrtpencodingparameters-dictionary
     32  double                   maxFramerate;
     33 };
     34 
     35 dictionary RTCRtpHeaderExtensionParameters {
     36  DOMString      uri;
     37  unsigned short id;
     38  boolean        encrypted;
     39 };
     40 
     41 dictionary RTCRtcpParameters {
     42  DOMString cname;
     43  boolean   reducedSize;
     44 };
     45 
     46 [GenerateEqualityOperator]
     47 dictionary RTCRtpCodecParameters : RTCRtpCodec {
     48  required octet payloadType;
     49 };
     50 
     51 dictionary RTCRtpParameters {
     52  // We do not support these, but every wpt test involving parameters insists
     53  // that these be present, regardless of whether the test-case has anything to
     54  // do with these in particular (see validateRtpParameters).
     55  sequence<RTCRtpHeaderExtensionParameters> headerExtensions;
     56  RTCRtcpParameters                         rtcp;
     57  // Don't make this required just yet; there are still implementations out
     58  // there that build RTCRtpParameters themselves
     59  sequence<RTCRtpCodecParameters>           codecs;
     60 };
     61 
     62 dictionary RTCRtpSendParameters : RTCRtpParameters {
     63  DOMString transactionId;
     64  required sequence<RTCRtpEncodingParameters> encodings;
     65  // https://w3c.github.io/mst-content-hint/
     66  RTCDegradationPreference                  degradationPreference;
     67 };
     68 
     69 dictionary RTCRtpReceiveParameters : RTCRtpParameters {
     70 };