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

Side by Side Diff: webrtc/modules/audio_coding/main/acm2/rent_a_codec.cc

Issue 1419013005: Hide ACMCodecDB::codec_settings_ behind an accessor (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: ICanHasNumChannels? Created 5 years, 1 month 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) 2015 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2015 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
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
43 // will be the same value as in default codec settings, but not for all. 43 // will be the same value as in default codec settings, but not for all.
44 ci->channels = channels; 44 ci->channels = channels;
45 45
46 return ci; 46 return ci;
47 } 47 }
48 48
49 bool RentACodec::IsCodecValid(const CodecInst& codec_inst) { 49 bool RentACodec::IsCodecValid(const CodecInst& codec_inst) {
50 return ACMCodecDB::CodecNumber(codec_inst) >= 0; 50 return ACMCodecDB::CodecNumber(codec_inst) >= 0;
51 } 51 }
52 52
53 rtc::Maybe<bool> RentACodec::IsSupportedNumChannels(CodecId codec_id,
54 int num_channels) {
55 auto i = CodecIndexFromId(codec_id);
56 return i ? rtc::Maybe<bool>(ACMCodecDB::codec_settings_[*i].channel_support >=
57 num_channels)
58 : rtc::Maybe<bool>();
59 }
60
53 rtc::ArrayView<const CodecInst> RentACodec::Database() { 61 rtc::ArrayView<const CodecInst> RentACodec::Database() {
54 return rtc::ArrayView<const CodecInst>(ACMCodecDB::database_, 62 return rtc::ArrayView<const CodecInst>(ACMCodecDB::database_,
55 NumberOfCodecs()); 63 NumberOfCodecs());
56 } 64 }
57 65
58 rtc::Maybe<NetEqDecoder> RentACodec::NetEqDecoderFromCodecId(CodecId codec_id, 66 rtc::Maybe<NetEqDecoder> RentACodec::NetEqDecoderFromCodecId(CodecId codec_id,
59 int num_channels) { 67 int num_channels) {
60 rtc::Maybe<int> i = CodecIndexFromId(codec_id); 68 rtc::Maybe<int> i = CodecIndexFromId(codec_id);
61 if (!i) 69 if (!i)
62 return rtc::Maybe<NetEqDecoder>(); 70 return rtc::Maybe<NetEqDecoder>();
63 const NetEqDecoder ned = ACMCodecDB::neteq_decoders_[*i]; 71 const NetEqDecoder ned = ACMCodecDB::neteq_decoders_[*i];
64 return rtc::Maybe<NetEqDecoder>( 72 return rtc::Maybe<NetEqDecoder>(
65 (ned == NetEqDecoder::kDecoderOpus && num_channels == 2) 73 (ned == NetEqDecoder::kDecoderOpus && num_channels == 2)
66 ? NetEqDecoder::kDecoderOpus_2ch 74 ? NetEqDecoder::kDecoderOpus_2ch
67 : ned); 75 : ned);
68 } 76 }
69 77
70 } // namespace acm2 78 } // namespace acm2
71 } // namespace webrtc 79 } // namespace webrtc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698