AEC3: Downmix multichannel signals before delay estimation
Multichannel signals are downmixed to mono before decimation and delay estimation. This is useful when not all channels play audio content. The feature can be toggled in the AEC3 configuration. Bug: webrtc:10913 Change-Id: I7d40edf7732bb51fec69e7f3ca063d821c5069c4 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/151762 Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org> Reviewed-by: Per Åhgren <peah@webrtc.org> Cr-Commit-Position: refs/heads/master@{#29126}
This commit is contained in:
committed by
Commit Bot
parent
d181ee798d
commit
ee84d39fce
@ -41,7 +41,7 @@ class RenderDelayControllerImpl final : public RenderDelayController {
|
||||
absl::optional<DelayEstimate> GetDelay(
|
||||
const DownsampledRenderBuffer& render_buffer,
|
||||
size_t render_delay_buffer_delay,
|
||||
rtc::ArrayView<const float> capture) override;
|
||||
const std::vector<std::vector<float>>& capture) override;
|
||||
bool HasClockdrift() const override;
|
||||
|
||||
private:
|
||||
@ -118,8 +118,8 @@ void RenderDelayControllerImpl::LogRenderCall() {}
|
||||
absl::optional<DelayEstimate> RenderDelayControllerImpl::GetDelay(
|
||||
const DownsampledRenderBuffer& render_buffer,
|
||||
size_t render_delay_buffer_delay,
|
||||
rtc::ArrayView<const float> capture) {
|
||||
RTC_DCHECK_EQ(kBlockSize, capture.size());
|
||||
const std::vector<std::vector<float>>& capture) {
|
||||
RTC_DCHECK_EQ(kBlockSize, capture[0].size());
|
||||
++capture_call_counter_;
|
||||
|
||||
auto delay_samples = delay_estimator_.EstimateDelay(render_buffer, capture);
|
||||
|
||||
Reference in New Issue
Block a user