Add 48kHz support to AGC

Doing the same for the 16-24kHz band than was done in the 8-16kHz.
Results look and sound as nice.

Originally reviewed here:
https://webrtc-codereview.appspot.com/26339004/

BUG=webrtc:3146
R=andrew@webrtc.org, kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7917 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
aluebs@webrtc.org
2014-12-16 20:56:09 +00:00
parent 2510d11c0f
commit cf6d0b64ef
5 changed files with 93 additions and 142 deletions

View File

@ -90,8 +90,8 @@ int GainControlImpl::AnalyzeCaptureAudio(AudioBuffer* audio) {
Handle* my_handle = static_cast<Handle*>(handle(i));
err = WebRtcAgc_AddMic(
my_handle,
audio->split_bands(i)[kBand0To8kHz],
audio->split_bands(i)[kBand8To16kHz],
audio->split_bands(i),
audio->num_bands(),
static_cast<int16_t>(audio->samples_per_split_channel()));
if (err != apm_->kNoError) {
@ -106,8 +106,8 @@ int GainControlImpl::AnalyzeCaptureAudio(AudioBuffer* audio) {
err = WebRtcAgc_VirtualMic(
my_handle,
audio->split_bands(i)[kBand0To8kHz],
audio->split_bands(i)[kBand8To16kHz],
audio->split_bands(i),
audio->num_bands(),
static_cast<int16_t>(audio->samples_per_split_channel()),
analog_capture_level_,
&capture_level_out);
@ -144,11 +144,10 @@ int GainControlImpl::ProcessCaptureAudio(AudioBuffer* audio) {
int err = WebRtcAgc_Process(
my_handle,
audio->split_bands_const(i)[kBand0To8kHz],
audio->split_bands_const(i)[kBand8To16kHz],
audio->split_bands_const(i),
audio->num_bands(),
static_cast<int16_t>(audio->samples_per_split_channel()),
audio->split_bands(i)[kBand0To8kHz],
audio->split_bands(i)[kBand8To16kHz],
audio->split_bands(i),
capture_levels_[i],
&capture_level_out,
apm_->echo_cancellation()->stream_has_echo(),