Shepard Toneとは
Shepard Toneとは日本語で無限音階などとも呼ばれる、アメリカの認知科学者Roger Newland Shepard (シェパード,born January 30, 1929 in Palo Alto, California)が考案した音響的な錯覚です。
これはしばしば、ドイツのグラフィックアーティスト、Maurits Cornelis Escher (エッシャー, 17 June 1898 – 27 March 1972)のPenrose stairs(無限階段)や床屋のポールの無限回転の音楽版と例えられます。このページではmax/mspを用いて、シンボリックドメイン、つまり楽譜レベルでこの無限音階を作曲させるプログラムの作成方法、原理の解説を行います。
この音響は正確に1オクターブごとに上音を構成した特殊な集合音を、半音階でスケールアップかダウンを行い、上から下まで各ピッチのダイナミクス/音量を曲線で結んだ場合にガウス分布になるように設定することで、実際は12半音の上昇(又は下降)を反復しているにもかかわらず、その反復しているポイントを知覚させずにスタート地点の音に戻り、無限に上昇(又は下降)するような印象を与えることが出来る音響です。
この音階は特定の音階の場合に効果的であることはありますが、必ずしもクロマティックスケールである必要はありません。ここで選ぶ楽器(スペクトル)、音階や音量の分布曲線によっては、本来のスタートポイントとは異なるポジションが反復の開始地点であるように知覚される場合があります。この音響を初めて音楽作品に適用した作曲家が2007年に来日しサントリーホールでも演奏が行われたジャン クロード リセです。
Jean-Claude Risset
Jean-Claude Risset (ジャン クロード リセ, March 18, 1938 in Le Puy, France) はフランスの現代音楽、特に電子音響音楽の作曲家です。以前にアメリカのベル研究所でコンピュータ音楽の父Max Vernon Mathews (マックスマシューズ, November 13, 1926, in Columbus, Nebraska)とも仕事をしていたことがあります。
1964からベル研究所に勤めたリセはMusic IVという現在のRTcmixやCsoundの原型となるソフトウェアを使い金管楽器のデジタル再合成の研究を行い、FMシンセシスやウェブシェイピングの最初の実験にも名を連ねています。
リセは自身の電子音楽作品"Mutations"にてこの無限上昇する音響を使用しています。この音響は特にShepard-Risset glissandoなどとも呼ばれ、グリッサンドによる無限上昇音を聞くことができます。OHM_ The Early Gurus Of Electronic Musicの音源でも聞くことができるので実際の音源で確認してみてください。
OHM+: The Early Music Gurus of Electronic Music – 1948-1980 [3CD+DVD] Maryanne Amacher Ellipsis Arts 2005-10-25 |
ガウス分布によるスペクトルバランスの設定
ガウス分布(Gaussian Distribution)とは、Abraham de Moivre (ド・モアブル, 26 May 1667 in Vitry-le-François, Champagne, France – 27 November 1754 in London)が二項分布の近似として発見した確率分布を後のラプラスやルジャンドルの誤差や最小二乗法に関する研究を経て、ガウスの誤差論で詳細に論じられた分布であり、日本語で正規分布とも呼ばれます。
ガウス分布の確率密度関数をグラフ化した曲線は左右対称なつりがね状の曲線になります。直線x = μを軸に左右対称であり、x軸が漸近線をとります。σの値は大きいほど扁平な曲線になります。(μ は平均、σ2 は分散,この分布を N(μ, σ2) と表される)
自然界の現象の中にも、身長や体重の分布、試験の点数などガウス分布に従う数量の分布をとるものがあることが知られています。
今回の無限音階のプログラムは音量の分布としてこのガウス分布を利用します。グラフの横軸をピッチ、縦軸を音量と考え各ピッチの音量を設定します。
左から右までのグラフの横軸は10個のクラスに分割し、それぞれのクラスはグラフに従ってx=-5からx=-4をMIDIノートナンバー0〜12のクラス、 x=-4からx=-3が12〜23のクラス、24〜35のクラス…etc.のように1オクターブが1つのクラスを構成するように設定します。
そしてそれぞれのクラス内部で各ピッチごとに異なる音量の設定をガウス分布に従って行います。音量はグラフのyの値に127を掛けMIDIのヴェロシティー値にスケーリングします。(MIDIの127段階の音量変化では正確にこのガウス分布を表現することが不可能であるため、近似による誤差がシェパードトーンの作成にあたり、聴覚的に大きな悪影響を与えてしまいます。)
その作業を10オクターブ分設定していけば音量の設定は完了します。この音量の設定こそ無限音階を生成させるために最も重要なパートです。これがもし、すべて一定の音量であった場合、最低音が出現する瞬間、最高音が消える瞬間が耳につき、無限に音階が上昇していくようには知覚できなくなってしまいます。
つまりこれはガウス分布に従って部分音と音量に一定の制限を与えることで、ピッチが変化しても擬似的に全体的な音響の周波数分布が保たれるような効果をもたらしています。例えばオーディオドメインの音響スペクトルをガウス分布のカーブでフィルタリングし、どのような音響を送り込もうと常に同じバランスの周波数分布の音を出力することができるのと同じことです。
ピッチ/スケール
最後にピッチ、スケールの設定ですが、各オクターブクラスの内部のピッチクラス0から11までを順々に、各オクターブクラス同士は同じタイミングで発音させればシェパードトーン、無限音階は完成です。つまり縦の構成を見ると常に10音構成の和音が鳴っていて、横の構成を見るとすべての声部(この場合10声のポリフォニーと考えることも可能)でクロマティックスケールをユニゾンしていることになります。この各ピッチの音程関係をオクターブごとに設定しなければスペクトルバランスは崩れ、たとえ音量がガウス分布になっていようと無限上昇を知覚することができなくなります。
オーディオ領域でのシェパードトーン (Reaktor)
音源、パッチのダウンロード
このパッチで生成される音楽はgenerative music同様永遠に終わらないものです。音源化することにはあまり意味はありませんが、サンプルとしてこのような音楽が生成され続けるということをご確認ください。
Midi
Patch
shepard.pat (for Max4.x)
shepard.maxpat (for Max5.x)
max5Runtime(上記のプログラムの実行用フリーソフトウェア for Mac)
max5Runtime(上記のプログラムの実行用フリーソフトウェア for win)