Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(131)

Side by Side Diff: webrtc/modules/audio_coding/acm2/acm_codec_database.cc

Issue 2723253005: Fix cyclic deps: rent_a_codec<->audio_coding and rent_a_codec<->neteq (Closed)
Patch Set: Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 * This file generates databases with information about all supported audio 12 * This file generates databases with information about all supported audio
13 * codecs. 13 * codecs.
14 */ 14 */
15 15
16 // TODO(tlegrand): Change constant input pointers in all functions to constant 16 // TODO(tlegrand): Change constant input pointers in all functions to constant
17 // references, where appropriate. 17 // references, where appropriate.
18 #include "webrtc/modules/audio_coding/acm2/acm_codec_database.h" 18 #include "webrtc/modules/audio_coding/acm2/acm_codec_database.h"
19 19
20 #include <assert.h> 20 #include <assert.h>
21 21
22 #include "webrtc/base/checks.h" 22 #include "webrtc/base/checks.h"
23 #include "webrtc/modules/audio_coding/acm2/acm_common_defs.h"
24 #include "webrtc/system_wrappers/include/trace.h" 23 #include "webrtc/system_wrappers/include/trace.h"
25 24
25 #if ((defined WEBRTC_CODEC_ISAC) && (defined WEBRTC_CODEC_ISACFX))
26 #error iSAC and iSACFX codecs cannot be enabled at the same time
27 #endif
28
26 namespace webrtc { 29 namespace webrtc {
27 30
28 namespace acm2 { 31 namespace acm2 {
29 32
30 namespace { 33 namespace {
31 34
32 // Checks if the bitrate is valid for iSAC. 35 // Checks if the bitrate is valid for iSAC.
33 bool IsISACRateValid(int rate) { 36 bool IsISACRateValid(int rate) {
34 return (rate == -1) || ((rate <= 56000) && (rate >= 10000)); 37 return (rate == -1) || ((rate <= 56000) && (rate >= 10000));
35 } 38 }
(...skipping 17 matching lines...) Expand all
53 } 56 }
54 57
55 } // namespace 58 } // namespace
56 59
57 // Not yet used payload-types. 60 // Not yet used payload-types.
58 // 83, 82, 81, 80, 79, 78, 77, 76, 75, 74, 73, 72, 71, 70, 69, 68, 61 // 83, 82, 81, 80, 79, 78, 77, 76, 75, 74, 73, 72, 71, 70, 69, 68,
59 // 67, 66, 65 62 // 67, 66, 65
60 63
61 const CodecInst ACMCodecDB::database_[] = { 64 const CodecInst ACMCodecDB::database_[] = {
62 #if (defined(WEBRTC_CODEC_ISAC) || defined(WEBRTC_CODEC_ISACFX)) 65 #if (defined(WEBRTC_CODEC_ISAC) || defined(WEBRTC_CODEC_ISACFX))
63 {103, "ISAC", 16000, kIsacPacSize480, 1, kIsacWbDefaultRate}, 66 {103, "ISAC", 16000, 480, 1, 32000},
64 # if (defined(WEBRTC_CODEC_ISAC)) 67 # if (defined(WEBRTC_CODEC_ISAC))
65 {104, "ISAC", 32000, kIsacPacSize960, 1, kIsacSwbDefaultRate}, 68 {104, "ISAC", 32000, 960, 1, 56000},
66 # endif 69 # endif
67 #endif 70 #endif
68 // Mono 71 // Mono
69 {107, "L16", 8000, 80, 1, 128000}, 72 {107, "L16", 8000, 80, 1, 128000},
70 {108, "L16", 16000, 160, 1, 256000}, 73 {108, "L16", 16000, 160, 1, 256000},
71 {109, "L16", 32000, 320, 1, 512000}, 74 {109, "L16", 32000, 320, 1, 512000},
72 // Stereo 75 // Stereo
73 {111, "L16", 8000, 80, 2, 128000}, 76 {111, "L16", 8000, 80, 2, 128000},
74 {112, "L16", 16000, 160, 2, 256000}, 77 {112, "L16", 16000, 160, 2, 256000},
75 {113, "L16", 32000, 320, 2, 512000}, 78 {113, "L16", 32000, 320, 2, 512000},
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
111 // To prevent compile errors due to trailing commas. 114 // To prevent compile errors due to trailing commas.
112 {-1, "Null", -1, -1, 0, -1} 115 {-1, "Null", -1, -1, 0, -1}
113 }; 116 };
114 117
115 // Create database with all codec settings at compile time. 118 // Create database with all codec settings at compile time.
116 // Each entry needs the following parameters in the given order: 119 // Each entry needs the following parameters in the given order:
117 // Number of allowed packet sizes, a vector with the allowed packet sizes, 120 // Number of allowed packet sizes, a vector with the allowed packet sizes,
118 // Basic block samples, max number of channels that are supported. 121 // Basic block samples, max number of channels that are supported.
119 const ACMCodecDB::CodecSettings ACMCodecDB::codec_settings_[] = { 122 const ACMCodecDB::CodecSettings ACMCodecDB::codec_settings_[] = {
120 #if (defined(WEBRTC_CODEC_ISAC) || defined(WEBRTC_CODEC_ISACFX)) 123 #if (defined(WEBRTC_CODEC_ISAC) || defined(WEBRTC_CODEC_ISACFX))
121 {2, {kIsacPacSize480, kIsacPacSize960}, 0, 1}, 124 {2, {480, 960}, 0, 1},
122 # if (defined(WEBRTC_CODEC_ISAC)) 125 # if (defined(WEBRTC_CODEC_ISAC))
123 {1, {kIsacPacSize960}, 0, 1}, 126 {1, {960}, 0, 1},
124 # endif 127 # endif
125 #endif 128 #endif
126 // Mono 129 // Mono
127 {4, {80, 160, 240, 320}, 0, 2}, 130 {4, {80, 160, 240, 320}, 0, 2},
128 {4, {160, 320, 480, 640}, 0, 2}, 131 {4, {160, 320, 480, 640}, 0, 2},
129 {2, {320, 640}, 0, 2}, 132 {2, {320, 640}, 0, 2},
130 // Stereo 133 // Stereo
131 {4, {80, 160, 240, 320}, 0, 2}, 134 {4, {80, 160, 240, 320}, 0, 2},
132 {4, {160, 320, 480, 640}, 0, 2}, 135 {4, {160, 320, 480, 640}, 0, 2},
133 {2, {320, 640}, 0, 2}, 136 {2, {320, 640}, 0, 2},
(...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after
338 } 341 }
339 // Gets codec id number from database for the receiver. 342 // Gets codec id number from database for the receiver.
340 int ACMCodecDB::ReceiverCodecNumber(const CodecInst& codec_inst) { 343 int ACMCodecDB::ReceiverCodecNumber(const CodecInst& codec_inst) {
341 // Look for a matching codec in the database. 344 // Look for a matching codec in the database.
342 return CodecId(codec_inst); 345 return CodecId(codec_inst);
343 } 346 }
344 347
345 } // namespace acm2 348 } // namespace acm2
346 349
347 } // namespace webrtc 350 } // namespace webrtc
OLDNEW
« no previous file with comments | « webrtc/modules/audio_coding/acm2/acm_codec_database.h ('k') | webrtc/modules/audio_coding/acm2/acm_common_defs.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698