更新の間が空いてしまいました。
何をしているかっていうと修士論文を書いている。
なのでまったく iPhone App. に触れていなくて
ちょっと触れても blog にアップする余裕がなくて何も書いていなかった。
今は論文がちょっと一段落して息抜きできるので、生きてますよーってことで更新。
修士論文のテーマについて紹介します。
タイトルは「ジェネレーティブな手法を用いて加算合成を行うソフトウェアシンセサイザーの設計」。
なにやら難しそうと思うかもしれんが、「ジェネレーティブ」「加算合成」あたりがわかればやろうとしていることは別に難しくない。
ちなみに「ソフトシンセ」は、PC上で動く楽器と思ってOK。
「加算合成」とは、ある音を、細かい単位の音の集積で合成する手法のこと。
一例を挙げると、ピアノは、鍵盤が叩かれると中でハンマーが弦を叩いてその音がなるわけだけども
ハンマーが叩く弦は1本じゃなくて、長さや重さの違う数本を同時に叩く機構になっているので
つまりピアノの音は数本の弦の音が同時に鳴ることで作られているのです。
これが加算合成。
これを、今回は正弦波の重ね合わせでやります。
「ジェネレーティブ」というのは、日本語でいうと「生成的」ですかね。
wiki(ジェネレーティブアート)によると、「コンピュータソフトウェアのアルゴリズムや数学的/機械的/無作為的自律過程によってアルゴリズム的に生成・合成・構築される芸術作品を指す」だそうです。
要は、作品をそのまま作るのではなく、他の作業によって間接的に作り上げる、というもの。
さぁわかんなくなってきましたね。
論文の中身でもうちょっと説明します。
さて、加算合成っつーのはとても手間のかかる作業なんです。
正弦波の一個一個について音量とか高さとか色んなパラメータを設定してやらなきゃならない。
それらの時間的変化の様子まで考えてやりだしたらもう大変。
そこでこのソフトシンセ作っちゃいました。名前を《Generative Synth 01, Spring》といいます。
じぇねれーてぃぶしんせ っつーのは、本来すごく面倒なシンセの音作りを
設定すべきパラメータを、別の方法で「生成」することで簡単に音色を設定しちゃおうということです。
Springっつーことで使うのはばねなんですが、(もちろんコンピュータ上で仮想的に扱うだけですよ)
下の画像を見て下さい。線がばね、点が接続点です。物理でいうところの質量とかおもりですね。

これは5つのおもりと、それら全てを10本のばねでつないだ図です。ちなみにばねの自然長とスティフネス(硬さ、強さ)は全て一定です。
つないでしばらく経つと、こういう状態で動きが止まります。
これはおもりの数を変えても同じです。それぞれの釣り合いの状態で止まります。
ばねの1本と正弦波の1つを対応させて、
ばねの長さと弾性力から正弦波の周波数を、ばねの動きの大きさから正弦波の振幅を計算します。
(周波数) = √(弾性力)/(長さ) × (定数)
(振幅) = (両端質量の相対速度) × (定数)
こうしておいて、おもりのどれかをちょっと動かすと、うねうね動いてまたこの状態に戻ってきます。
この動いた様子が、上の式で変換されて、リアルタイムに周波数と振幅の時間変化(エンベロープ)を生み出します。
こうして音作りしましょうという楽器を作りました。
わかりやすく書くためにちょっと間違ったことをかいてたり説明が足りなかったりしますが
まああらかたこんなところです。
音色のプリセットとかあるよ。
将来的にはシーケンサも付属してほんとに楽器として使えるようにしたいですな。
spring synth
動画はちょっと前のバージョンなんで今はもちょっと面白いものになってます。
さ、ろんろんぶんぶん