Correction of AEC activation in the CRAS APM code

This CL corrects the AEC activation in the CRAS APM code for the case when no AEC ini file is available.
What it does is that it removes the setting of an echo canceller factory that implicitly activates the AEC, which in turn allows subsequent toggling of the AEC effect (e.g., when a DSP-based AEC is used) to properly override the AEC effect.

BUG=b:226344713
TEST=Manually tested

Change-Id: I719cf11d2d65ab94ff32a7e9933b6ca049552206
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/webrtc-apm/+/3545350
Auto-Submit: Per Åhgren <peah@chromium.org>
Reviewed-by: Hsinyu Chao <hychao@chromium.org>
Tested-by: Per Åhgren <peah@chromium.org>
Commit-Queue: Curtis Malainey <cujomalainey@chromium.org>
(cherry picked from commit 9218a1d3e20a2f402443a89e21d3533f202b122f)
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/webrtc-apm/+/3602929
Reviewed-by: Per Åhgren <peah@chromium.org>
Commit-Queue: Per Åhgren <peah@chromium.org>
1 file changed
tree: 2c20d0342233157e6931b87466a47c996acae285
  1. absl/
  2. api/
  3. audio/
  4. common_audio/
  5. cras-config/
  6. modules/
  7. rtc_base/
  8. script/
  9. system_wrappers/
  10. third_party/
  11. bak.h
  12. common.mk
  13. common_types.h
  14. libwebrtc_apm.pc.template
  15. Makefile
  16. OWNERS
  17. pc_utils.mk
  18. README.md
  19. typedefs.h
  20. webrtc_apm.cc
  21. webrtc_apm.h
README.md

WebRTC APM

APM is the audio processing module of WebRTC project in charge of effects like echo cancellation, noise suppression, etc. The purpose of this project is to build a standalone library for Chrome OS system side audio processing.

Files content

  • scripts to copy over folders and files from upstream WebRTC project for APM and its dependencies.
  • Copied files from upstream WebRTC project. For example: common_audio, modules, rtc_base and system_wrappers.
  • webrtc_apm.cc/h C wrappers to access APM functions.
  • common-mk based makefiles to build shared library libwebrtc_apm.so

Update

To update this package to latest upstream WebRC:

  • Run ./script/sync-apm.sh path/to/webrtc-checkout/src .
  • emerge webrtc-apm to see if anything breaks.
  • If emerge success, then we're good.
  • Otherwise look into the emerge failure, and then possibly:
    • Update sync-apm.sh to copy more files if upstream directory structure changes.
    • Update makefiles if upstream build files has changed.
    • Update webrtc-apm ebuild file if dependencies changed.
  • Create a new commit