OLD | NEW |
---|---|
1 /* | 1 /* |
2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
11 // TODO(pbos): Move Config from common.h to here. | 11 // TODO(pbos): Move Config from common.h to here. |
12 | 12 |
13 #ifndef WEBRTC_CONFIG_H_ | 13 #ifndef WEBRTC_CONFIG_H_ |
14 #define WEBRTC_CONFIG_H_ | 14 #define WEBRTC_CONFIG_H_ |
15 | 15 |
16 #include <string> | 16 #include <string> |
17 #include <vector> | 17 #include <vector> |
18 | 18 |
19 #include "webrtc/base/optional.h" | |
19 #include "webrtc/common.h" | 20 #include "webrtc/common.h" |
20 #include "webrtc/common_types.h" | 21 #include "webrtc/common_types.h" |
21 #include "webrtc/typedefs.h" | 22 #include "webrtc/typedefs.h" |
22 | 23 |
23 namespace webrtc { | 24 namespace webrtc { |
24 | 25 |
25 // Settings for NACK, see RFC 4585 for details. | 26 // Settings for NACK, see RFC 4585 for details. |
26 struct NackConfig { | 27 struct NackConfig { |
27 NackConfig() : rtp_history_ms(0) {} | 28 NackConfig() : rtp_history_ms(0) {} |
28 std::string ToString() const; | 29 std::string ToString() const; |
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
139 void* encoder_specific_settings; | 140 void* encoder_specific_settings; |
140 | 141 |
141 // Padding will be used up to this bitrate regardless of the bitrate produced | 142 // Padding will be used up to this bitrate regardless of the bitrate produced |
142 // by the encoder. Padding above what's actually produced by the encoder helps | 143 // by the encoder. Padding above what's actually produced by the encoder helps |
143 // maintaining a higher bitrate estimate. Padding will however not be sent | 144 // maintaining a higher bitrate estimate. Padding will however not be sent |
144 // unless the estimated bandwidth indicates that the link can handle it. | 145 // unless the estimated bandwidth indicates that the link can handle it. |
145 int min_transmit_bitrate_bps; | 146 int min_transmit_bitrate_bps; |
146 bool expect_encode_from_texture; | 147 bool expect_encode_from_texture; |
147 }; | 148 }; |
148 | 149 |
150 struct VideoDecoderH264extraSettings { | |
stefan-webrtc
2016/08/01 10:58:09
H264Extra
Is it necessary to even mention "Extra"
johan
2016/08/01 12:08:04
You have a point. ;-)
| |
151 std::string spropParameterSets; | |
stefan-webrtc
2016/08/01 10:58:09
no camel case style
johan
2016/08/01 12:08:04
Done.
| |
152 }; | |
153 | |
154 class DecoderSpecificSettings { | |
155 public: | |
156 virtual ~DecoderSpecificSettings() {} | |
157 rtc::Optional<VideoDecoderH264extraSettings> h264_extra_settings; | |
158 // vp8_extra_settings, and vp9_extra_settings will be added when required | |
stefan-webrtc
2016/08/01 10:58:09
remove this comment
johan
2016/08/01 12:08:04
Done.
| |
159 }; | |
160 | |
149 // Controls the capacity of the packet buffer in NetEq. The capacity is the | 161 // Controls the capacity of the packet buffer in NetEq. The capacity is the |
150 // maximum number of packets that the buffer can contain. If the limit is | 162 // maximum number of packets that the buffer can contain. If the limit is |
151 // exceeded, the buffer will be flushed. The capacity does not affect the actual | 163 // exceeded, the buffer will be flushed. The capacity does not affect the actual |
152 // audio delay in the general case, since this is governed by the target buffer | 164 // audio delay in the general case, since this is governed by the target buffer |
153 // level (calculated from the jitter profile). It is only in the rare case of | 165 // level (calculated from the jitter profile). It is only in the rare case of |
154 // severe network freezes that a higher capacity will lead to a (transient) | 166 // severe network freezes that a higher capacity will lead to a (transient) |
155 // increase in audio delay. | 167 // increase in audio delay. |
156 struct NetEqCapacityConfig { | 168 struct NetEqCapacityConfig { |
157 NetEqCapacityConfig() : enabled(false), capacity(0) {} | 169 NetEqCapacityConfig() : enabled(false), capacity(0) {} |
158 explicit NetEqCapacityConfig(int value) : enabled(true), capacity(value) {} | 170 explicit NetEqCapacityConfig(int value) : enabled(true), capacity(value) {} |
(...skipping 12 matching lines...) Expand all Loading... | |
171 struct VoicePacing { | 183 struct VoicePacing { |
172 VoicePacing() : enabled(false) {} | 184 VoicePacing() : enabled(false) {} |
173 explicit VoicePacing(bool value) : enabled(value) {} | 185 explicit VoicePacing(bool value) : enabled(value) {} |
174 static const ConfigOptionID identifier = ConfigOptionID::kVoicePacing; | 186 static const ConfigOptionID identifier = ConfigOptionID::kVoicePacing; |
175 bool enabled; | 187 bool enabled; |
176 }; | 188 }; |
177 | 189 |
178 } // namespace webrtc | 190 } // namespace webrtc |
179 | 191 |
180 #endif // WEBRTC_CONFIG_H_ | 192 #endif // WEBRTC_CONFIG_H_ |
OLD | NEW |