Menu

basic

onuxy

TMULE の基本概念

TMULEでは以下の3つのステップを持って音を構成します。

  • 音階(scale)記述
  • 音階上での和音(chord)記述
  • 和音上での旋律(melody)記述

まず、音階(scale)記述では音の並びを指定します。
ここでの音の指定はMIDIにおけるMIDI ノート番号を用いており、60が中央のドを表し61がド#、62がレ、63がレ#、というようにピアノの鍵盤で言うと、白鍵・黒鍵関係なく順番に番号がついています。
また音階の始まりの音を主音(tonic)と言います。
ハ長調の音階は次のように記述します。(改行は無視されます)

scale MajorScale(tonic=60){
  0(100),2(100),4(100),5(100),
  7(100),9(100),11(100)
}

MajorScaleの部分は音階名で自由に名前をつけることが可能です。
tonic=60の部分は主音を指定しています
中括弧の中の数字は主音からの相対的な音程を表し、0ならば0+60で60つまり中央のドを表します。
丸括弧内の数字はデフォルトの音の強さ(0~127)を記述します。

次に、和音(chord)記述ではスケールの内1フレーズ内でどの音を用いるかを記述します。
和音で音階に基づいて音階の何番目の音かということを指定します。
以下に7thコードの例を示します。
7thコードには主にメジャー7th、ドミナント7th、マイナー7thがありますが、この指定方法だとスケールに合わせて自動的に決定されます。

chord Seventh(scaleBase){
  0,2,4,6
}

Seventhの部分は和音名で自由に名前をつけることができます。
scaleBaseの部分は音階に基づいて和音を決定するということを指定しています。(別の指定方法については後述)
中括弧の中の数字は音階上で何番目に位置するかを指定しています。(楽典の「度」とは異なり0から始まることに注意)
例えば、先に定義したMajorScaleでSeventhを鳴らすとそれぞれ60,64,67,71となり、ド・ミ・ソ・シとなります。

最後に旋律を記述します。
旋律は和音の何番目の音かを指定して決定します。
以下に旋律の例を示します。

melody Mel1(chordBase){
  {0 ,r ,1 ,_ },
  {2 ,3 ,_ ,_ }
}

Mel1の部分は旋律名で自由に名前をつけることができます。
chordBaseの部分は和音に基づいて旋律を決定するということを示しています。(別の指定方法については後述)
2重中括弧の部分が具体的に旋律を記述した部分です。
数字は和音の何番目の音かを表し、rは休符を表します。また、_(アンダースコア)は前の音を伸ばすという意味を表します。
つまり、MajorScale、Seventhのときの\verb|0 ,r ,1 ,_| はドの音を鳴らしたあとに休符が入り、ミを最後まで伸ばすという意味になります。
また中括弧を2つ並べて書くと、それらは同時に演奏されます。
したがってMajorScale、SeventhのときのMel1を別の見方をすると、
「ドとソの音を鳴らしたあとにシの音を鳴らし、シを鳴らし続けながらミを鳴らして最後まで伸ばす」という意味になります。

以上の方法で音を構成した後に実際にこれらを指定して曲を作成します。
曲の作成にはトラックの記述により行います。
トラックでは使用する音階・和音・旋律を指定して、それらを並べる事により記述します。
ただし和音と旋律は角括弧でペアにして指定します。
以下にトラックの例を示します。

track Tr1(){
  MajorScale,
  [Seventh,Mel1],
  [Seventh,Mel1]
}

Tr1の部分は旋律名で自由に名前をつけることができます。
この例では音階にMajorScaleを指定してその後にSeventhの和音でMel1の旋律を2回繰り返すという意味になります。
別の音階MinorScaleを定義すれば、以下のように途中で音階を変更することができます。

track Tr1(){
  MajorScale,
  [Seventh,Mel1],
  MinorScale,
  [Seventh,Mel1],
}

ここまでの例では基本的な指定方法しか説明しませんでしたが
和音記述においての音階の指定をscaleBaseではなくscale12Baseとすることで12音すべての音を持つような仮想的な音階で指定できます。
また、旋律記述においてchordBaseではなくscaleBaseを指定することで音階上の音を自由に指定することができます。


Related

Wiki: Home

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.