Audio MixerをMIDIコントロールする

前置き

SOL2のオーディオミキサーはオートメーションに対応しています。 簡単に言えばオーディオミキサー上でオートメーションライトをONにし、 後は再生中にパラメータを変化させるだけでその変化を記録、 以後同じ場所で同じようにパラメータの変化を再現してくれます。

ところでオートメーションを記録すると、 出力ポートがオーディオミキサーになったMIDIトラックが新しく作られます。 そこには各パラメータの変化が、各々に対応したコントロールチェンジ(以下CC) で記録されています。 つまり、これは逆に解釈するとオーディオミキサーのパラメータをCCで操作できるという事です。

という事で、リストエディタでもって自由自在にオーディオミキサーを操作できるよう、 CCとオーディオミキサーのパラメータとの対応関係を書いていきたいと思います。

なお、表中に現れる「CC」という列はコントロール番号を表しています。 例えばCCが7となっている場合、それはコントロール7番(GM規格ならボリューム)を意味しています。

マスターモジュール

まずトラックビューでMIDIトラックを一つ作ります。 そしてこのトラックの出力ポートを"[A]Master (AudioMixer)"に設定します。 あとはこのトラックにブロックを作り、以下の表を参考にCCを並べてください。

CC チャンネル 対象 値の解釈
7 1 Volume 対応表参照の事
8 1 Pan (GMのPanと同じ)
19 # Effect Plugin# 64以上でOn、64未満でOff
83 1 Mute 64以上でOn、64未満でOff

表中の#は任意の数値に置き換えてください。 例を挙げると、CCの19番をチャンネル2に出力すると上から2番目のエフェクトプラグインをON/OFFできます。

なお、マスターチャンネルではパンのCCが10番でなく8番になっているので注意してください。

チャンネルモジュール

まずトラックビューでMIDIトラックを一つ作ります。 そしてこのトラックの出力ポートを"[A]CH# (AudioMixer)"に設定します (ただし#は操作したいオーディオチャンネル)。 あとはこのトラックにブロックを作り、以下の表を参考にCCを並べます。

CC チャンネル 対象 値の解釈
7 1 Volume 対応表参照
10 1 Pan (GMのPanと同じ)
19 # Effect Plugin# 64以上でOn、64未満でOff
80 # EFF# Send 64以上でOn、64未満でOff
81 # AUX# Send 64以上でOn、64未満でOff
82 1 Solo 64以上でOn、64未満でOff
83 1 Mute 64以上でOn、64未満でOff
91 # EFF# Send Level 対応表参照
92 # AUX# Send Level 対応表参照

表中の#は任意の数値に置き換えてください。 例えばCC19番の値を0としてチャンネル2に出力すると、上から2番目のエフェクトプラグインがOFFになります。

なお、EFF SendのPre/Post切り替えや出力先Busの設定は操作できないようです。

BUSモジュール

まずトラックビューでMIDIトラックを一つ作ります。 そしてこのトラックの出力ポートを"[A]BUS# (AudioMixer)"に設定します (ただし#は操作したいBUSのチャンネル)。 あとはこのトラックにブロックを作り、以下の表を参考にCCを並べてください。

CC チャンネル 対象 値の解釈
7 1 Volume 対応表参照の事
10 1 Pan (GMのPanと同じ)
19 # Effect Plugin# 64以上でOn、64未満でOff
83 1 Mute 64以上でOn、64未満でOff

表中の#は任意の数値に置き換えてください。 例えばCC83番を値127でチャンネル1に出力すると、そのチャンネルがミュートされます。

AUXモジュール

まずトラックビューでMIDIトラックを一つ作ります。 そしてこのトラックの出力ポートを"[A]AUX# (AudioMixer)"に設定します (ただし#は操作したいAUXのチャンネル)。 あとはこのトラックにブロックを作り、以下の表を参考にCCを並べてください。

CC チャンネル 対象 値の解釈
7 1 Volume 対応表参照の事
83 1 Mute 64以上でOn、64未満でOff

表中の#は任意の数値に置き換えてください。 例えばCC7番を値100で出力すると、ボリュームゲインが0dBに設定されます。

エフェクトモジュール

まずトラックビューでMIDIトラックを一つ作ります。 そしてこのトラックの出力ポートを"[A]EFF# (AudioMixer)"に設定します (ただし#は操作したいエフェクトモジュールの番号)。 あとはこのトラックにブロックを作り、以下の表を参考にCCを並べます。

CC チャンネル 対象 値の解釈
7 1 Volume 対応表参照
16 1 Pan1(画面左側) (GMのPanと同じ)
17 1 Pan1(画面右側) (GMのPanと同じ)
18 1 Input Level 対応表参照
19 # Effect Plugin# 64以上でOn、64未満でOff
80 # EFF# Send 64以上でOn、64未満でOff
81 # AUX# Send 64以上でOn、64未満でOff
83 1 Mute 64以上でOn、64未満でOff
91 # EFF# Send Level 対応表参照
92 # AUX# Send Level 対応表参照

表中の#は任意の数値に置き換えてください。 例えばCC92番の値を71としてチャンネル4に出力すると、 上から4番目のAUXモジュールのチャンネル4に-6.82dB減衰した音声を出力するようになります。

CC値とdB値の対応表

VolumeやEFF Send Levelなどで解釈される、CC値とdB値の対応表です。 「CC値」の列にはCC7番などに指定する値、 「dB」の列にはCC値に対応するdB単位の音量が書いてあります。 ただ、全部はとても書ききれないので約5刻みで書いておきます(苦笑)。

例:CC7番を95 ... ボリュームが-1.36dBに。

CC値 dB
127 6.00dB
120 4.38dB
115 3.23dB
110 2.08dB
105 0.92dB
100 0dB
95 -1.36dB
90 -2.50dB
85 -3.64dB
80 -4.77dB
75 -5.91dB
70 -7.05dB
65 -8.18dB
60 -9.32dB
55 -10.91dB
50 -13.18dB
45 -15.15dB
40 -17.73dB
35 -20.00dB
30 -24.55dB
25 -29.09dB
20 -34.00dB
15 -39.00dB
10 -50.00dB
5 -62.40dB
0 -∞dB