我的数学很弱,而且我对这些差异感到困惑。我试图找出midi公式,当我有midi值时输出频率
MidiNumber = 69+12* Log2(440/Frequency)
所以我派生了 频率=(-69 + 5280 Log2 + MidiNumber)/(12 Log2)
如果我插件,这可以正常工作 440 =( - 69 + 5280 Log2 + 69)/(12 Log2)
如果我这样做,虽然事情不能正常工作 (-69 + Log [2,5280。] + 69)/ Log [2,12。]
这是我在编程中得到的输出,我不完全知道这两个方程之间的区别。也许它是12 * Log2,但是12 * Log2 [1]或者......?不知道。
答案 0 :(得分:3)
您的一些困惑似乎是将Log2(n)视为Log2 * n。 Log2实际上是一个函数,其反函数为2 ^ x。
所以你的推导应该如下:
MidiNumber = 69 + 12 * Log2(440 / Frequency)
MidiNumber - 69 = 12 * Log2(440 / Frequency)
(MidiNumber - 69) / 12 = Log2(440 / Frequency)
2^((MidiNumber - 69) / 12) = 440 / Frequency
Frequency = 440 / 2^((MidiNumber - 69) / 12)