V3MMLmanual

2.14.3 type=f_number のとき(F-Number)

← 目次

【記述例】

#MB:PITCH_SCALE ps=10 {
   type = f_number,
   master_clock = 3993600.0,
   prescale = 72.0,
   start_key = 0,
|  //f_number key00...key11
   0x026A,
   0x028F,
   0x02B6,
   0x02DF,
   0x030B,
   0x0339,
   0x036A,
   0x039E,
   0x03D5,
   0x0410,
   0x044E,
   0x048F
}

【解説】

フォーマットは次の通りです。

#MB:PITCH_SCALE ps=定義番号 {
   type=f_number,
   master_clock=[],
   prescale=[],
   start_key=[],
|
   KEY00, KEY01, KEY02, KEY03, KEY04, KEY05,
   KEY06, KEY07, KEY08, KEY09, KEY10, KEY11,
}

KEY00〜KEY11群の直前で、| 記号で区切ること)


master_clock

F-Number 計算のもとになるマスタークロックを指定します。小数以下の指定も受け付けます。例えば、3993600.0 などになります。


prescale

F-Number 計算のもとになるプリスケール値を指定します。小数以下の指定も受け付けます。
これはサンプリング周波数を得るためのプリスケール値になるため、OPNのプリスケーラーそのものではなく、12倍済みの、例えば 72.0 などになります。


start_key

KEY00〜KEY11にて指定する F-Number値 は、Block(オクターブ)が0である前提です。その上で KEY00 に割り当てる音程番号を、-24 〜 24 で指定します。
0 の時、KEY00 は オクターブ0の c と見なされます。
1増えるごとに半音上がり、1下がるごとに半音下がります。通常 0 を利用します。


KEY00〜KEY11

KEY00start_key + 0半音 のF-Number
KEY01start_key + 1半音 のF-Number
KEY02start_key + 2半音 のF-Number
KEY03start_key + 3半音 のF-Number
KEY04start_key + 4半音 のF-Number
KEY05start_key + 5半音 のF-Number
KEY06start_key + 6半音 のF-Number
KEY07start_key + 7半音 のF-Number
KEY08start_key + 8半音 のF-Number
KEY09start_key + 9半音 のF-Number
KEY10start_key + 10半音 のF-Number
KEY11start_key + 11半音 のF-Number


【備考】周波数計算は次の要領で行われます。

fMUS = (F-Number*(2^(b-1))*fSAM)/(2^20)