Top Profile VST Plug In 自作VSTのすすめ Reason Skins 京都でTechnoライヴ どすえ Original Promotion Video
エンベロープモジュレータ
いわゆるADSRと呼ばれる部分をコントロールするものです。
ここで最初にあった「1番簡単なシンセ」をもう1度見てみましょう。
VCA(電圧制御アンプリファイ)に繋がっているのがエンベロープモジュレータ(ADSR)です。
ADSRはゲート信号(キーボードからの発音タイミング)を受けて動作します。
A Attack 立ち上がり
D Decay 減衰
S Sustain 持続
R Release 解放
これをどのモジュールに使用するかでADSRの意味が違ってきます。
例えば上記の様にVCAに適用した場合、Aは音の立ち上がり、Dは減衰を始める頂点、Sはキーを押している間の持続時間、Rはキーを放してから消えるまでの時間となりますが、これをピッチに適用すると…
Aは音程が低いところから始まり、Dで指定されたキー音、Sはそのキー音の持続時間、Rはキーを放してから下降していく時間という様になります。
この様に時間的な変化をつけるために使用するのがADSRです。
ちなみに単純に音量調整するならOsc→VCAでVolumeにSliderを繋げばいいんじゃないか?と思われますが、実はこれは相当効率が悪く、VCAもオーディオレート(たいていは44.1キロヘルツ)で動作するので、このシンセは一秒ごとになんと4万4100回もの計算を余計にさせられ、それがポリシンセであった場合はさらにポリ数分倍されるわけです。
SynthEditはスライダーを動かさない場合実質的な動作は何も起こらず、SynthEdit自体は休眠するためにCPUからは無視されるので、CPUリソースを消費しません。
同じことがADSRにも言え、発音する間(Sustain中)、ADSRは休眠モードに入ります。
やはりフラットな信号が出力されます。
つまり、パワーセーブモードにはいるわけです。
オシレータを除けば、VCAひとつとオーディオ出力は何も働いていません。
結局、事実上丸ごと一つのモジュールをフリーにしてやったわけです。
SynthEditのスクリーン上のそれぞれの「配線」の存在は約100サンプル(メモリ上で約400バイト)のオーディオバッファが確保されたことを表しています。
つまり、この最終案は毎秒4万4100回の演算のみならず、さらに毎秒8万8200以上のサンプルコピーを節約しているのです。
この例はベロシティーセンスを追加する際や、パンを追加する際にも役立ちます。
これは昔の非力なPCには非常に有効な機能ですが、最新のPCでも複雑なVSTを組むと結構なリソースを消費するので、結構バカに出来ない機能です。
今日はこれぐらいにしといたるわww