0

伙计们。我正在为 android 研究 AEC,更具体地说,我正在为金枪鱼项目研究 HAL。代码: audio_hw.c

static void get_capture_delay(struct tuna_stream_in *in,
                   size_t frames,
                   struct echo_reference_buffer *buffer)
...
    delay_ns = kernel_delay + buf_delay + rsmp_delay;
...

我发现 get_capture_delay 包含 rsmp_delay。我认为这不是真的。我相信 rsmp_delay 和 delay_ns 之间没有任何关系。因为 delay_ns 是通过缓冲的音频捕获数据(在 Linux 内核和 HAL 缓冲区中)和采样率计算的。

非常感谢您的大力帮助。

4

1 回答 1

0

在这里,他们正在计算重新采样所需的所有 delay.delay。但稍后他们将从 delay_ns 中减去重新采样延迟。如果你看到 mEchoReference->read() 函数,你会明白的。

于 2014-07-18T04:20:34.277 回答