Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Move MediaStreamAudioProcessor processing code to new class in media/
This moves the bulk of the implementation of MediaStreamAudioProcessor - the audio processing - to a separate class media::AudioProcessor in the media component. MediaStreamAudioProcessor is essentially reduced to managing renderer-specific data and control flow for the audio processor: - aec dump interface toward browser - stats interface toward WebRTC - playout data sink towards WebRTC audio source ... as well as enforcing renderer-specific threading expectations. This CL widens the distance between MediaStreamAudioProcessor::WouldModifyAudio() and the logic (AudioProcessor::InitializeAudioProcessingModule()). Tests are added to enforce that the functions agree. Notes for reviewing in Gerrit: - audio_processor.* is branched from media_stream_audio_processor.* - diff vs patch set 1 to get a clean diffbase - audio_processor_test.cc is branched from media_stream_audio_processor_test.cc - diff vs patch set 6 to get a clean diffbase Tested: Made WebRTC call with a release build (+dchecks), and checked 1) audio experience 2) logs 3) echo cancellation 4) contents of diagnostic audio recordings (wav+aecdump) Bug: chromium:1215061 Change-Id: I6c49bc71d2b1441b27199a137cb8a3204c6566b1 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3269221 Reviewed-by: Olga Sharonova <olka@chromium.org> Reviewed-by: Henrik Boström <hbos@chromium.org> Commit-Queue: Sam Zackrisson <saza@chromium.org> Cr-Commit-Position: refs/heads/main@{#949987}
- Loading branch information