2018年07月02日

Open.Theremin@Wavetableの仕様変更を行う

出力波形を観る限り、無用に再生レートをイジった結果とはいえあまりにもガタガタな低域や、高い周波数帯で発生する不快なビート等、現状の音声出力のクオリティーはイマイチ感が否めない。

vlcsnap-2018-06-19-18h42m35s995.png

そこで思い付いたのはWavetableのデータ長を二倍に延伸することで、これならデータが疎になる状態を少しでもマシにすることが出来る。 現状2048段階のデータを4096段階にスケールアップするのだ。

また、Sin波とCos波を合成することで、より複雑な波形を生成できそうなので、この機会に2種類のサイン波を登録してみることにした。

で、実際に運用を行ってみたところ、何故かSin波の再生時に盛大なノイズが発生してしまう。 不思議な事にCos波の場合は妙なノイズは確認されない。 原因は定かではないがひとまずSin波を全廃してCos波を12種類、三角波と鋸波、それとExpなインパルスの3種類の合計15種類に登録波形をダイエットした。

実験の結果、低域/高域共に音質がスムーズに好変したので、データ長の12bit化は正解だった。 

同時に今回は出力の純ステレオ化を行ってみた。 現状でもデータ的には一定の時間を専有しつつ、出力が行われていなかっただけなので、信号を読みだすルーティンにDACへのラインを追加して実験を行った。

ここで発生する問題は、OverloadMode専用に誂えた外部DACのアッテネーターと、信号レベルのミスマッチで、同様に本来Overload出力を受け付けない方の回線にこれを入力した場合も同様に問題が発生する。 これを回避するには、アッテネーターのグランド側をPhotoMosRelayでコントロールして簡易なレベルシフトを行う回路を追加する方法がある。 この機能によって、レベルのミスマッチをある程度は回避できそうだ。 実際に回路を製作するには至っていないが、下準備として条件分岐で外部にフラグを出力する回線を確保してある。

image1.jpeg

実験の結果、なるほどステレオ化は面白いのだが、事前に効果的な出音を研究して仕込みを行う必要を感じさせられた。

posted by Yasuski at 03:37| open.Theremin