0

我正在尝试使用scriptprocessor更改缓冲区样本的音高,但是我需要什么样的公式来做到这一点?我不是在寻找确切的 js 代码,而只是在寻找一些通用的数学方法。我很想为此提供一些代码,因为第一个答案有很多公式,我不知道如何在 JS 中实现它。

我知道这是随着时间的推移,但根据这一点,它可以用 FFT 完成,但我不知道应该怎么做。

4

2 回答 2

0

我相信 https://github.com/mikolalysenko/pitch-shift是合适的(质量不及其他代码,但这个库很容易理解/使用)。您可以在http://mikolalysenko.github.io/pitch-shift/听到演示。

于 2014-02-04T21:53:13.510 回答
0

对于使用 FFT 进行时间音调修改的一种方法,请查看相位声码器。这是相位声码器如何工作的一种解释(但搜索会出现许多其他的):http ://www.guitarpitchshifter.com/algorithm.html

于 2014-02-04T18:29:18.823 回答