【问题标题】:Apply audio filters in parallel and merge the results buffers并行应用音频过滤器并合并结果缓冲区
【发布时间】:2016-11-16 09:44:39
【问题描述】:

我已经使用 13 频段均衡器实现了 EQ10Q 过滤器。使用 smaartV7 软件进行一些测量后,我意识到我的频段相互重叠,从而产生了额外的不良增益。我认为这是因为我在同一个缓冲区(系列)上应用了每个过滤器。所以我想的解决方案是使用具有相同原始数据的立体声 32 位 PCM 格式的 13 个缓冲区。我将对每个缓冲区应用一个过滤器,然后合并所有缓冲区(并行)。所以我有些怀疑。

  1. 我的方法正确吗?

  2. 我应该如何合并缓冲区? (我尝试将所有样本相加,然后将结果除以 13,但这种方法会使滤波器增益降低很多)。

注意:我不想修改过滤器的 Q 因子。

【问题讨论】:

    标签: c filtering signal-processing pcm


    【解决方案1】:

    我不知道 EQ10Q 滤波器库,所以我会为你写一些伪代码。

    希望 EQ10Q 过滤器处理代码返回其更改后的过滤样本,并且不需要指向输入的指针。考虑到这一点,这就是我通常的做法:

    yn = filterOne.process(xn) + filterTwo.process(xn) + ... + filterThirteen.process(xn)

    这会将每个过滤器输出样本相加。但是,请记住,您需要自己对其进行优化...如果您还有其他事情要做,单独处理 13 次样本可能会很费力。

    【讨论】:

      猜你喜欢
      • 2016-04-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-20
      • 2023-03-06
      • 1970-01-01
      • 2019-01-25
      相关资源
      最近更新 更多