« さうして、このごろ 20140216 | 最新のページに戻る | tonnetz(三和音のトーラス構造)についていろいろやってみた(2) »
■ tonnetz(三和音のトーラス構造)についていろいろやってみた(1)
以前tonnetz(三和音のトーラス構造)についていろいろ考えてブログに書いたことがあるんだけど、ふと思い立って、三和音を三次元の一点で表現するようにして24個の和音を並べたらなんか構造でも見えてくるのだろうかと思って図を作ってみた。
24和音を低い方から並べて、たとえばCmajorだったらc,e,g音をc=0を基準に半音の数を数えるとc=0,e=4,g=7となるので、3次元空間の(0,4,7)にplotする。この調子でぜんぶplotするとx軸は0-4, y軸は3-8, z軸は7-11に全てのコードが並ぶ。
んで眺めてみたけれども、たとえば高さ9のところにはa音を含むコードが集まるので、xy平面上でD-Dm-A-Am-F-F#mという六角形が見える。縦方向に見てやると、Dmの縦線(黄色)の流れが上に進むとマゼンダの縦線の流れに繋がる。こっこにはなんか構造が見える。色で言うとmajのg-c-rとminのm-b-yの二つの系列。
とはいえ、c音から積み上げていくというところが無意味なので、もっと幅広くplotしてみたらなんか違ったものが見えただろうか?
けっきょくcircularであることを無視するとよくないので、Cmajorだったら輪っかでc-e-gに印をつけて、あとはおなじように24個作って、二音共有しているコード、一音共有しているコードって感じで近接度からグラフ構造を作る。そうすると…ってそれがtonnetsじゃん。ギャフン。
今度の10月の一般公開の出しものについて考えていたのだけれど、せっかくアイトラッカーがあるのだからそれを活用したい。とりあえずはサッカードの反応時間を測ってランキングをつければ小中学生はめちゃ頑張るはず。これまでも伊佐研では「マッスルセンサー」(簡易筋電計測装置)を活用してたし。
それはそれとして、もうすこしなんかインタラクティブなことしたい。今考えているのは、アイトラッカーから視点計測して、視線の位置を使ってsupercolliderでなんか音を出させる。tonnetz上での視線の位置によって出る音を決める。
位置によって出る和音がカテゴリカルに変わるだけだとつまんないので、Chordataで見た図みたいに、使う音に重みをかけてやる。たとえばc-g-eの三角形のど真ん中だとCメジャーコードだけど、c-g-eとc-a-eの三角形の間だとAm7になる。
画面描画はprocessingにやらせる。そうするとeye tribeからマウス代わりの入力を取って、それをprocessingで描画して、oscで通信してスパコラで音鳴らす。手間はかかるがプログラミングを覚えれば可能だろう。
じゃあc-e-gとc-ds-gの間だとどうなるのだろう?CメジャーとCマイナーがなると不協和音なのでそれを避けるとしたら、tonnetzを斜めに切り取ってCメジャーダイアトニックコードだけにしたバージョン、つまりこれのfig2cか。
C-Amの中間系だけでは面白くなくって、C-Fの中間系(=Cmaj7)とかAm-Dmの中間系(=Dm9)とかも作れると面白い。ではそのときはどのようにこの三角形を貼りあわせたらよいのだろう?3次元にすればいいのか。
だからそっち方面から詰めてゆくと、アイトラッカーよりはKinectかLeapMotion使ったほうがよいということになってしまう。じゃあアイトラッキングだったらなにが効果的な出力かという方向から考えたほうがよさそうだ。使える情報は位置だけではなくてサッカードの向き、速度もある。
課題の最初の画面の中心では7音全部が鳴ってるんだけれど、音のフィードバックだけを頼りにして探索していくといい和音のところが出てくる。これをウォーリーを探せ課題をやっているときに重ねてやって、音で強化して視覚探索をコントロールしてやる。(<-もはや一般公開と関係ないし)
サッカードの特徴から考える。じっと留まるのではなくて、アチラコチラに動くのがサッカード。そしていつ目が動いているかはほとんど意識しない。動いている瞬間はサッカード抑制で視覚が使われない。だからサッカードのタイミングで画像を変えるとchange blindnessが誘導できる。
そういうわけで、Processing + SuperColliderでTonnetz上の平面をクリックしたら音が鳴る、というのをじっさいに作ってみた。
ここまでならSCなくてもできるが、もうちょっと音を工夫してみようと思う。
あとはEye TribeがMacに対応するのを待って、アイトラッカーからの入力で音を出せるようにする。今日はここまで。