commit e479f84090d2ce74e3d5331df9c76e3df950dd53
parent ddc0cfabdb9a7b17a63babec72dd2c77f3cea243
Author: Dan Baker <dbaker@mozilla.com>
Date: Tue, 2 Dec 2025 00:50:37 -0700
Bug 2000941 - Vendor libwebrtc from 9607577330
Upstream commit: https://webrtc.googlesource.com/src/+/96075773302f4a4b7265052c37a793486355aef9
Add functionality for proper alignment when a fixed delay is specified
This CL adds functionality for adjusting the reported stream delay
based on any specified fixed delay, such that the resulting delay
can be used for proper pre-alignment before the delay estimator
has been able to properly activate..
Bug: chromium:415954529
Change-Id: I2a752c5f480a7d01404ed258dcb0ca83c3ca7a60
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/411841
Reviewed-by: Jesus de Vicente Pena <devicentepena@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Per Ã…hgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#45742}
Diffstat:
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/third_party/libwebrtc/README.mozilla.last-vendor b/third_party/libwebrtc/README.mozilla.last-vendor
@@ -1,4 +1,4 @@
# ./mach python dom/media/webrtc/third_party_build/vendor-libwebrtc.py --from-local /Users/danielbaker/elm/.moz-fast-forward/moz-libwebrtc --commit mozpatches libwebrtc
-libwebrtc updated from /Users/danielbaker/elm/.moz-fast-forward/moz-libwebrtc commit mozpatches on 2025-12-02T07:47:14.506975+00:00.
+libwebrtc updated from /Users/danielbaker/elm/.moz-fast-forward/moz-libwebrtc commit mozpatches on 2025-12-02T07:50:23.817994+00:00.
# base of lastest vendoring
-ad5e5d4876
+9607577330
diff --git a/third_party/libwebrtc/modules/audio_processing/aec3/render_delay_buffer.cc b/third_party/libwebrtc/modules/audio_processing/aec3/render_delay_buffer.cc
@@ -335,7 +335,11 @@ void RenderDelayBufferImpl::SetAudioBufferDelay(int delay_ms) {
}
// Convert delay from milliseconds to blocks (rounded down).
- external_audio_buffer_delay_ = delay_ms / 4;
+ constexpr int kSampleRateForFixedCaptureDelay = 16000;
+ constexpr int kNumSamplesPerMs = kSampleRateForFixedCaptureDelay / 1000;
+ external_audio_buffer_delay_ = (delay_ms * kNumSamplesPerMs +
+ config_.delay.fixed_capture_delay_samples) /
+ (kBlockSizeMs * kNumSamplesPerMs);
}
bool RenderDelayBufferImpl::HasReceivedBufferDelay() {