Add private voice detection instance to replace public voice detector
This adds a second (!) VoiceDetection instance in APM, activated via webrtc::AudioProcessing::Config and which reports its values in the webrtc::AudioProcessingStats struct. The alternative is to reuse the existing instance, but that would require adding a proxy interface returned by AudioProcessing::voice_detection() to update the internal config of AudioProcessingImpl when calling voice_detection()->Enable(). Complexity-wise, no reasonable client will enable both interfaces simultaneously, so the footprint is negligible. Bug: webrtc:9947 Change-Id: I7d8e28b9bf06abab8f9c6822424bdb9d803b987d Reviewed-on: https://webrtc-review.googlesource.com/c/115243 Commit-Queue: Sam Zackrisson <saza@webrtc.org> Reviewed-by: Ivo Creusen <ivoc@webrtc.org> Cr-Commit-Position: refs/heads/master@{#26101}
This commit is contained in:

committed by
Commit Bot

parent
d0fce0b1ec
commit
4db667be74
@ -181,6 +181,7 @@ class AudioProcessingImpl : public AudioProcessing {
|
||||
bool pre_amplifier_enabled,
|
||||
bool echo_controller_enabled,
|
||||
bool voice_activity_detector_enabled,
|
||||
bool private_voice_detector_enabled,
|
||||
bool level_estimator_enabled,
|
||||
bool transient_suppressor_enabled);
|
||||
bool CaptureMultiBandSubModulesActive() const;
|
||||
@ -207,6 +208,7 @@ class AudioProcessingImpl : public AudioProcessing {
|
||||
bool echo_controller_enabled_ = false;
|
||||
bool level_estimator_enabled_ = false;
|
||||
bool voice_activity_detector_enabled_ = false;
|
||||
bool private_voice_detector_enabled_ = false;
|
||||
bool transient_suppressor_enabled_ = false;
|
||||
bool first_update_ = true;
|
||||
};
|
||||
|
Reference in New Issue
Block a user