VirusTIの音色を、Spireにコピーしてみる Part.2 OSC Classic編

DTM

Part.1をご覧になってない方はこちらへ。

スポンサーリンク

VirusTIのOSCILLATOR「Classic」を、Spireに反映させる

今回は、VirusTIのOSCILLATOR「Classic」を、Spireに反映させてみました。
まずは出来上がりGoogleスプレッドシートを貼ります。

計算式だらけで、分かりにくいと思います・・・。

変換例だけ、見てみてもOKです!

OSCILLATORのGoogle スプレッドシート

VirusTI OSCILLATOR1, 2 Classic (入力側)

青色セルのVirusTIの設定値をスプレッドシート に入力します。
Waveform Shapeは便宜上、ダイヤルの一番左を-100%、一番右を100%としています。
Sub Oscillatorはまたの機会に。

Spire OSC1,2 (出力側)

VirusTI側の値を元に、Spire向けの値を計算して出力します。
(phaseは今回は保留です)

Spireのパラメータ計算式
octaveQUOTIENT(Oscillator 1,2 Detune In Semiton,12)
Semitonの値を12で割った商の値
noteIF(Oscillator 1,2 Detune In Semiton > 0,
MOD(ABS(Oscillator 1,2 Detune In Semiton),12),
UMINUS(MOD(ABS(Oscillator 1,2 Detune In Semiton),12)))

Semitonの値を12で割った余りの値
(Semitonが負の値の場合は、Spireの値も負になる)
fineOscillator 2 Fine Detune * 500 / 128 + 500
Oscillator 2のみ。Detuneの値を反映
ctrlAIF(Oscillator 1,2 Waveform Shape > 0,
Oscillator 1,2 Waveform Shape * 10,
0)

Waveform Shapeのダイヤルが右側(Pluse側)にある場合のみ反映
ctrlBOscillator 1,2 Pulsewidth * 10
Pulsewidthの値(50〜99)を10倍して反映
wt-mixIF(Oscillator 1,2 Waveform Shape < 0,
1000 - (Oscillator 1,2 Waveform Shape + 100) * 10,
1000)

Waveform Shapeのダイヤルが左側(Saw等側)にある場合のみ反映

Wave3〜64の変換

VirusTI側にあるWave3〜64の波形は、明確にSpire側に変換することはできません。
仕方がないので、見た目が近いものを代用することにしました。

特殊波形の変換テーブル

実際に変換してみた

細かい説明だけだとアレですので、変換例をアップします。

実験1

実験1: VirusTI
実験1: Spire OSC1
実験1: Spire OSC2
VirusTI のOSCILLATOR1, 2の設定値
SpireのOSC1の変換値
SpireのOSC2の変換値

音を比較してみます。

VirusTIの音

VirusTIの音

Spireの音

Spireの音

当然ですが、やっぱりちょっと音が違いますね。

実験2

実験2: VirusTI
実験2: Spire OSC1
実験2: Spire OSC2
VirusTI のOSCILLATOR1, 2の設定値
SpireのOSC1の変換値
SpireのOSC2の変換

VirusTIの音

Spireの音

うーん。だいぶ違いますね。detuneが特に・・・。

次回

次回は、HyperSawの反映をしていきます。

コメント

タイトルとURLをコピーしました