如何实现sinc插值

信息处理 声音的 重采样 正弦
2022-02-09 11:21:35

我正在尝试编写自己的高质量音频采样率转换器。我对信号处理几乎一无所知,所以我需要帮助。据我了解,我需要将触及每个样本的归一化 sinc 函数相加,以找到任意点的值。我猜这很难,因为这意味着对几秒钟长的音频文件进行超过十亿次的计算。那么我是否只对最接近我的 x 值的样本使用 sinc 函数?这就是“windowed sinc”的意思吗?我应该在远离我的 x 值的每个方向上去多少个样本?此外,我的 DAW 有一种叫做“32 点 sinc”的重采样。在这种情况下,“32 点”应该是什么意思?

1个回答

“那么我是否只对最接近我的 x 值的样本使用 sinc 函数?”

是的,当你截断时。

“这就是‘windowed sinc’的意思吗?”

是的。sinc 趋于无穷,计算这是不切实际的。

“我应该在远离我的 x 值的每个方向上去多少个样本?”

距离越远,sinc 就越小。在某些时候,额外的点变得微不足道(不比蚊子上的胡须宽)。

“另外,我的 DAW 有一个叫做“32 点正弦”重采样的东西。在这种情况下,“32 点”应该是什么意思?”

我很确定这意味着一个 32 点的窗口,以您当前的样本为中心。

Sinc 插值是一种插值形式。它是“傅立叶兼容”的,因为它在带宽基础上给出了限制。

这是另一个可能更有用的链接: 多通道音频上采样插值

重读此参考资料时,Olli 已经完成了这一分析,令人惊叹。