我在该站点上做了一些搜索,但是令人惊讶的是,我没有找到太多相关信息,而且我对DSP的了解非常有限。
我的目标很简单:我想用C ++编写算法混响,听起来确实不错。或更准确地说,最好的选择是让最终用户选择质量和CPU使用率之间的权衡。
到目前为止,我发现要创建混响,必须将干燥信号输入早期反射算法,然后再输入后期反射算法。这个对吗 ?
现在,我使用了反馈延迟网络(使用时变反馈延迟网络减少了人工重塑需求),在后期反射部分找到了一篇广泛的文章。根据我的阅读,FDN是模拟后期反射的一种高质量但不太宽泛(CPU明智)的方式。此外,我想您可以通过更改延迟线的数量来控制质量/ cpu电荷的权衡。
但是,我绝对不知道如何对早期反射算法进行编程(还记得吗?我在DSP领域真的很无知)。
使用一种多重延迟在我看来是合乎逻辑的,它具有易于编程和计算便宜的优点。但这听起来太简单了,难以置信。
此外,我的直觉告诉我,信号路径中的某处必须包含一个或几个滤波器。
有人可以帮我澄清一下这个话题吗?
两个注意事项:
- 我根本不需要卷积混响。我并不是很在意混响的真实性,但是我想要一个听起来不错,可调整的混响,而不是渴望CPU的混响。
- 另外,编码部分并不是让我担心的,否则我会问stackoverflow。它实际上是DSP部分,也是我要关注的那部分:)