十二平均律が一般的かつ簡単そう。
参考
奥が深すぎる。
十二平均律
簡単に算出できそう。
ド | C |
---|---|
ド | C |
ド# | C# |
レ | D |
レ# | D# |
ミ | E |
ファ | F |
ソ | G |
ソ# | G# |
ラ | A |
ラ# | A# |
シ | B |
- ラ(A)の音が基準。
440Hz
らしい - ラ(A)の音から十二平均律を使って他の音を算出する
- この音階すべての範囲を「1オクターブ」という
- 1オクターブを12等分する
十二平均律
2**(n/12)
- n=1〜12の正数
ラ(A)の音440Hz
440 * (2**(n/12))
- n=1〜12の正数
key_name = ['C','C#','D','D#','E','F','F#','G','G#','A','A#','B'] key_diff = [-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2] key_frequency = {} for key,diff in zip(key_name,key_diff): key_frequency[key] = 440 * math.pow(2,diff * (1/12.0))
オクターブ高めるには各周波数を整数倍すればいいらしい。
所感
物理や音楽の知識なんて何もないから受け売りやコピペしかできない。