New issue
Advanced search Search tips

Issue 909007 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Nov 29
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , iOS , Chrome , Mac
Pri: 1
Type: Bug



Sign in to add a comment

AEC3: FilterAnalyzer taking excessive resources

Project Member Reported by peah@chromium.org, Nov 27

Issue description

It has been observed that the analysis of the impulse response of the linear filter is taking a considerable amount of CPU resources. Optimization of this module might be possible without compromising its performance. 

 
Project Member

Comment 1 by bugdroid1@chromium.org, Nov 28

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/cf69d2209bc9dfc04a6487a5c1ce5ab0f06a4870

commit cf69d2209bc9dfc04a6487a5c1ce5ab0f06a4870
Author: Jesús de Vicente Peña <devicentepena@webrtc.org>
Date: Wed Nov 28 09:01:07 2018

AEC3: Optimizing the Update method of the FilterAnalyzer class.

In this CL the analysis of the impulse response that is done in the FilterAnalyzed class is changed in order to reduce its complexity. Instead of analyzing the whole impulse response in each Update call a smaller region is analyzed. That region is changed at each Update call which implies that several calls are needed in order to analyze the complete impulse response.

Bug:  webrtc:10032 , chromium:909007 
Change-Id: Ic58be34ba18485311c63e0fed9b6e892f9cb864c
Reviewed-on: https://webrtc-review.googlesource.com/c/111602
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Commit-Queue: Jesus de Vicente Pena <devicentepena@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25817}
[modify] https://crrev.com/cf69d2209bc9dfc04a6487a5c1ce5ab0f06a4870/modules/audio_processing/aec3/aec_state.cc
[modify] https://crrev.com/cf69d2209bc9dfc04a6487a5c1ce5ab0f06a4870/modules/audio_processing/aec3/filter_analyzer.cc
[modify] https://crrev.com/cf69d2209bc9dfc04a6487a5c1ce5ab0f06a4870/modules/audio_processing/aec3/filter_analyzer.h

Status: Fixed (was: Started)
Project Member

Comment 3 by bugdroid1@chromium.org, Dec 1

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ca3373ac103debda640179f6c2c602a53528b009

commit ca3373ac103debda640179f6c2c602a53528b009
Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Date: Sat Dec 01 18:37:02 2018

Roll src/third_party/webrtc 0d007d7c4f11..0cc11b4b947e (10 commits)

https://webrtc.googlesource.com/src.git/+log/0d007d7c4f11..0cc11b4b947e


git log 0d007d7c4f11..0cc11b4b947e --date=short --no-merges --format='%ad %ae %s'
2018-11-28 magjed@webrtc.org Android: Bump stack trace logging severity from debug to warning
2018-11-28 yura.yaroshevich@gmail.com Added user-defined predicate to filter video codec implementations.
2018-11-28 chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com Roll chromium_revision 82a8b043ef..28d6168850 (611537:611644)
2018-11-28 gustaf@webrtc.org AEC3: Fix ENR in the dominant nearend detection
2018-11-28 devicentepena@webrtc.org AEC3: Optimizing the Update method of the FilterAnalyzer class.
2018-11-28 aegolden@google.com Don't clear self.videoFrame when setting up OpenGL in the EAGL video view.
2018-11-28 artit@webrtc.org Fix webrtc-internal ios json config
2018-11-28 robin@opticaltone.com Adding WinUWP compilation support to WebRTC.
2018-11-28 chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com Roll chromium_revision b04e513f82..82a8b043ef (611432:611537)
2018-11-28 zstein@webrtc.org Reland "Delay call to Destroy until after SignalDone has finished firing."


Created with:
  gclient setdep -r src/third_party/webrtc@0cc11b4b947e

The AutoRoll server is located here: https://autoroll.skia.org/r/webrtc-chromium-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux_chromium_archive_rel_ng;luci.chromium.try:mac_chromium_archive_rel_ng

BUG=chromium:None,chromium:None,chromium:909007,chromium:None,chromium:905542
TBR=webrtc-chromium-sheriffs-robots@google.com

Change-Id: I98fcd8196b69f3530655fee12d869c96a26c618e
Reviewed-on: https://chromium-review.googlesource.com/c/1357744
Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#612929}
[modify] https://crrev.com/ca3373ac103debda640179f6c2c602a53528b009/DEPS

Labels: Merge-Request-72
We would like merge this CL to M72. It barely missed the M72 cut (landed before the time of the cut though) and addresses an important complexity reduction.
Project Member

Comment 5 by sheriffbot@chromium.org, Dec 3

Labels: -Merge-Request-72 Merge-Review-72 Hotlist-Merge-Review
This bug requires manual review: DEPS changes referenced in bugdroid comments.
Please contact the milestone owner if you have questions.
Owners: govind@(Android), kariahda@(iOS), djmm@(ChromeOS), abdulsyed@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Labels: -Merge-Review-72 Merge-Approved-72
Approving merge to M72 branch 3626, pls merge ASAP. Thank you.
Pls merge your change to M72 branch 3626 ASAP so we can pick it up for tomororw's dev release. Thank you.
Labels: M-72
Labels: Merge-Merged
The merge is ready.
The merging CL was
-https://webrtc-review.googlesource.com/c/src/+/113141
Labels: -Merge-Approved-72 Merge-merged-72

Sign in to add a comment