2013-07-10 00:45:36 +00:00
|
|
|
/*
|
2016-02-07 20:46:45 -08:00
|
|
|
* Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
|
2013-07-10 00:45:36 +00:00
|
|
|
*
|
2016-02-07 20:46:45 -08:00
|
|
|
* Use of this source code is governed by a BSD-style license
|
|
|
|
|
* that can be found in the LICENSE file in the root of the source
|
|
|
|
|
* tree. An additional intellectual property rights grant can be found
|
|
|
|
|
* in the file PATENTS. All contributing project authors may
|
|
|
|
|
* be found in the AUTHORS file in the root of the source tree.
|
2013-07-10 00:45:36 +00:00
|
|
|
*/
|
|
|
|
|
|
2019-01-11 09:11:00 -08:00
|
|
|
#ifndef MEDIA_BASE_MEDIA_CONSTANTS_H_
|
|
|
|
|
#define MEDIA_BASE_MEDIA_CONSTANTS_H_
|
2013-07-10 00:45:36 +00:00
|
|
|
|
2018-11-28 16:47:49 +01:00
|
|
|
#include <stddef.h>
|
2013-07-10 00:45:36 +00:00
|
|
|
|
2018-10-17 16:50:07 +02:00
|
|
|
#include "rtc_base/system/rtc_export.h"
|
|
|
|
|
|
2013-07-10 00:45:36 +00:00
|
|
|
// This file contains constants related to media.
|
|
|
|
|
|
|
|
|
|
namespace cricket {
|
|
|
|
|
|
|
|
|
|
extern const int kVideoCodecClockrate;
|
|
|
|
|
|
2021-02-06 11:33:28 +01:00
|
|
|
extern const int kVideoMtu;
|
|
|
|
|
extern const int kVideoRtpSendBufferSize;
|
|
|
|
|
extern const int kVideoRtpRecvBufferSize;
|
|
|
|
|
|
2013-07-10 00:45:36 +00:00
|
|
|
// Default CPU thresholds.
|
|
|
|
|
extern const float kHighSystemCpuThreshold;
|
|
|
|
|
extern const float kLowSystemCpuThreshold;
|
|
|
|
|
extern const float kProcessCpuThreshold;
|
|
|
|
|
|
2014-05-13 11:07:01 +00:00
|
|
|
extern const char kRedCodecName[];
|
|
|
|
|
extern const char kUlpfecCodecName[];
|
2016-11-07 03:03:41 -08:00
|
|
|
extern const char kFlexfecCodecName[];
|
2018-01-25 13:01:09 -08:00
|
|
|
extern const char kMultiplexCodecName[];
|
2016-11-07 03:03:41 -08:00
|
|
|
|
|
|
|
|
extern const char kFlexfecFmtpRepairWindow[];
|
2014-05-13 11:07:01 +00:00
|
|
|
|
2021-03-24 17:49:02 +01:00
|
|
|
extern const char kRtxCodecName[];
|
|
|
|
|
extern const char kCodecParamRtxTime[];
|
2013-12-05 22:36:21 +00:00
|
|
|
extern const char kCodecParamAssociatedPayloadType[];
|
2021-03-24 17:49:02 +01:00
|
|
|
|
2017-12-11 12:21:02 +05:30
|
|
|
extern const char kCodecParamAssociatedCodecName[];
|
2013-07-10 00:45:36 +00:00
|
|
|
|
2013-12-05 22:36:21 +00:00
|
|
|
extern const char kOpusCodecName[];
|
2015-03-26 07:39:19 +08:00
|
|
|
extern const char kIsacCodecName[];
|
|
|
|
|
extern const char kL16CodecName[];
|
|
|
|
|
extern const char kG722CodecName[];
|
|
|
|
|
extern const char kIlbcCodecName[];
|
|
|
|
|
extern const char kPcmuCodecName[];
|
|
|
|
|
extern const char kPcmaCodecName[];
|
|
|
|
|
extern const char kCnCodecName[];
|
|
|
|
|
extern const char kDtmfCodecName[];
|
2013-07-10 00:45:36 +00:00
|
|
|
|
|
|
|
|
// Attribute parameters
|
2013-12-05 22:36:21 +00:00
|
|
|
extern const char kCodecParamPTime[];
|
|
|
|
|
extern const char kCodecParamMaxPTime[];
|
2013-07-10 00:45:36 +00:00
|
|
|
// fmtp parameters
|
2013-12-05 22:36:21 +00:00
|
|
|
extern const char kCodecParamMinPTime[];
|
|
|
|
|
extern const char kCodecParamSPropStereo[];
|
|
|
|
|
extern const char kCodecParamStereo[];
|
|
|
|
|
extern const char kCodecParamUseInbandFec[];
|
2015-03-27 05:05:59 +01:00
|
|
|
extern const char kCodecParamUseDtx[];
|
2013-12-05 22:36:21 +00:00
|
|
|
extern const char kCodecParamMaxAverageBitrate[];
|
2014-09-10 07:57:12 +00:00
|
|
|
extern const char kCodecParamMaxPlaybackRate[];
|
2013-12-05 22:36:21 +00:00
|
|
|
|
|
|
|
|
extern const char kParamValueTrue[];
|
2013-07-10 00:45:36 +00:00
|
|
|
// Parameters are stored as parameter/value pairs. For parameters who do not
|
2021-07-26 13:24:57 +02:00
|
|
|
// have a value, `kParamValueEmpty` should be used as value.
|
2013-12-05 22:36:21 +00:00
|
|
|
extern const char kParamValueEmpty[];
|
2013-07-10 00:45:36 +00:00
|
|
|
|
|
|
|
|
// opus parameters.
|
|
|
|
|
// Default value for maxptime according to
|
|
|
|
|
// http://tools.ietf.org/html/draft-spittka-payload-rtp-opus-03
|
|
|
|
|
extern const int kOpusDefaultMaxPTime;
|
|
|
|
|
extern const int kOpusDefaultPTime;
|
|
|
|
|
extern const int kOpusDefaultMinPTime;
|
|
|
|
|
extern const int kOpusDefaultSPropStereo;
|
|
|
|
|
extern const int kOpusDefaultStereo;
|
|
|
|
|
extern const int kOpusDefaultUseInbandFec;
|
2015-03-27 05:05:59 +01:00
|
|
|
extern const int kOpusDefaultUseDtx;
|
2014-09-10 07:57:12 +00:00
|
|
|
extern const int kOpusDefaultMaxPlaybackRate;
|
|
|
|
|
|
2013-07-10 00:45:36 +00:00
|
|
|
// Prefered values in this code base. Note that they may differ from the default
|
|
|
|
|
// values in http://tools.ietf.org/html/draft-spittka-payload-rtp-opus-03
|
|
|
|
|
// Only frames larger or equal to 10 ms are currently supported in this code
|
|
|
|
|
// base.
|
|
|
|
|
extern const int kPreferredMaxPTime;
|
|
|
|
|
extern const int kPreferredMinPTime;
|
|
|
|
|
extern const int kPreferredSPropStereo;
|
|
|
|
|
extern const int kPreferredStereo;
|
|
|
|
|
extern const int kPreferredUseInbandFec;
|
|
|
|
|
|
2019-06-04 15:38:50 +02:00
|
|
|
extern const char kPacketizationParamRaw[];
|
|
|
|
|
|
2019-05-24 13:40:02 +02:00
|
|
|
// rtcp-fb message in its first experimental stages. Documentation pending.
|
|
|
|
|
extern const char kRtcpFbParamLntf[];
|
2013-07-10 00:45:36 +00:00
|
|
|
// rtcp-fb messages according to RFC 4585
|
2013-12-05 22:36:21 +00:00
|
|
|
extern const char kRtcpFbParamNack[];
|
2014-01-14 10:00:58 +00:00
|
|
|
extern const char kRtcpFbNackParamPli[];
|
2013-07-10 00:45:36 +00:00
|
|
|
// rtcp-fb messages according to
|
|
|
|
|
// http://tools.ietf.org/html/draft-alvestrand-rmcat-remb-00
|
2013-12-05 22:36:21 +00:00
|
|
|
extern const char kRtcpFbParamRemb[];
|
2015-11-20 18:05:48 -08:00
|
|
|
// rtcp-fb messages according to
|
|
|
|
|
// https://tools.ietf.org/html/draft-holmer-rmcat-transport-wide-cc-extensions-01
|
|
|
|
|
extern const char kRtcpFbParamTransportCc[];
|
2013-07-10 00:45:36 +00:00
|
|
|
// ccm submessages according to RFC 5104
|
2013-12-05 22:36:21 +00:00
|
|
|
extern const char kRtcpFbParamCcm[];
|
|
|
|
|
extern const char kRtcpFbCcmParamFir[];
|
2018-04-04 16:33:49 +02:00
|
|
|
// Receiver reference time report
|
|
|
|
|
// https://tools.ietf.org/html/rfc3611 section 4.4
|
|
|
|
|
extern const char kRtcpFbParamRrtr[];
|
2013-07-10 00:45:36 +00:00
|
|
|
// Google specific parameters
|
2013-12-05 22:36:21 +00:00
|
|
|
extern const char kCodecParamMaxBitrate[];
|
|
|
|
|
extern const char kCodecParamMinBitrate[];
|
2014-05-07 11:15:20 +00:00
|
|
|
extern const char kCodecParamStartBitrate[];
|
2013-12-05 22:36:21 +00:00
|
|
|
extern const char kCodecParamMaxQuantization[];
|
2013-07-10 00:45:36 +00:00
|
|
|
|
|
|
|
|
extern const char kComfortNoiseCodecName[];
|
|
|
|
|
|
2019-04-02 11:33:59 +02:00
|
|
|
RTC_EXPORT extern const char kVp8CodecName[];
|
|
|
|
|
RTC_EXPORT extern const char kVp9CodecName[];
|
2020-03-11 10:45:57 +01:00
|
|
|
RTC_EXPORT extern const char kAv1CodecName[];
|
2018-10-17 16:50:07 +02:00
|
|
|
RTC_EXPORT extern const char kH264CodecName[];
|
2015-04-21 20:24:50 +08:00
|
|
|
|
2016-04-12 10:29:17 -07:00
|
|
|
// RFC 6184 RTP Payload Format for H.264 video
|
2018-10-17 16:50:07 +02:00
|
|
|
RTC_EXPORT extern const char kH264FmtpProfileLevelId[];
|
|
|
|
|
RTC_EXPORT extern const char kH264FmtpLevelAsymmetryAllowed[];
|
|
|
|
|
RTC_EXPORT extern const char kH264FmtpPacketizationMode[];
|
2016-11-25 03:56:37 -08:00
|
|
|
extern const char kH264FmtpSpropParameterSets[];
|
2020-08-07 12:08:14 +03:00
|
|
|
extern const char kH264FmtpSpsPpsIdrInKeyframe[];
|
2016-04-12 10:29:17 -07:00
|
|
|
extern const char kH264ProfileLevelConstrainedBaseline[];
|
2020-07-15 14:29:06 +00:00
|
|
|
extern const char kH264ProfileLevelConstrainedHigh[];
|
2016-04-12 10:29:17 -07:00
|
|
|
|
2015-04-21 20:24:50 +08:00
|
|
|
extern const int kDefaultVideoMaxFramerate;
|
2018-03-14 10:35:35 +01:00
|
|
|
|
|
|
|
|
extern const size_t kConferenceMaxNumSpatialLayers;
|
|
|
|
|
extern const size_t kConferenceMaxNumTemporalLayers;
|
|
|
|
|
extern const size_t kConferenceDefaultNumTemporalLayers;
|
2020-07-27 15:52:02 -07:00
|
|
|
|
|
|
|
|
extern const char kApplicationSpecificBandwidth[];
|
|
|
|
|
extern const char kTransportSpecificBandwidth[];
|
2013-07-10 00:45:36 +00:00
|
|
|
} // namespace cricket
|
|
|
|
|
|
2019-01-11 09:11:00 -08:00
|
|
|
#endif // MEDIA_BASE_MEDIA_CONSTANTS_H_
|