エクスクルーシヴ・メッセージ上級者向け設定編 #2

レイヤー機能の設定方法
SC-88Proは内部に音源ブロックを2系統それぞれ16パート、系32パート持っています。
レイヤー機能とは、シーケンサーの一つのトラックを使用して2つ以上のパートをコントロールしようというものです。
現実には1つのトラックで32のパート全てを鳴らす事も可能ですが、発音数の関係もあって現実的では有りません。
SC-88Proでは初期設定の状態では、MIDI in A と MIDI in B の各ポートに対応してパートグループA とパートグループBと呼んでいます。
しかし32のパート全てを管理する為、SC-88Proではブロックナンバーをつけて管理しています。
初期設定状態時の対応は以下の通りです。
この時注意したいのがパートナンバーとブロックナンバーの順番が素直に対応していない点です。
順番通りに対応させる場合は最初は00から始まるはずですが、00パート10になっています。
尚ブロックナンバーは16進数になっています。

Midi Ch

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Part a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14 a15 a16 b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11 b12 b13 b14 b15 b16
Block 01 02 03 04 05 06 07 08 09 00 0A 0B 0C 0D 0E 0F 11 12 13 14 15 16 17 18 19 10 1A 1B 1C 1D 1E 1F

レイヤー機能を実現しようとした場合、同一パートグループ内では異なるブロックが同じMIDI チャンネルで受信する設定に変更する
必要が、 異なるパートグループどうしでは、同じMIDI ポートで受信する設定に変更する必要があります。
(以下のアドレスの表記中 x はブロックナンバーです。)


受信MIDI ポートの設定
各ブロックの受信ポートは以下のエクスクルーシヴ・データで設定します。
これはSC-88Pro全体に関わるパラメータでシステム・モード・セットと同じシステム・パラメータです。


name adress data 説明 初期設定値
Channel Msg Rx Port
(A part group)
00 01 0x 00〜01 00=port A
01=port B
00
Channel Msg Rx Port
(B part group)
00 01 1x 00〜01 00=port A
01=port B
01

受信MIDI チャンネルの設定
各パートのMIDI チャンネルは以下のエクスクルーシヴ・データで設定します。
この時エクスクルーシヴ・データを送ったポート(例,Aポート)に対応するパートをコントロールする時はアドレスが「40 ** ** 」のデータを
エクスクルーシヴ・データを送ったポートと異なるポート(例,Bポート)に対応するパートをコントロールする時は
アドレスが「50 ** ** 」のデータを使用します。

name adress data 説明 初期設定値
Rx.Channel(A port→A port)(B port→B port) 40 1x 02 00〜0F,10 1〜16,off パートNo.と同じ
Rx.Channel(A port→B port)(B port→A port) 50 1x 02 00〜0F,10 1〜16,off パートNo.と同じ

以上の事をふまえた上で、具体例を説明したいと思います。
この例については全てMIDI in A port にデータを送ってコントロールするものとします。

同一パートグループ内でのレイヤー設定
この例ではシーケンサーの1つのトラックのデータで2つのパートをコントロールしようとするものです。
但し、音色の設定などは除くものとします。(全く同じものを重ねて演奏しても意味が無いですので。)
a1 と a2 のパートを同じMIDI 1ch で演奏する事にした場合の例です。
まず同一パートグループ内でのレイヤーですので(この場合はAグループ)MIDI in port の設定は必要ありません。
a1 は初期設定ではMIDI 1ch ですので変更の必要はありませんので a2 のMIDI 設定を MIDI 1ch に変更します

adress data
40 12 02 00


この設定をする事によってMIDI 1ch の信号が全てa1 と a2 の2つのパートに渡される事になります。
という事はプログラムチェンジ他、コントロールチェンジ・データも渡されてしまう事になってしまう為、
2つのパートが全く同じ音色の設定になってしまいます。
これではレイヤーに設定する意味がありませんので、各パートを別々の設定にする為2つの方法があります。
一つはレイヤー側のパート(a2)の音色設定を MIDI ch に依存しないエクスクルーシヴ・データで設定する方法と
もう一つ、コントロールチェンジ・データで設定を終えた後にMIDI の受信ch設定を変更する方法です。
前者はデータの順序を意識せず入力出来ますが、データ量が多くなるのと後での修正が面倒だという欠点があります。
後者はデータ量が少なく、修正が容易な反面一部のシーケンサーソフトでは正常に再現されない可能性があります。
これは曲の再生の前にエクスクルーシヴ・データを初期設定データとして全部まとめて出力するソフト(CakeWalk等)が
存在するからです。 この場合MIDI ch 設定のエクスクルーシヴ・データもまとめて出力するので、 結局 MIDI 2ch のデータは
行き場が無くなり a2 のパートはMIDI 1ch のデータで設定される事になるので注意が必要です。
使用するシーケンサー・ソフトのマニュアルを御覧になって、適した方法を選んでください。


異なるパートグループでのレイヤー設定
パートグループAのa1とパートグループBのb1を同じMIDI 1ch で演奏する事にした場合の例です。
この時 a1 と b1 は共にMIDI受信chはMIDI 1ch ですのでMIDI受信chの設定は必要ありません。
ここで b1 をMIDI in A port の信号でコントロールする為にMIDI受信ポートの設定を変更します

adress data
00 01 11 00


音色の設定は前項と同様2つの方法がありますが、エクスクルーシヴ・データで 音色設定する場合
レイヤー側のパート(b1)を異なるポート側から 設定の変更を行うので
アドレスが 「50 ** ** 」のデータを使用します。
コントロール・チェンジ・データで設定する場合は面倒ですが、先にb1のMIDI受信ポートの変更、
MIDI 1ch でコントロール・チェンジ・データで音色設定(この時 a1, b1 共に同じ設定になる)
b1 のMIDI受信ポートを元のBポートに設定を戻し、
MIDI 1ch でコントロール・チェンジ・データで音色設定(この時 b1 はそのままで a1 のみ設定が変更される)
その後再び b1 のMIDI受信ポートをAポートに変更にて完了。
これでBポートを使用出来ない環境でもパートグループBをレイヤーとして使用する事が出来ます。


付録
音色設定用エクスクルーシヴ・データの主なものを簡単にあげておきます。

name adress data 説明 初期設定値 CC#
tone number 40 1x 00 00〜7F 0〜127 00(0) CC#00
program change 40 1x 01 00〜7F 1〜128 00(1) Program Change
pitch key shift 40 1x 16 28〜40〜58 -24〜+24(半音) 40(0)  
part level 40 1x 19 00〜7F 0〜127 64(100) CC#7
part panpot 40 1x 1C

00,01〜40〜7F

-64(ランダム),-63〜0〜+63 40(0) CC#10
chorus send level 40 1x 21 00〜7F 0〜127 00(0) CC#93
reverb send level 40 1x 22 00〜7F 0〜127 28(40) CC#91
pitch fine tune 40 1x 2A 00 00〜40 00〜7F 7F -100〜0〜+100(セント) 40 00(0) (RPN#1)
delay send level 40 1x 2C 00〜7F 0〜127 00(0) CC#94
vibrato rate 40 1x 30 00〜40〜7F -64〜0〜+63 40(0) (NRPN#8)
vibrato depth 40 1x 31 00〜40〜7F -64〜0〜+63 40(0) (NRPN#9)
cutoff freq 40 1x 32 00〜40〜7F -64〜0〜+63 40(0) CC#74(NRPN#32)
resonance 40 1x 33 00〜40〜7F -64〜0〜+63 40(0) CC#71(NRPN#33)
env.attack 40 1x 34 00〜40〜7F -64〜0〜+63 40(0) CC#73(NRPN#99)
env.decay 40 1x 35 00〜40〜7F -64〜0〜+63 40(0) (NRPN#100)
env.release 40 1x 36 00〜40〜7F -64〜0〜+63 40(0) CC#72(NRPN#102)
vibrato delay 40 1x 37 00〜40〜7F -64〜0〜+63 40(0) (NRPN#10)
tone map number 40 4x 00 00〜03 00=selected
01=55map
02=88map
03=88Pro map
00 CC#32