New issue
Advanced search Search tips

Issue 805815 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Feb 2018
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Chrome , Mac
Pri: 1
Type: Bug



Sign in to add a comment

The new fast delay AEC3 alignment may trigger a reset cycle

Project Member Reported by peah@chromium.org, Jan 25 2018

Issue description

The new fast delay alignment that was introduced in AEC3 may
trigger a reset cycle as inaccurate estimates during the coarser initial phase may cause delay estimation resets. That in turn forces the estimator back into the initial phase.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Jan 25 2018

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

commit a76ef9d0b4d0ce1c14dc8eb3edfa245c9a5e9410
Author: Per Åhgren <peah@webrtc.org>
Date: Thu Jan 25 09:57:31 2018

Robustify the faster alignment in AEC3 to avoid resets

The faster AEC3 alignment introduced recently may in
cases cause the alignment (and the AEC3) to repeatedly
reset. This CL avoids these resets by handling buffer
issues (which are triggering the resets) separately
during the initial coarse alignment phase.



Change-Id: Idf5e2ffda2591906da8060d03ec8ca73cdaedf53
Bug:  webrtc:8798 , chromium:805815 
Reviewed-on: https://webrtc-review.googlesource.com/43480
Commit-Queue: Per Åhgren <peah@webrtc.org>
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#21758}
[modify] https://crrev.com/a76ef9d0b4d0ce1c14dc8eb3edfa245c9a5e9410/modules/audio_processing/BUILD.gn
[modify] https://crrev.com/a76ef9d0b4d0ce1c14dc8eb3edfa245c9a5e9410/modules/audio_processing/aec3/block_processor.cc
[modify] https://crrev.com/a76ef9d0b4d0ce1c14dc8eb3edfa245c9a5e9410/modules/audio_processing/aec3/block_processor_unittest.cc
[add] https://crrev.com/a76ef9d0b4d0ce1c14dc8eb3edfa245c9a5e9410/modules/audio_processing/aec3/delay_estimate.h
[modify] https://crrev.com/a76ef9d0b4d0ce1c14dc8eb3edfa245c9a5e9410/modules/audio_processing/aec3/echo_path_delay_estimator.cc
[modify] https://crrev.com/a76ef9d0b4d0ce1c14dc8eb3edfa245c9a5e9410/modules/audio_processing/aec3/echo_path_delay_estimator.h
[modify] https://crrev.com/a76ef9d0b4d0ce1c14dc8eb3edfa245c9a5e9410/modules/audio_processing/aec3/echo_path_delay_estimator_unittest.cc
[modify] https://crrev.com/a76ef9d0b4d0ce1c14dc8eb3edfa245c9a5e9410/modules/audio_processing/aec3/matched_filter_lag_aggregator.cc
[modify] https://crrev.com/a76ef9d0b4d0ce1c14dc8eb3edfa245c9a5e9410/modules/audio_processing/aec3/matched_filter_lag_aggregator.h
[modify] https://crrev.com/a76ef9d0b4d0ce1c14dc8eb3edfa245c9a5e9410/modules/audio_processing/aec3/matched_filter_lag_aggregator_unittest.cc
[modify] https://crrev.com/a76ef9d0b4d0ce1c14dc8eb3edfa245c9a5e9410/modules/audio_processing/aec3/mock/mock_render_delay_buffer.h
[modify] https://crrev.com/a76ef9d0b4d0ce1c14dc8eb3edfa245c9a5e9410/modules/audio_processing/aec3/mock/mock_render_delay_controller.h
[modify] https://crrev.com/a76ef9d0b4d0ce1c14dc8eb3edfa245c9a5e9410/modules/audio_processing/aec3/render_delay_buffer.cc
[modify] https://crrev.com/a76ef9d0b4d0ce1c14dc8eb3edfa245c9a5e9410/modules/audio_processing/aec3/render_delay_buffer.h
[modify] https://crrev.com/a76ef9d0b4d0ce1c14dc8eb3edfa245c9a5e9410/modules/audio_processing/aec3/render_delay_controller.cc
[modify] https://crrev.com/a76ef9d0b4d0ce1c14dc8eb3edfa245c9a5e9410/modules/audio_processing/aec3/render_delay_controller.h
[modify] https://crrev.com/a76ef9d0b4d0ce1c14dc8eb3edfa245c9a5e9410/modules/audio_processing/aec3/render_delay_controller_unittest.cc

Comment 2 by peah@chromium.org, Feb 6 2018

Labels: -Pri-2 Merge-Request-65 Pri-1
Project Member

Comment 3 by sheriffbot@chromium.org, Feb 7 2018

Labels: -Merge-Request-65 Hotlist-Merge-Approved Merge-Approved-65
Your change meets the bar and is auto-approved for M65. Please go ahead and merge the CL to branch 3325 manually. Please contact milestone owner if you have questions.
Owners: cmasso@(Android), cmasso@(iOS), bhthompson@(ChromeOS), govind@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Pls merge your change to M65 branch 3325 ASAP so we can pick it up for next M65 Beta release. Thank you.
Project Member

Comment 5 by bugdroid1@chromium.org, Feb 7 2018

Labels: merge-merged-65
The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/c02f9f90c9fa04e9cc1e3c7baddd30f1848e0c4e

commit c02f9f90c9fa04e9cc1e3c7baddd30f1848e0c4e
Author: Per Åhgren <peah@webrtc.org>
Date: Wed Feb 07 19:40:11 2018

Merge to M65: Robustify the faster alignment in AEC3 to avoid resets

The faster AEC3 alignment introduced recently may in
cases cause the alignment (and the AEC3) to repeatedly
reset. This CL avoids these resets by handling buffer
issues (which are triggering the resets) separately
during the initial coarse alignment phase.


TBR=henrik.lundin@webrtc.org,gustaf@webrtc.org
(cherry picked from commit a76ef9d0b4d0ce1c14dc8eb3edfa245c9a5e9410)

Change-Id: Idf5e2ffda2591906da8060d03ec8ca73cdaedf53
Bug:  webrtc:8798 , chromium:805815 
Reviewed-on: https://webrtc-review.googlesource.com/43480
Commit-Queue: Per Åhgren <peah@webrtc.org>
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Original-Commit-Position: refs/heads/master@{#21758}
Reviewed-on: https://webrtc-review.googlesource.com/49460
Reviewed-by: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/branch-heads/65@{#12}
Cr-Branched-From: 3ac67a736bb200ecf7c116a88b2f8d5c542973c8-refs/heads/master@{#21637}
[modify] https://crrev.com/c02f9f90c9fa04e9cc1e3c7baddd30f1848e0c4e/modules/audio_processing/BUILD.gn
[modify] https://crrev.com/c02f9f90c9fa04e9cc1e3c7baddd30f1848e0c4e/modules/audio_processing/aec3/block_processor.cc
[modify] https://crrev.com/c02f9f90c9fa04e9cc1e3c7baddd30f1848e0c4e/modules/audio_processing/aec3/block_processor_unittest.cc
[add] https://crrev.com/c02f9f90c9fa04e9cc1e3c7baddd30f1848e0c4e/modules/audio_processing/aec3/delay_estimate.h
[modify] https://crrev.com/c02f9f90c9fa04e9cc1e3c7baddd30f1848e0c4e/modules/audio_processing/aec3/echo_path_delay_estimator.cc
[modify] https://crrev.com/c02f9f90c9fa04e9cc1e3c7baddd30f1848e0c4e/modules/audio_processing/aec3/echo_path_delay_estimator.h
[modify] https://crrev.com/c02f9f90c9fa04e9cc1e3c7baddd30f1848e0c4e/modules/audio_processing/aec3/echo_path_delay_estimator_unittest.cc
[modify] https://crrev.com/c02f9f90c9fa04e9cc1e3c7baddd30f1848e0c4e/modules/audio_processing/aec3/matched_filter_lag_aggregator.cc
[modify] https://crrev.com/c02f9f90c9fa04e9cc1e3c7baddd30f1848e0c4e/modules/audio_processing/aec3/matched_filter_lag_aggregator.h
[modify] https://crrev.com/c02f9f90c9fa04e9cc1e3c7baddd30f1848e0c4e/modules/audio_processing/aec3/matched_filter_lag_aggregator_unittest.cc
[modify] https://crrev.com/c02f9f90c9fa04e9cc1e3c7baddd30f1848e0c4e/modules/audio_processing/aec3/mock/mock_render_delay_buffer.h
[modify] https://crrev.com/c02f9f90c9fa04e9cc1e3c7baddd30f1848e0c4e/modules/audio_processing/aec3/mock/mock_render_delay_controller.h
[modify] https://crrev.com/c02f9f90c9fa04e9cc1e3c7baddd30f1848e0c4e/modules/audio_processing/aec3/render_delay_buffer.cc
[modify] https://crrev.com/c02f9f90c9fa04e9cc1e3c7baddd30f1848e0c4e/modules/audio_processing/aec3/render_delay_buffer.h
[modify] https://crrev.com/c02f9f90c9fa04e9cc1e3c7baddd30f1848e0c4e/modules/audio_processing/aec3/render_delay_controller.cc
[modify] https://crrev.com/c02f9f90c9fa04e9cc1e3c7baddd30f1848e0c4e/modules/audio_processing/aec3/render_delay_controller.h
[modify] https://crrev.com/c02f9f90c9fa04e9cc1e3c7baddd30f1848e0c4e/modules/audio_processing/aec3/render_delay_controller_unittest.cc

Labels: -Merge-Approved-65
This is already merged to M65 at comment #5. Hence, removing "Merge-Approved-65" label.

Comment 7 by peah@chromium.org, Feb 7 2018

Status: Fixed (was: Assigned)

Comment 8 by peah@chromium.org, Feb 7 2018

Labels: M-65

Sign in to add a comment