VST プラグイン TX16Wx の使い方 ― プログラムチェンジ(Program Change)

Software Sampler TX16Wx のプログラムチェンジはマルチティンバーに対応。

目次:

始めに:
1.TX16Wx のマルチティンバー音源化とパフォーマンスの概略(移動
1)TX16Wx のマルチティンバー音源化(移動
2)パフォーマンスの概略(移動
2.マルチティンバーセットアップを使うプログラムチェンジ(移動
1)TX16Wx の準備(移動
2)MIDI データ側の準備(移動
3)プログラムチェンジの実行(移動
3.普通のプログラムチェンジ(移動
1)マルチティンバーセットアップ型のパフォーマンスを使う(移動
2)パフォーマンスからバンクを作成する(参考:移動
あとがき:(移動

始めに:

今回は VST プラグイン TX16Wx のプログラムチェンジについて説明する。
TX16Wx のプログラムチェンジについては、TX16Wx User Manual の 42 ページ目から 43 ページにかけて、次のように説明されている。

TX16Wx User Manual-「10.3 MIDI/External controllers」プログラムチェンジの説明箇所(P42~43)の意訳文(カッコ内は訳者):

Program change mode 項目を設定することで、プログラムチェンジメッセージに対する TX16Wx 側の応答方法を決めることができる。

デフォルトの設定は、パフォーマンスを切り替えてプログラムチェンジを実行するようになっている。そうすることで、幾つかの完全なマルチティンバーセットアップの中から、好きなものを一つ選択することができる。

設定を「Program」に変更すると、TX16Wx はパフォーマンスを切り替えるのではなく、現在有効なパフォーマンスに配置されているそれぞれのプログラムスロットに割り当てられた、プログラム(そのもの)を切り替える。(By Bonkure)

プログラムチェンジの設定を説明する前に簡単なサンプル音源を聞いて頂き、引き続き TX16Wx をマルチティンバー音源化した設定例と、パフォーマンスの概略について簡単におさらいをする。
それから、マニュアルで言う「マルチティンバーセットアップ」を使う 2 通りのプログラムチェンジを説明し、マルチティンバーじゃない普通のプログラムチェンジへと説明を進める。

おさらいを読み飛ばして「2.マルチティンバーセットアップを使うプログラムチェンジ」から読み進めてもまったく問題ないが、サンプル音源だけは聞いておいて頂きたい。

TX16Wx  の用語の詳細については下の参考ページを見て頂きたい。
文中でも簡単な説明を付けることはあるが、それだけではたぶん用が足りないだろう。

参考ページ:Reaper で VST プラグイン TX16Wx を使用する

プログラムスロット、バンク、パフォーマンスなどの用語は、次の各項目で説明している。

  • 「2)Domino と Reaper の MIDI ポート・チャンネル設定」
  • 「3)TX16Wx のバンク」
  • 「4)TX16WX のパフォーマンスとプログラム」

使用した  DTM  ソフトウエア:

  • Domino(Ver 1.43)
  • Reaper v0.999(Reaper)
スポンサーリンク

 

  1. TX16Wx のマルチティンバー音源化とパフォーマンスの概略(目次へ戻る

マルチティンバーセットアップを使うプログラムチェンジの例として、簡単な 3 声のカデンツァを用意した。これは Domino で作成した、1 ポート 3 チャンネルの MIDI ファイルを Reaper にインポートして再生したものだ。サウンドフォントは TiMidity 付属の A320U.sf2 を使っている。

マルチティンバーセットアップを使ったプログラムチェンジの例

このサンプル音源が、Reaper の 1 本のトラック に配置された、やはり 1 本 のTX16Wx で鳴っているところがマルチティンバーなのだ。

最初の 2 小節がストリングス、次の 2 小節でブラスにプログラムチェンジして、最終小節は高音部だけ Violin にチェンジしているが、楽器(プログラム)の違いがお分かり頂けただろうか?私には低音楽器の ContraBass と Tuba の音色の区別が付けられなかった。

すでに知識をお持ちの方、また先を急ぐ方は、この項は読み飛ばして頂いてもまったく問題ない。でも次のポイントだけは頭の片隅に入れておいて欲しい・・・かな?

ポイント:

  • TX16Wx  をマルチティンバー音源化するということは、一つの TX16Wx に複数のプログラムスロットを配置して、それぞれ異なる MIDI チャンネルを割り当て、それぞれ(異なる)プログラムを設定するということ
  • パフォーマンスは、マルチティンバー音源化された TX16Wx の設定(プログラムスロット編成)の保存と復元を実行することができる。
  • TX16Wx をマルチティンバー音源にするための設定例

「ポイント」で書いたことにちょうど合う設定例が参考ページあるので、そこから諸設定についてまとめたテーブルを、少し書きかえて引用する。この項の説明はこのテーブルだけで十分だと思う。

参考ページ「2)Domino と Reaper の MIDI ポート・チャンネル設定」の「設定例 3:複数の Domino トラックに 1 本の MIDI ポート、1 本の Reaper トラック」のテーブルを引用:

設定対象 MIDI ポートとチャンネルの設定
Domino 各トラックの [ポート] には同じ番号の MIDI ポートを割り当てる。
[チャンネル] はトラックごとに異なる値を(基本的には)連番で設定する。
Reaper トラックは 1 本だけ用意する。
ポート番号は Domino の [ポート] と同じ値を割り当て、チャンネルは [All Channels] に設定する。
TX16Wx Reaper のトラックに 1 個追加する。
プログラムスロットを Domino  のトラックと同数追加する。プログラムスロットの midi フィールドは Domino のチャンネルと同じ番号順に設定する。
Cubase LE5(Cubase)では、TX16Wx を使えるインストゥルメントトラックで複数の MIDI チャンネルが使えないので、TX16Wx をマルチティンバー音源化することができない。なので今回は Reaper だけでテストしている。

パフォーマンス(拡張子「txperf」のファイル)は、保存した時点で有効なプログラムスロット編成 を記録する XML 形式のファイルだ。アプリケーションの設定ファイルのようなものだが、保存と読み込み、および変更が任意に実行できるという点で違っている。

プログラムスロット編成の項目リスト:

  • プログラムスロットの名前。
  • プログラムスロットに設定されたプログラムの名前(パスを含む)。
  • プログラムスロットに割り当てられた  MIDI  チャンネルの番号。
  • プログラムスロットのオーディオ出力先。
  • 音量(amp)、定位(pan)の設定値。
  • その他(send)の設定値。

※パフォーマンスは、上の項目をプログラムスロットの配置順に従って記録する。保存と読み込みについては以下のとおり。

  • 保存する = その時点でパフォーマンスの作成が完了する。
  • 読み込む = その時点でプログラムスロット編成が復元される。

下にサンプル音源で実際に使用したパフォーマンスの一つを例示するので、上のリストと見比べて頂きたい。
パスが見えてないぞ?・・・と言うなかれ。この例ではパフォーマンスとプログラムが同じディレクトリにあるので、相対パス表記になっているのだ。

 

  1. マルチティンバーセットアップを使うプログラムチェンジ (目次へ戻る
この章ではマルチティンバーセットアップという用語を、1 本の TX16Wx の中の複数のプログラムスロットの情報 ―― つまりプログラムスロット編成を記録した 1 本のパフォーマンスという意味で使っている。

1 本のプログラムスロットだけを記録するパフォーマンスもあるので、全部がそうとは言い切れないが、今はとりあえず『パフォーマンス = マルチティンバーセットアップ』ということにしておこう。

パフォーマンスを使うプログラムチェンジには、パフォーマンスそのものを切り替える方法と、パフォーマンス内のプログラムを切り替える方法の 2 通りがある。

これ以降は、前者を【パフォーマンスチェンジ】または「パフォーマンス切り替え」後者を【プログラムチェンジ】と言うことにする。

この次の項「パフォーマンスの読み込み」の図  [Program Tab] を見れば分かるが、プログラム番号には、例えば【peformance1-program2】というような紐づけはない。つまり「パフォーマンス内のプログラムを切り替える」のは、普通のプログラムチェンジを実行するのと同じことだ。

  • Program change mode  の設定

設定項目 [Program change mode] は、下にリストアップした手順を実行して設定する。設定画面は下の 3 個の図を参考にして頂きたい。

  • a)TX16Wx ウィンドウの右上部の [Setup] ボタンをクリックする。
  • b)画面左側の [MIDI/External Controllers] ボタンをクリックする。
  • c)切り替わった画面の最下方の設定項目 [Program change mode]パフォーマンスチェンジは【Performance】プログラムチェンジは【Program】に設定する。

TX16SetupButton
Setup

TX16MidiExButton
MIDI/External Controllers

TX16ChangeMod
Program change mode

  • パフォーマンスの読み込み
パフォーマンス切り替えによるプログラムチェンジには、当たり前だが、複数のパフォーマンスが必要だ。

下の 3 枚の図は、サンプル音源で実際に使った 2 本のパフォーマンスを 読み込ませた状態を示している。
中央と右の2 枚のリストは、左の図に見えるヘルプアイコンの左側のレンチアイコンをクリックしてメニューを表示して、[Re-order performances/programs] を選択すれば見ることができる。

必要なパフォーマンスを読み込んでしまえば、TX16Wx 側の準備は完了だ。あとは MIDI データの仕事になる。

TX16PerfSlot
Program Slot

TX16PerfTab
Performance Tab

TX16ProgTab
Program Tab

重要!!  Reaper プロジェクトの読み込みと保存に関する注意

プロジェクト読み込み後の注意事項:

Tx16Wx  を開いた時、パフォーマンスに【New Performance】、プログラムスロットに【New Program】が指定されていたら、使用するパフォーマンスを読み込んだ後に [Re-order performaces/programs]  ダイアログを開き、それぞれのタブ上で【New ○○】を削除する。

プロジェクト保存時の注意事項

Reaper のプロジェクトには複数のパフォーマンスを保存できない
保存時には、パフォーマンスを 1 個だけ残してあとのパフォーマンスを削除するか、または全部を削除しておく必要がある。

これを忘れると、次にプロジェクト読み込んで TX16Wx を開いた時に、パフォーマンスは正常に読み込まれない。その場合は、TX16Wx 上に何も表示されていなくても [shift] + [ゴミ箱] をクリックする。その後使用するパフォーマンスを読み込む。

  • MIDI  チャンネルの割り当て

既に参考ページから諸設定のテーブルを転載しているので、ここで付け加えることは特にない。下の図のように、Domino の 3 本のトラックにそれぞれ異なる  MIDI チャンネルが割り当てられていれば OK  だ。

Domino3Tracks

 

  • MIDI  データにプログラムチェンジメッセージを挿入する

パフォーマンスチェンジとプログラムチェンジは、両方とも同じ方法で実行する。MIDI データから見ればこの二つには何の違いもない。

プログラムチェンジの実行:

  • プログラムチェンジは、各  MIDI  チャンネルの データにプログラムチェンジメッセージを挿入して実行する。
  • MIDI チャンネルのデータに挿入するプログラムチェンジメッセージの値は、任意のパフォーマンス番号、またはプログラム番号を指定することができる。

パフォーマンスチェンジ :

MIDI  データのプログラムチェンジメッセージで使う値は、[Performance Tab] に表示されている数値に「1」を加えた値。

追記:2019/02/18

このページのパフォーマンスチェンジに関する記事は正しくない。

詳しいことはいずれこのページの改訂バージョンで説明するが、パフォーマンスチェンジの使い方を間違えていたことが分かった。このページのサンプル音源では、 たまたま間違いが表面化しないような設定だったため、誤った結論を導き出すことになってしまったのだ。

それと、改訂バージョンに添付するつもりで作成した音源があるので、とりあえず先に挙げておく。この音源の作成過程で上記の事実に気が付いた。

不十分なテストで間違った情報を提供してしまったこと、しかもそれを 3 年以上も放置してしまったことを心からお詫び申し上げる。

パフォーマンスチェンジのサンプル:

1-2 小節 > 弦楽器
3-4 小節 > 木管楽器
5-6 小節 > 金管楽器
7-8 小節 > 高音 2 本木管楽器と低音 2 本弦楽器

サンプル音源は 2 個のパフォーマンスを使っているので、1 本の MIDI チャンネルのデータで 2 種類のパフォーマンスを切り替えて使うことができる。
なので、この場合のパフォーマンスチェンジでは、全部で 8 通りのマルチティンバー音源を構成できることになる。下の図は実際に挿入したプログラムチェンジメッセージだ。

Track1ChangeMsg
channel 1

Track2ChangeMsg
channel 2

Track3ChangeMsg
channel 3

ここではパフォーマンス番号を、それぞれのプログラムスロットで(1,1,1),(2,2,2),(1,2,-)と指定している。「-」は設定値なしで、要素の順序は (channel1,  channel2,  channel3)となっている。

しかし、[channel 2] の最終小節のプログラムチェンジメッセージは本来は必要ないので、そこの値は無視できる。すると、実際に有効なパフォーマンス番号の指定は(1,1,1),(2,2,2),(1,-,-)ということになる。

つまり、最終小節は 1 本の MIDI チャンネルデータ(channel 1)に対してのみプログラムチェンジを実行している。これは普通のプログラムチェンジそのものだ。

意図してそうした訳ではない。私も読み直しているうちにそのことに気が付いた。迂闊(うかつ)な話だ。

プログラムチェンジ :

MIDI データのプログラムチェンジメッセージで使う値は、[Program Tab] に表示されている数値に「1」を加えた値。

ここにリストアップされているプログラムは、すべてプログラムチェンジで使うことができる。プログラムがどのパフォーマンスに属しているかということは、気にする必要はない

プロクラムチェンジの場合は、1 本の MIDI データで 6 種類のプログラムを切り替えられる。

3 本のチャンネル全部について考えると、この場合は(1,1,2),(1,2,1),(2,1,1)というふうに、プログラム番号が重複順列となるようなプログラム割り当てができるので、全部で 6 × 6 × 6 = 216 通りのマルチティンバー音源を構成できることになる・・・と思うけど、違っていたらごめんなさい。

  1. 普通のプログラムチェンジ(目次へ戻る

普通のプログラムチェンジとマルチティンバーなセットアップを使うプログラムチェンジの間には、準備や実施手続き上の違いというものがない。
違いがあるのは、プログラムチェンジの対象となる MIDI チャンネルデータの数と、用意するプログラムの数だけだ。

そういうことなので、プログラムチェンジその物の技術的な説明は第 2 章で済んでいるということにさせて頂いて、この章では、ちょっと看板に偽りありになってしまうが、プログラムチェンジで使う複数のプログラムの取扱いについて、Reaper にのみ焦点を絞って簡単に説明したい。

Cubase  は複数のプログラムおよびパフォーマンスを(Cubase  に割り当てられたメモリ容量の許す範囲内で)自由に使えるので、ここで説明すべきことは特にない。

  • 1)マルチティンバーセットアップ型のパフォーマンスを使う(目次へ戻る
Reaper  のプログラムチェンジでマルチティンバーセットアップ型のパフォーマンスを使う場合は、TX16Wx の設定項目 [Program change mode] を Program に設定する。

Reaper  でこの型のパフォーマンスを使う理由:

Reaper のプロジェクトには TX16Wx の複数のプログラム、複数のパフォーマンスの読込み状態を保存することができない。

例外的に、複数のプログラムスロットの編成を記録したパフォーマンスは保存することができる。つまり、Reaper で何のストレスもなしで複数のプログラムを扱えるのはこの型のパフォーマンスだけ、ということだ。

プログラムチェンジに使う複数のプログラムを一元管理できるオブジェクトには、この他にバンクがあるが、Reaper のプロジェクトにはバンク内のすべてのプログラムを保存することができない。保存できるのは、プロジェクト保存時にアクティブだったプログラム 1 個だけだ。

注意点:

Reaper のプロジェクトに保存できるプログラムスロット数は、1 個の TX16Wx につき 6 本程度が限界かも知れない。

かなり以前にテストした時だが、プログラムスロットを 8 本配置してプロジェクトに保存したところ、次の読み込みでは 7 本しか復帰されなかったことがあった。
6 本というのはその経験を踏まえて言っているだけなので、客観基準はない。

追記:2019/02/18

現在のプログラムスロットの状態をパフォーマンスとして保存すれば、その状態をプロジェクトに保存できる。私は少し前にそのことに気が付いた。その時は 7 本のパフォーマンスを使用した。
既存のパフォーマンスを使用している場合には、プロジェクト終了前にパフォーマンスを上書き保存する必要がある

Reaper  のプロジェクトでは、パフォーマンスやプログラムの保存状態を記録する文字列の長さに制限があるようなので、上の注意事項はそれ等の名前の長さや数に依存している可能性がある。その点は各位実験の上で確かめて頂きたい。

  • 2)パフォーマンスからバンクを作成する(参考:目次へ戻る

参考までに、マルチティンバーセットアップ型のパフォーマンスからバンクを作ってみる。バンクからマルチティンバーセットアップ型のパフォーマンスを作るのも、これと同じくらい簡単だ。

作成手順:パフォーマンスからバンクへ

  • a)パフォーマンスから不要なプログラムスロットを削除する。
  • b)プログラムそのものは削除されていないことを [Progrm Tab] で確認する。
  • c)パフォーマンスに新しい名前を付けて保存する。
  • d)バンクにパフォーマンスと同じ名前を付けて保存する。

※c)と d)の順番を間違えたらやり直すこと!

作成手順:バンクからパフォーマンスへ

  • e)バンクのプログラム数と同数になるように、プログラムスロットを追加する。
  • f)スロットの  midi フィールドが連番になっていることを確認する。
  • g)スロットにバンクのプログラムを 1 個ずつ順番に割り当てる。
  • h)パフォーマンスに新しい名前を付けて保存する。

パフォーマンスから不要なプログラムスロットを削除する:

左の図は  a)を実行しようとしているところ。
メニューには「Remove channel slots」と書いてあるが、マニュアルではチャンネルスロットではなく「Program slot」と表記している。私はマニュアルに従っている。

右の図は  b)の確認を実行しているところの参考図。

TX16RemoveSlot
Remove channel slot

TX16-1Split-6Programs
Program list

名前を付けて保存する:

下の図は d)のバンクの保存を実行しようとしているところ。
新しいバンクを保存する場合は、絶対 [shift] キーを忘れてはいけない。
もし忘れて「Save bank」を実行すると、ほぼ 100% の確率で Reaper が強制終了される。順序が逆になったが 、c)のパフォーマンスの保存は左隣のディスク 1 枚のボタンを使う。この時も [shift] キーを忘れずに!


Save bank as ・・・

あとがき:目次へ戻る

ここのところ、私は曲作りそっちのけで音源作りに集中していたので、プログラムチェンジの必要性とか重要性については何も考えていなかった。

しかし Slap Bass の音源ファイルを作っているうちに、ピッチベンドとプログラムチェンジについてはしっかり把握しておく必要があると考えるようになった。
この前のメモ帳「VST プラグイン TX16Wx の使い方――ピッチベンド(Pitch Bend)の設定・他」は、その必要に駆られて書いた第一弾だ。

エレクトリックベースのスラップ奏法は、親指で弦を叩くサムピングと、指で弦を引っ張るプラッキングという、まったく発音方式の違う二つのテクニックを使う。
それにスラップ奏法で多用されるミュート音のことを考え合わせると、一つの Slap Bass の音源ファイルで必要なすべての音色をカバーするのはちょっと無理なハナシなのだ。

ということで、第二弾としてこのメモ帳を書いたのだが、スラップベースのラインを作るには普通のプログラムチェンジで十分なので、この内容は明らかな過剰説明だ。
ただマニュアルや TX16Wx のデフォルト設定が「マルチティンバーなプログラムチェンジが使えまっせ、ダンナ!」と迫ってくるので、たまには素直に開発者の意図に従ってみようか・・・と思ったら、こういう内容になったワケだ。

スポンサーリンク

スポンサーリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です