OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2012 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 /* | 11 /* |
12 * structs.h | 12 * structs.h |
13 * | 13 * |
14 * This header file contains all the structs used in the ISAC codec | 14 * This header file contains all the structs used in the ISAC codec |
15 * | 15 * |
16 */ | 16 */ |
17 | 17 |
18 #ifndef WEBRTC_MODULES_AUDIO_CODING_CODECS_ISAC_MAIN_SOURCE_STRUCTS_H_ | 18 #ifndef WEBRTC_MODULES_AUDIO_CODING_CODECS_ISAC_MAIN_SOURCE_STRUCTS_H_ |
19 #define WEBRTC_MODULES_AUDIO_CODING_CODECS_ISAC_MAIN_SOURCE_STRUCTS_H_ | 19 #define WEBRTC_MODULES_AUDIO_CODING_CODECS_ISAC_MAIN_SOURCE_STRUCTS_H_ |
20 | 20 |
| 21 #include "webrtc/modules/audio_coding/codecs/isac/bandwidth_info.h" |
21 #include "webrtc/modules/audio_coding/codecs/isac/main/interface/isac.h" | 22 #include "webrtc/modules/audio_coding/codecs/isac/main/interface/isac.h" |
22 #include "webrtc/modules/audio_coding/codecs/isac/main/source/settings.h" | 23 #include "webrtc/modules/audio_coding/codecs/isac/main/source/settings.h" |
23 #include "webrtc/typedefs.h" | 24 #include "webrtc/typedefs.h" |
24 | 25 |
25 typedef struct Bitstreamstruct { | 26 typedef struct Bitstreamstruct { |
26 | 27 |
27 uint8_t stream[STREAM_SIZE_MAX]; | 28 uint8_t stream[STREAM_SIZE_MAX]; |
28 uint32_t W_upper; | 29 uint32_t W_upper; |
29 uint32_t streamval; | 30 uint32_t streamval; |
30 uint32_t stream_index; | 31 uint32_t stream_index; |
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
216 int in_wait_period; | 217 int in_wait_period; |
217 | 218 |
218 int change_to_WB; | 219 int change_to_WB; |
219 | 220 |
220 uint32_t senderTimestamp; | 221 uint32_t senderTimestamp; |
221 uint32_t receiverTimestamp; | 222 uint32_t receiverTimestamp; |
222 //enum IsacSamplingRate incomingStreamSampFreq; | 223 //enum IsacSamplingRate incomingStreamSampFreq; |
223 uint16_t numConsecLatePkts; | 224 uint16_t numConsecLatePkts; |
224 float consecLatency; | 225 float consecLatency; |
225 int16_t inWaitLatePkts; | 226 int16_t inWaitLatePkts; |
| 227 |
| 228 IsacBandwidthInfo external_bw_info; |
226 } BwEstimatorstr; | 229 } BwEstimatorstr; |
227 | 230 |
228 | 231 |
229 typedef struct { | 232 typedef struct { |
230 | 233 |
231 /* boolean, flags if previous packet exceeded B.N. */ | 234 /* boolean, flags if previous packet exceeded B.N. */ |
232 int PrevExceed; | 235 int PrevExceed; |
233 /* ms */ | 236 /* ms */ |
234 int ExceedAgo; | 237 int ExceedAgo; |
235 /* packets left to send in current burst */ | 238 /* packets left to send in current burst */ |
(...skipping 250 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
486 * Input signals at 48 kHz are resampled to 32 kHz, then encoded. */ | 489 * Input signals at 48 kHz are resampled to 32 kHz, then encoded. */ |
487 uint16_t in_sample_rate_hz; | 490 uint16_t in_sample_rate_hz; |
488 /* State for the input-resampler. It is only used for 48 kHz input signals. */ | 491 /* State for the input-resampler. It is only used for 48 kHz input signals. */ |
489 int16_t state_in_resampler[SIZE_RESAMPLER_STATE]; | 492 int16_t state_in_resampler[SIZE_RESAMPLER_STATE]; |
490 | 493 |
491 // Trig tables for WebRtcIsac_Time2Spec and WebRtcIsac_Spec2time. | 494 // Trig tables for WebRtcIsac_Time2Spec and WebRtcIsac_Spec2time. |
492 TransformTables transform_tables; | 495 TransformTables transform_tables; |
493 } ISACMainStruct; | 496 } ISACMainStruct; |
494 | 497 |
495 #endif /* WEBRTC_MODULES_AUDIO_CODING_CODECS_ISAC_MAIN_SOURCE_STRUCTS_H_ */ | 498 #endif /* WEBRTC_MODULES_AUDIO_CODING_CODECS_ISAC_MAIN_SOURCE_STRUCTS_H_ */ |
OLD | NEW |