Add Analyze API to NS
This adds an empty API. In a next CL I will separate the noise estimation from the Process API and fill this function. BUG=webrtc:3811 R=bjornv@webrtc.org Review URL: https://webrtc-codereview.appspot.com/23599004 git-svn-id: http://webrtc.googlecode.com/svn/trunk@7218 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
@ -55,6 +55,27 @@ NoiseSuppressionImpl::NoiseSuppressionImpl(const AudioProcessing* apm,
|
||||
|
||||
NoiseSuppressionImpl::~NoiseSuppressionImpl() {}
|
||||
|
||||
int NoiseSuppressionImpl::AnalyzeCaptureAudio(AudioBuffer* audio) {
|
||||
#if defined(WEBRTC_NS_FLOAT)
|
||||
if (!is_component_enabled()) {
|
||||
return apm_->kNoError;
|
||||
}
|
||||
assert(audio->samples_per_split_channel() <= 160);
|
||||
assert(audio->num_channels() == num_handles());
|
||||
|
||||
for (int i = 0; i < num_handles(); ++i) {
|
||||
Handle* my_handle = static_cast<Handle*>(handle(i));
|
||||
|
||||
int err = WebRtcNs_Analyze(my_handle,
|
||||
audio->low_pass_split_data_f(i));
|
||||
if (err != apm_->kNoError) {
|
||||
return GetHandleError(my_handle);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
return apm_->kNoError;
|
||||
}
|
||||
|
||||
int NoiseSuppressionImpl::ProcessCaptureAudio(AudioBuffer* audio) {
|
||||
int err = apm_->kNoError;
|
||||
|
||||
@ -64,16 +85,16 @@ int NoiseSuppressionImpl::ProcessCaptureAudio(AudioBuffer* audio) {
|
||||
assert(audio->samples_per_split_channel() <= 160);
|
||||
assert(audio->num_channels() == num_handles());
|
||||
|
||||
for (int i = 0; i < num_handles(); i++) {
|
||||
for (int i = 0; i < num_handles(); ++i) {
|
||||
Handle* my_handle = static_cast<Handle*>(handle(i));
|
||||
#if defined(WEBRTC_NS_FLOAT)
|
||||
err = WebRtcNs_Process(static_cast<Handle*>(handle(i)),
|
||||
err = WebRtcNs_Process(my_handle,
|
||||
audio->low_pass_split_data_f(i),
|
||||
audio->high_pass_split_data_f(i),
|
||||
audio->low_pass_split_data_f(i),
|
||||
audio->high_pass_split_data_f(i));
|
||||
#elif defined(WEBRTC_NS_FIXED)
|
||||
err = WebRtcNsx_Process(static_cast<Handle*>(handle(i)),
|
||||
err = WebRtcNsx_Process(my_handle,
|
||||
audio->low_pass_split_data(i),
|
||||
audio->high_pass_split_data(i),
|
||||
audio->low_pass_split_data(i),
|
||||
|
||||
Reference in New Issue
Block a user