【发布时间】:2022-01-05 14:17:24
【问题描述】:
是否有一种众所周知的合成弓弦乐器(例如小提琴)的算法?
我知道对于弹拨弦(例如吉他)有 karplus-strong 算法,我过去已经成功实施过。
理想情况下,我想要一个描述用于生成/合成数字信号的计算机程序的算法。
例如,karplus-strong算法可以总结如下:
-
确定您要合成的频率的周期长度并创建一个恰好大小的缓冲区
-
用随机数(白噪声)填充缓冲区
-
遍历缓冲区,每次平均每个点与下一个点,然后将其输出到输出流。
-
在施加一些阻尼的同时重复所需的时间
我想知道弓弦是否存在类似的东西。
脚注:
现在,我对弦如何产生声音的物理学一无所知,所以我不知道如何推导出这样的算法。对于karplus-strong算法,我只是简单的在原论文中阅读并“盲目”应用。我永远不会想到,从一阵阵的噪音开始,然后不断地对其进行阻尼,会产生如此类似于拨弦的声音。
编辑:
像往常一样,近距离阅兵开始了。
在投票结束此问题之前,请考虑以下事项:
-
这个问题与物理无关。这与琴弦振动或与弓和空气相互作用产生声音的机制无关。
-
这个问题是关于是否存在一种特定的众所周知的算法来合成声音。这完全是一个关于编程的问题。
【问题讨论】:
-
physics.stackexchange.comphysics.stackexchange.com 上的这个问题你可能会遇到更好的运气
-
@RBarryYoung 这不是关于物理的问题。这是一个关于如何编程的问题。不是关于产生声音的弦/空气/波机制。
-
获取样本,做波形图和频谱图...拟合/参数化多项式或测角...大量研究和数据编译...
-
“karplus-strong 算法......我想知道弓弦是否存在类似的东西”。这是phyiscs.stackexchange.com 的人更可能知道的问题。他们也有更多的人在将 ODE 和 PDE 转化为数值和模拟程序方面拥有丰富的经验。为了记录在案,我没有投票结束你的问题。如果你想在这里,我很好,我只是想指出那里有更多的数值和模拟程序员。
-
@RBarryYoung 注意。感谢您的建议。
标签: algorithm audio sound-synthesis