Adding a config struct to NetEq

With this change, the parameters sent to the NetEq::Create method are
collected in one NetEq::Config struct. The benefit is that it is easier
to set, change and override default values, and easier to expand with
more parameters in the future.

BUG=3083
R=turaj@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/11949004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5902 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
henrik.lundin@webrtc.org
2014-04-14 18:49:17 +00:00
parent 810acbc93e
commit 35ead381f8
11 changed files with 52 additions and 27 deletions

View File

@@ -35,7 +35,6 @@ namespace acm2 {
namespace {
const int kNeteqInitSampleRateHz = 16000;
const int kNackThresholdPackets = 2;
// |vad_activity_| field of |audio_frame| is set to |previous_audio_activity_|
@@ -119,13 +118,14 @@ bool IsCng(int codec_id) {
AcmReceiver::AcmReceiver()
: id_(0),
neteq_(NetEq::Create(kNeteqInitSampleRateHz)),
neteq_config_(),
neteq_(NetEq::Create(neteq_config_)),
last_audio_decoder_(-1), // Invalid value.
decode_lock_(RWLockWrapper::CreateRWLock()),
neteq_crit_sect_(CriticalSectionWrapper::CreateCriticalSection()),
vad_enabled_(true),
previous_audio_activity_(AudioFrame::kVadPassive),
current_sample_rate_hz_(kNeteqInitSampleRateHz),
current_sample_rate_hz_(neteq_config_.sample_rate_hz),
nack_(),
nack_enabled_(false),
av_sync_(false),
@@ -774,7 +774,7 @@ bool AcmReceiver::GetSilence(int desired_sample_rate_hz, AudioFrame* frame) {
current_sample_rate_hz_ = ACMCodecDB::database_[last_audio_decoder_].plfreq;
frame->num_channels_ = decoders_[last_audio_decoder_].channels;
} else {
current_sample_rate_hz_ = kNeteqInitSampleRateHz;
current_sample_rate_hz_ = neteq_config_.sample_rate_hz;
frame->num_channels_ = 1;
}

View File

@@ -340,6 +340,7 @@ class AcmReceiver {
void InsertStreamOfSyncPackets(InitialDelayManager::SyncStream* sync_stream);
int id_;
NetEq::Config neteq_config_;
NetEq* neteq_;
Decoder decoders_[ACMCodecDB::kMaxNumCodecs];
int last_audio_decoder_;