引用自維基百科
由符合基本音階的音程結構所構成的音列的音高位置,就叫作調。
調的命名建立在主音的基礎上,如由7個自然音級從C開始按順序排列的是就C調。
不同的調一般用樂譜開頭譜號後標明的調號來區別,不同的調運用到音樂作品中的具體形式就是各種調式。
也就是說,每個調(KEY)要包含7個音(NOTE)。
那麼,在MIDI傳輸協議中,旋律樂器的音值∈[0,127],共128個,如何篩選出C大調主音C4?
使用頻率測試儀,篩選出C調、C調低八度、C調高八度的音值。
#define D1 36 //C3
#define D2 38 //D3
#define D3 40 //E3
#define D4 41 //F3
#define D5 43 //G3
#define D6 45 //A3
#define D7 47 //B3
#define M1 48 //C4-中央C
#define M2 50 //D4
#define M3 52 //E4
#define M4 53 //F4
#define M5 55 //G4
#define M6 57 //A4-頻率440Hz
#define M7 59 //B4
#define H1 60 //C5
#define H2 62 //D5
#define H3 64 //E5
#define H4 65 //F5
#define H5 67 //G5
#define H6 69 //A5
#define H7 71 //B5
不難發現這樣兩條規律:
- 一個調內,第三音和第四音差值爲1,其它相鄰的音差值爲2
- 兩個相鄰的調間,低調的最高音和高調的最低音差值爲1
**這是爲什麼呢?**答案在鍵盤上一目瞭然,鍵盤上存在黑鍵!而上述代碼宏定義出的都是白鍵。
宏定義出的音對應該鍵盤圖中從左開始連續的21個白鍵。