2019年03月10日

Transition Control の制御波形に expSin を追加する。

何気に読んでいた大塚明氏のサイトからexpSinという概念を仕入れたので、

WS001755.JPG

これをあまりピーク値が重なって欲しくないオシレーターのtransitionコントロールに応用できないか、実験で試すことにした。



まずは下準備として、GNU/Octaveでヴォリュームを制御するための波形を生成する。 テンプレートには、以前記述したSin波を生成するコード使った。 Sinの手前にexpを書き足した後、カットアンドトライでオフセット値を探っていく。

WS001760.JPG

WS001756.JPG

WS001757.JPG

WS001758.JPG

WS001759.JPG

当初は12bit精度で縦軸を設定したファイルを単体で試してみたが、音像の分解能が上がって、和音が美しく聞こえるようになった反面、OverDrive系の出音にパンチが無くなってしまった。

これでは本末転倒なので、処理ステップ及びRAMの消費量が上がってしまうが、波形を使い分けられるようにスイッチ機構を組み込んで、旧来のファイルと設定が共用できるようにシステムの改変を行った。

Screen Shot 2019-03-10 at 16.23.42.png

問題は、現用していた11bitスケールの波形との整合性で、アッテネーターの値をどう工夫しても境界値のコントロールが行えなくなってしまった。 結局、expSine波のスケールを11bitに縮小して再度試してみたところ、スムーズな動作を確認できた。

WS001755.JPG

確かにこれは便利な機能で、和音演奏時のミックス具合を変更して、出力の飽和状態をコントロールすることが可能となった。

ちなみに、大人しい音色を使用した時には、効果の違いを殆ど感じられなかった。

Transition波形の切り替えスイッチには何故かアナログ部のスイッチ機能が「死んだ」状態で放置していたLevelControlを充て、出力端子のステイタスを波形の切り替えに反映させている。
posted by Yasuski at 17:40| LaVoixski