サウンド波形のオブジェクト化

随分前にiTunesのビジュアライザーみたいな音の波形を表示することが出来ってTouchDesignerでどうやって作るのかな?という話題が挙がって、途中まで検証していたのを忘れていました。サンプルのシンセファイルでは、File CHOPで.aiffファイルを読み込んでいますが、Audio In CHOPでマイクから直接音を入力することも可能です。マイクの音やオーディオを扱うオペレータはCHOPS系なのですが、ここではCHOPデータをSOPデータ化、3Dオブジェクト化してレンダリングすることで、波形を表示しています。

image101006_01

音の波形をオブジェクト化のは意外と簡単です。ポイントは波形をenvelope CHOPで通常のチャンネル化すること、CHOP to CHOPでチャンネルデータをオブジェクトのアトリビュートに割り当てるという2点です。ここで説明している一連の流れはサンプルのGEO1、GEO2のネットワークになります。

image101006_02

まず、オーディオデータを通常のチャンネルデータにEnvelope CHOPで変換します。波形の形をどのように取るかは、EnvelopeBoundsでタイプを選び、Envelope widthで長さを調整します。

image101006_03

波形の形や高さを各種CHOPSで調整した後、null CHOPにつなげておきます。このチャンネルデータをラインオブジェクトの座標のY値として使用することで、音の波形をオブジェクト化します。lineオブジェクトを用意して、CHOP to SOPをつなげます。CHOPパラメータに先ほどのnull CHOPを参照先として設定し、channel Scopeで参照チャンネルを指定します。(サンプルのオーディオファイルはステレオで左右を表すchan1、chan2の2つの波形があります。)Attribute Scopeで参照チャンネルをオブジェクトのどのアトリビュートに使用するか指定します。ポイントのY座標はP(1)になります。
Enveropeでチャンネル化、CHOP to SOPで3Dオブジェクト化のフローで色々な波形をオブジェクト化することが出来ます。GEO3はsinカーブをオブジェクト化しています。

Download Touch File