| Index: webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.h
|
| diff --git a/webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.h b/webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.h
|
| index 8125707f120981c40817152a80bcbea43f2e3006..846c38dd18ed476f5debcce7d44c2e8bf07dabbb 100644
|
| --- a/webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.h
|
| +++ b/webrtc/modules/audio_processing/intelligibility/intelligibility_enhancer.h
|
| @@ -83,6 +83,8 @@ class IntelligibilityEnhancer {
|
| AudioSource source_;
|
| };
|
| friend class TransformCallback;
|
| + FRIEND_TEST_ALL_PREFIXES(IntelligibilityEnhancerTest, TestErbCreation);
|
| + FRIEND_TEST_ALL_PREFIXES(IntelligibilityEnhancerTest, TestSolveForGains);
|
|
|
| // Sends streams to ProcessClearBlock or ProcessNoiseBlock based on source.
|
| void DispatchAudio(AudioSource source,
|
| @@ -97,6 +99,12 @@ class IntelligibilityEnhancer {
|
| // Computes and sets modified gains.
|
| void AnalyzeClearBlock(float power_target);
|
|
|
| + // Bisection search for optimal |lambda|.
|
| + void SolveForLambda(float power_target, float power_bot, float power_top);
|
| +
|
| + // Transforms freq gains to ERB gains.
|
| + void UpdateErbGains();
|
| +
|
| // Updates variance calculation for noise input with |in_block|.
|
| void ProcessNoiseBlock(const std::complex<float>* in_block,
|
| std::complex<float>* out_block);
|
| @@ -118,16 +126,6 @@ class IntelligibilityEnhancer {
|
| // Returns dot product of vectors specified by size |length| arrays |a|,|b|.
|
| static float DotProduct(const float* a, const float* b, int length);
|
|
|
| - static const int kErbResolution;
|
| - static const int kWindowSizeMs;
|
| - static const int kChunkSizeMs;
|
| - static const int kAnalyzeRate; // Default for |analysis_rate_|.
|
| - static const int kVarianceRate; // Default for |variance_rate_|.
|
| - static const float kClipFreq;
|
| - static const float kConfigRho; // Default production and interpretation SNR.
|
| - static const float kKbdAlpha;
|
| - static const float kGainChangeLimit;
|
| -
|
| const int freqs_; // Num frequencies in frequency domain.
|
| const int window_size_; // Window size in samples; also the block size.
|
| const int chunk_length_; // Chunk size in samples.
|
|
|