番外編 <純正律>



(1) はじめに
(2) 協和
(3) 平均律
(4) 平均律の調律法と、その計算法
(5) セント理論
(6) DTM 音源でのチューニング法



(1)はじめに

今回の内容はかなり専門的な分野です。
必要ないと思った方は読み飛ばしてください。

例えば歌などのメロディーをMIDIなどで打ち込んで実際に聴いてみると、
「音は合っているはずなのに何故か実際の音とは違う気がする。」
とかいう経験をしたことはないでしょうか?
「この音は、微妙に高いのでは?」などなど。

なぜこういう現象が起こるのかといいますと、
この例でいうと、歌とMIDIでは音の調律の仕方が違うからなのです。
MIDIは、現在最も一般的な「平均律」というもので調律されていますが、
反対に歌の方は、完全とはいえませんが、
平均律とは異なる「純正律」というものをベースに調律されています。

この二つの違いは、一体何なのでしょうか?
その前に、この2つは一体何なのでしょうか?
この二つの違いを説明していくと共に、
純正律の本当の素晴らしさをここで伝えていこうと思います。



(2)協和純正律

2つ以上の音が合わさって鳴ることを、 「和音」といいます。
この和音の中の音と音の距離を現す言葉を 「音程」といい、
そして、この音程関係の周波数比率が単純な振動数比である程、
それぞれの音はよく協和します。

例えば、C3(注1)とそのオクターブ上のC4 の音は、
丁度周波数が2倍の関係になるため、1:2の周波数比率で表せます。
この振動数比が単純な比率であるほど、綺麗な「協和」となり、
逆にこの比率の数値が複雑な音程関係は「不協和」となります。

(注1)以下、中央のC をC3 とします。

下の表は、西洋音楽における協和音程の振動数比率を表したものです。

和音 オクターブ 完全五度 完全四度 長三度 短三度 長六度 短六度
周波数比率 1:2 2:3 3:4 4:5 5:6 3:5 5:8

ご覧の通り、単純な整数比ということがわかります。
これはどうやら、音に含まれる倍音が影響しているようで、
一致する周波数の音が増幅することにより、ハーモニー感が得られます。

これらの協和音程を基に構成された音階を、「純正律」と呼びます。


(3)平均律

純正律は、(2)において、とても奇麗な響きを出す事がわかりました。
さて、では上で述べた「微妙にずれている感」は何が原因なのでしょうか?

一概にこれが全ての原因とは言えないのですが、
大抵の原因は、ここで紹介する 平均律だと思われます。

では、平均律とは一体なにものなのでしょうか?
そして、平均律と純正律の関係・違いは一体なんなのでしょうか? それをここで説明していこうと思います。


【純正律の誕生〜平均律の誕生までの歴史】

紀元前6世紀頃の古代ギリシャの時代、
ピタゴラスの定理などを考案した数学者のピタゴラスにより、
ピタゴラス音律 Pythagorean scale 英 )というものが作られました。
長い間このピタゴラス音律が使われていたのですが、
和音を奏すると響が悪く、その点を改良し誕生したのが 純正律 just intonation 英 )です。
純正律は、極めて美しい響を得ることができるのですが、
ピッチが固定されたピアノのような楽器でその調の純正律に調律すると、
別の調を演奏するときや副3和音などを使用するとき、不都合が生じます。
そう、純正律では移調も転調もできないのです。
しかし、人声や楽器など音高を自由に求められるものは、
現在でも一応の目安として純正律を用いています。

純正律の他にも、ピタゴラス音律を改良した中全音律などが、
16〜18C頃にかけて使われていました。
この中全音律の長3度は純正律のものとかなり近く、
当時としてはとても画期的なものだったのですが、
遠隔転調や半音階の使用などに都合が悪く、すぐに廃れてしまいました。
これらの欠点を改革したものが、十二平均律です。
平均律とは、1 octave (仏)を 12つの半音に平均的に等分したもので、
どの調で演奏しても均一な響を得られるのが特徴です。
octaveを12等分する理論は16〜7C頃から進められてきましたが、
普及されるのには時間がかかり、今のように優位の位置に立ったのは19Cに入ってからでした。
では、この平均律による音程関係はどのようなものなのでしょうか?


(4)平均律の調律法と、その計算法

平均律は、半音をオクターブ(1:2)を比率として12等分した幅です。
つまり、半音分の比率を12回積算するとオクターブである2となります。

(半音幅)12=2

(半音幅)=12√2=1.059463094・・・・

ところで、CとGの間には半音の幅がいくつあるでしょうか?
C・C#・D・D#・E・F・F#・G
Cを含めずに数えると、C#〜Gまでの7つということになります。
よって、CとGの周波数比率は、

1:(12√2)7=1:1.498307077・・・

と、2:3の純正律の周波数比率とは一致しない事がわかります。
どの音程間でこの計算をしても、2:3や3:4などの綺麗な数値はどうやっても出てきません。
簡単な整数比が純正な音程の条件ですので、平均律では純正の音程は出ないのです。


(5)セント理論

平均律は、ややズレはあるもののほぼ正確にオクターブを12等分することが出来るので、
この理論を基に、オクターブを1200等分した
「セント」(cent)という単位が考案されました。
平均律の各音は100cent毎に割り振ることが出来るので、
細かい音程変化を、精密かつ正確に対応することが出来るようになりました。

この計算法を用いて純正律の振動数比をcent 値に変換し、
100cent単位で固定された平均律の音程との誤差を算出して加減すれば、
純正律の音程にチューニングすることが可能という訳です。

これは大変利便性の高いものなので、
電子楽器やチューナーなど、細かい音程変化への対応が必要なものに実用されています。


その計算法は、以下の通りです。


ある音とそのオクターブ上の音を12等分したのが平均律の音程なので、
全ての音程は、

a * 2y/12 Hz

a=A音の周波数。A=440Hzなら、a = 440 となります。
y=各音の音程間の数値。完全5度上なら +7 など。

で表せます。

2音の比率は、2y/12で表せるので、純正律の完全5度 (3/2) の平均律との誤差は、
3/2 = 2y/12[y] の値を算出すれば解ります。

[y] = 12 * log2(3/2) = 7.01955000865387・・・。

平均律の場合、[y] = 7 なので、誤差は0.01955000865387・・・となります。
そして、上の計算で出た7.01955000865387・・・に、cent理論を基に100をかけると、
純正律の完全5度の(701.955000865387)cent値 [yC] が算出されます。

同じように平均律の 7に 100 をかけると 700 なので、
cent値での誤差 [yN] は以下の通りになります。
(純正律のcent値を [yJ] 、平均律のcent値を [yH] とします。)

[yN] = [yJ] - [yH]
[yN] = 1.95500086538743・・・cent

完全5度以外の音程も、同じ方法で求める事ができます。
以下が、各音程の平均律との誤差を表にまとめたものです。

     
音程 周波数比率 cent値(純正律)cent値(平均律) 平均律との誤差(cent)
完全五度 2:3 701.955000865387700 +1.95500086538743
完全四度 3:4 498.044999134612 500 -1.95500086538755
長三度 4:5 386.313713864835 400 -13.6862861351652
短三度 5:6 315.641287000553 300 +15.6412870005526
長六度 3:5 884.358712999447 900 -15.6412870005526
短六度 5:8 813.686286135165 800 +13.6862861351653
長二度 8:9 203.910001730775 200 +3.91000173077484
長二度(2) 9:10 182.40371213406 200 -17.5962878659399
短二度(全音階的半音) 15:16 111.731285269778 100 +11.7312852697778
増一度(半音階的半音) 24:25 70.6724268642823 100 -29.3275731357177

以下は、cent値の算出式をまとめたものです。

[yC] (cent値) = 12log2(振動数比) * 100

[yN] (誤差) = [yJ] - [yH]


(6)DTM 音源でのチューニング法

MIDIで音律を調律するには、
エクスクルーシブの「スケールチューニング」や、
ピッチベンドを使用します。

エクスクルーシブで設定するのが一番手っ取り早いのですが、
これは基本的に曲中全て音律が固定されてしまいますので、
後に説明する純正律の特性上、実用出来るものはごく限られてしまいます。
よって、本格的に曲で使う場合はピッチベンドを利用するのが一番でしょう。

では、簡単にピッチベンドでの設定法にふれていきましょう。

ピッチベンドは1ch あたり1つしか設定できませんので、
同じトラックではオクターブを除き、基本的に1ポリということになります。
なので、和音は各音ともトラック毎に分散し、
それぞれの音をピッチベンドで設定していく、という形になります。

それでは、順番に説明していきます。

【マスターチューン】

例えばC調で純正律を適用すると、
第VI音であるAの音は振動数比が5/3になるため、 約15.7cent低くなります。
しかしそうすると、音源側のA=440Hzという設定がずれてしまいます。
このままでは、他の低くなる音も含めると全体的に低くなってしまうので、
これをキチンとA=440Hzにしてやる必要があります。

これによって基音のC音は、
平均律のC音が261.63Hzであるのに対し、264Hzと、やや高くなります。
しかし、これで440Hzと5/3の関係になるのが解ると思います。

*マスターチューンは0.1cent単位なのでやや誤差がありますが、
ピッチベンドは相対変化なので、比率の関係には問題ありません。

SysExの設定は、以下の通りです。

[XG] F0 43 10 4C 00 00 00 00 04 09 0D F7
[GS] F0 41 10 42 12 40 00 00 00 04 09 0D 26 F7


【ファインチューニング】

GMレベルで作りたいとき等、SysExが使えない場合はこちらを使います。

[RPN ファイン・チューニング]

CC#101 (RPN MSB) :0
CC#100 (RPN LSB) :1
CC#006 (DataMSB) :mm
CC#038 (DataLSB) :ll

mm,ll :データの値。
mm = -64_0_+63
ll = 0_127

通常はCC#6のMSBだけで良いのですが、純正律は小数点単位のcentを扱うので、
cent値を128(CC#6)*128(CC#38)の、16,384段階の数値変更します。
(実際はさらにこれを -8192_0_+8191のように2分割したもので設定します。)

<cent値→ピッチベンド値への変換>

この計算は下記の純正律チューニングでも使用します。
シーケンサによっては(P)値が-4096_0_+4095 等になっているものもありますので、
その際は、計算式を調節して下さい。

ピッチベンド値(P)cent値(平均律値との差)* 8191(-8192) / 100

これをMSB LSB の形に変換する訳ですが、

Data Entry MSB1 あたり1.5625cent(100 / 64)で、
(P)を128で割れば、値が求められます。

Data Entry LSB1 あたり0.0122・・(1.5625 / 127)で、
(P)→MSB の際に生じた誤差を埋める為に使用します。

実際に計算してみますと、cent値(C)15.6412870005526・・・なので、
(誤差が少なくなるように、あえて端数を省かずに計算します。)

(P)=(C) * 8191 /100 で、
(P)=1281.17781821526 となります。

しかし、後のLSB のことを考え、(P)をキリのいい1280に変更します。

これをMSB(M) の幅の128で割ると、

(M)=(P)/128
(M)=10

となります。

そして、中心値の 64 にこれを加えると、

(M)=64 + 10
(M)=74

となります。

これで、MSB の設定は終了です。

次に、先ほど切り捨てた端数をLSB(L)で補います。

切り捨てた端数は、1.17781821526です。

(L) は1 あたり0.01220703125(L1) なので、

(L1)=0.01220703125 * 8191 / 100
(L1)=1.00775098425197

となり、

1.17781821526との誤差が1未満なので、端数を切り捨て、

(L)=1

となります。

よって、ファインチューニングの値は、

CC#101:0
CC#100:1
CC#006:74
CC#038:1

となります。
これで、ファイン・チューニングの設定は完了です。
ちなみにこの計算は、ピッチベンド MSB,LSB 値の算出時にも使用します。


【実際のチューニング法】

さて、全体的な設定が終わった所で、
実際のパート毎のチューニングの設定に移ります。

音程の算出法は、ファイン・チューニングの部分で述べた方法と全く同じです。
リストエディタなどで、変更したい音程の手前にピッチベンドを入力し、
その音に応じた値を入力してやればOKです。

これはシーケンサによって異なるため、一概には説明出来ませんが、
ピアノロール等でのGUIでのピッチベンド変更では大まかな設定しか出来ませんので、
少々面倒ですが、リストエディタ等で数値で入力してやるのが一番です。

リストでの入力は、MSB,LSBで入力するものと(P)値で入力するものの2通りがあると思いますが、
後者で変更する際、RPN のピッチベンドセンシティビティでレンジを調整します。

上でやってきた通り、cent値の最大は半音(100cent)なので、
センシティビティをデフォルトの +2 ではなく、 +1 に設定します。
これを忘れるとせっかく計算しても意味がなくなってしまいますので、ご注意を。(苦笑)

[RPN ピッチベンド・センシティビティ]

CC#101 (RPN MSB) :0
CC#100 (RPN LSB) :0
CC#006 (DataMSB) :mm

mm :データの値。
mm = 0_+24(半音で、最大2オクターブまで。)


これまでの説明を基に作成したものが、こちらです。


下のBGMをOFFにしてから再生して下さい。
こちらからDLもできます。

まずは平均律で4声体の和声を演奏し、その後同じものを純正律で演奏しています。
2つを聞き比べ、その違いを感じ取ってみて下さい。


ずらっと書いてしまいましたが、いかがでしたでしょうか?
ピアノなどはピッチを固定してしまうため、事実上純正律での演奏は厳しいですが、
MIDIで上記のように設定すれば、純正律での演奏も夢ではありません。
MIDIでCDの演奏ような綺麗な音程の音楽を作ることも可能かもしれません。
実際の演奏では当たり前のように行われているチューニングやピッチ変更を、
MIDIの世界で再現してみてはいかがでしょう?
きっと、今までにない面白い体験を出来るかとおもいます。

次回からは楽典の続きをやっていきますので、そちらの方もよろしくお願いします。



タイトルへ戻る