「Domino と Reaper v0.999 の連携」の不足を補う。
目次:
始めに:
「Domino と Reaper v0.999 の連携」(参考ページ)では VST プラグイン TX16Wx の使い方について、あっちだこっちだとリンクに任せきりにして書くのを怠(なま)けていたので、ずっと気になっていた。そのあたりの言訳はあとがきでさせてもらうとして、このページではそのリンクに頼っていた部分をもう少し細かく説明しようと思う。
そして後半では Reaper v0.999(Reaper)で TX16Wx を使っていて発生した誤動作を報告し、あわせてその予防・救済方法を説明する。
- VST プラグインTX16Wx の使用方法(目次へ戻る)
最初に TX16Wx を使う目的について再確認しておく。私の場合は次の 2 行で言い尽くせる。
- DAW で複数のサウンドフォントを使い分ける。
- 自分で音源を作成する。
今回は、TX16Wx のサウンドフォント・プレイヤーとしての機能について話を進めるので、1 番目の項目がメインテーマになる。2 番目の項目、TX16Wx の音源ファイル(プログラム)作成機能もとても重要で興味深いのだが、これについてはプログラム作成の進行状況や結果を見ながら、ブログ、別ページなどで報告しようと思う。
サウンドフォントについて説明するのは「1.VST プラグイン TX16Wx の使用方法 :3)TX16Wx のバンク」以降になるので、今はとりあえず下に挙げる二つのポイントを頭の片隅に入れておいて頂きたい。
複数のサウンドフォントを使い分ける方法のポイント:
- 使いたいサウンドフォントを全部 TX16Wx 専用のバンクに変換する。
- 使いたいプログラムは必ず TX16Wx 専用バンクから選択する。プログラムはどのバンクからでも自由に選択できる。
- 1)各種コンポーネントのダウンロードとインストール(目次へ戻る)
MIDI Yoke のダウンロード:
- ダウンロードサイト MIDI-OX へ行き、画面左のメニューで MIDI Yoke を選択する。
- Download 画面を選択し MIDI Yoke NT 1.75 (163K 09-23-07) Download Now をクリックする。
VST プラグイン TX16Wx のダウンロード:
- ダウンロードサイト TX16Wx(CWITEC MUSIC SOFTWARE)へ行き Download now をクリックする。
- 新しく開かれたページから TX16Wx Software Sampler 2.4.1h Setup (Win32).msi をダウンロードする(2016/01/09 現在)。
サウンドフォントのダウンロード:
- ギター・・・・・32MbGMStereo.sf2(ダウンロード先はここ)
- オルガン・・・上に同じ。
- ベース・・・・・A320U.sf2(
timidity 付属。ダウンロード先はここ) ドラムス・・・・KDrum.sf2(ダウンロード先はここ)
KDrum.sf2 はリンク切れとなっている。残念ながら、新しいダウンロードサイトは見つけられなかった(2018/04/01)。
追記:
2018/08/03 に【ナカオカ】さんとおっしゃる方から現在有効なリンクをご提供頂いたので、下記に表示させて頂く。これらのリンクは移動後ただちにダウンロードが始まるので、その旨ご承知おき頂きたい。
ナカオカさんにはこの場を借りて再度お礼を申し上げたい。ありがとうございました!
KDrum.sfpack ダウンロードサイト:
Domino 音源定義ファイル作成ツールのダウンロード:
- TAKABO SOFT Domino 関連ツール集
- MIDI Yoke と TX16Wx のインストール
MIDI Yoke と TX16Wx は msi 形式のインストーラーを使う。
msi 形式のファイルのインストールについては別ページの「Windows 8.1 で msi 形式のファイルをインストールする」を参考にして頂きたい。
MIDI Yoke のインストールが成功すると、Windows 8.1 の場合はコントロールパネルに MYokeNT(32ビット)というアイコンが追加される。 パネル画面右上にある [表示方法] をカテゴリからアイコンに切り替えると確認できる。
MIDI Yoke には exe 形式のインストーラーもあるが、私は Windows Vista でこれを使って、アンインストールできないなど 2 ~ 3 の不具合が発生した(※)。Windows 8 では正常にインストールできた。
TX16Wx はインストールが成功しても外から見て分かる変化はない。
64 bit OS の場合は C:\Program Files( x86 )\Steinberg\VSTPlugins フォルダの中に TX16Wx.dll が配置されていれば OK だ。
追記(2017/07/23):
Windows 10 で MIDI Yoke を使用すると、使用できる MIDI ポート数が 8 本に限定されるという問題が発生する。仮想 MIDI ケーブルの LoopMIDI を使えばその問題は解決する。
LoopMIDI のダウンロード先: Tobias Erichsen
参考記事:MIDI Yoke と loopMIDI ― Windows 10 で使う仮想 MIDI ケーブル
- サウンドフォント
KDrums.sf2 はダウンロード時は zip ファイルに圧縮されている。
これを解凍すると KDrums.sfpack という、これもやはり圧縮ファイルが現れる。 このファイルの解凍に関しては専用のツールが必要だ。ツールの入手方法はこちらのサイトを参考にして頂きたい。
32MbGMStereo.sf2 を TX16Wx で使うと低音楽器全体がおかしな状態で再生されるので、ベースは使い物にならなかった。timidity では何ともなかったので相性の問題なのだろう。最初は A320U.sf2 のベースを使ったが、今は自作のベース音源を使っている。
※この問題は msi で上書きインストールして解決した。
ただしこの記事で使っている図は exe ファイルでインストールした時にキャプチャーしたものだ(戻る)。
- 2)Domino と Reaper の MIDI ポート・チャンネル設定(目次へ戻る)
この項では Domino と Reaper の MIDI ポートとチャンネルの設定方法と、3 種類の設定例を説明する。
設定例にはそれぞれ一長一短があるが、実際の曲作りでは、ミックスしてそれぞれの特徴を生かすということで良いと思う。
- MIDI ポート・チャンネル設定画面
設定そのものはとても簡単だ。
Domino は [トラックのプロパティ] から [ポート(R)] と [チャンネル(C)] を設定する。プロパティ設定画面は、トラックを右クリックして表示されるメニューから選択する。
Reaper はトラックから開く [MIDI Input] 選択画面で [In From MIDI Yoke:番号] と [Channel:番号] を設定する。 [MIDI Input] 選択画面は、トラックの左側の赤いボタンを右クリックして表示させる。
Domino の図で [ポート] の設定が [A: MIDI Yoke NT:1] と表示されているが、これは Windows Vista で exe 形式のインストーラーを使った時の名残だ。
Reaper の 図の表示もやはりおかしくなっている。通常は Domino は [ポート名:Out To MIDI Yoke:番号] 、Reaper は [In From MIDI Yoke:番号] と表示される。
どちらにしても――
[Out To MIDI Yoke:n] = [In From MIDI Yoke:n] = [MIDI Yoke のポート(n)]
(n = 1,2,3…16)
となるので、これ以降は MIDI Yoke のポートのことを単に「MIDI ポート」、または「ポート」などと言い、MIDI チャンネルは単に「チャンネル」と言う事にする。
- 設定例 1:複数の Domino トラックに 複数の MIDI ポート、複数の Reaper トラック(Return)
最も単純な設定。
Domino の各トラックにそれぞれ異なる MIDI ポートを割り当て、Reaper のトラックにも Domino と同じ MIDI ポートを割り当てる。
設定対象 | MIDI ポートとチャンネルの設定 |
---|---|
Domino | 各トラックのプロパティの [ポート] に、異なる番号の MIDI ポートを割り当てる。 [チャンネル] は「1」(※)を選択する。 |
Reaper | 各トラックの [MIDI Input] に、異なる番号の MIDI ポートを割り当てる。 ポート番号は Domino の [ポート] と同じ番号を設定して、チャンネルの番号も Domino の [チャンネル] と同じ番号を設定する。 |
TX16Wx | Reaper のトラック 1 本あたり 1 個追加する。プログラムスロットも 1 本追加する。 プログラムスロットの [midi] フィールドは Reaper と同じチャンネル番号を設定する。 |
※チャンネル番号は「1」でなければダメということはない。自分でルールを決めて 1~16 の範囲内の好きな値を 1 個選べば良い。
チャンネル番号は [All Channels] を指定してもかまわないが、この設定では MIDI ポート 1 本につき 1 本のチャンネルしか使わない、ということは認識しておいて頂きたい。
上の図で TX16Wx で音符マークの見えるコントロールがプログラムスロットだ。
[midi] フィールドの左横に「Ch01」と表示してあるのこのプログラムスロットの名前だ。これは好きな名前を付けておけばよろしい。
MIDI ファイルを使う場合の Domino の設定など:
- 環境設定の SMF を選択し、[書き出すトラック(E)] 項目のドロップダウンで [演奏トラックのみ] を選択する。
- 書き出す時は、対象トラック以外を全部ミュートしてから [SMF 書き出し(M)] を実行する。
- 設定例 2:複数の Domino トラックに 1 本の MIDI ポート、複数の Reaper トラック(Return)
Domino プロジェクトの標準の設定。
Domino の各トラックには同じ番号のMIDI ポートを 1 本だけ割り当て、振り分けはチャンネルで行なう。
設定対象 | MIDI ポートとチャンネルの設定 |
---|---|
Domino | 各トラックの [ポート] には同じ番号の MIDI ポートを割り当てる。 [チャンネル] はトラックごとに異なる値を(基本的には)連番で設定する。 |
Reaper | 各トラックの [MIDI Input] に同じ番号の MIDI ポートを割り当てる。 ポート番号は Domino の [ポート] と同じ値を割り当て、チャンネルは Domino の [チャンネル] と同じ番号順に設定する。 |
TX16Wx | Reaper のトラック 1 本につき 1 個追加する。 プログラムスロットも 1 本追加する。プログラムスロットの [midi] フィールドは必ず Reaper と同じチャンネル番号を設定する。 |
下の図をクリックして MIDI ポートとチャンネル設定が「設定 1」と違っているのを確認して頂きたい。TX16Wx は「設定 1」と同じ図を使っている。
Domino のチャンネルの設定で「(基本的には)連番で・・・」と言っているが、図の例ではテストのため「連番」ではなく {1,3,5,7} という奇数の順列に設定してある。こういう場合は、当然 Reaper の方も {1,3,5,7} の順列で設定しなければならない。
参考ページの中で「MIDI ファイルの再生で『あれ?』というような不具合が出ていて、まだその解決方法が分かっていない状況だ(2015/01/16 現在)」と言っているのは、この設定を使った時のことだ。
これは Domino の [設定例 1] で出力した MIDI ファイルを [設定例 2] で再生しようとしたためにそうなったということが分かっている。
MIDI ファイルを使う場合の Domino の 設定など:
- 環境設定は「設定例 1」と同じ。
- 書き出す時は、対象トラック以外を全部ミュートしてから [SMF 書き出し(M)] を実行する。
- 設定例 3:複数の Domino トラックに 1 本の MIDI ポート、1 本の Reaper トラック(Return)
TX16Wx のマルチティンバー音源としての設定。
Domino の各トラックに同じ番号の MIDI ポートを 1 本だけ割り当て、振り分けはチャンネルで行なう。これは「設定例 2」と同じ。Reaper のトラック数と TX16Wx の使い方が「設定例 2」とは大きく異なる。
設定対象 | MIDI ポートとチャンネルの設定 |
---|---|
Domino | 各トラックの [ポート] には同じ番号の MIDI ポートを割り当てる。 [チャンネル] はトラックごとに異なる値を(基本的には)連番で設定する。 |
Reaper | トラックは 1 本だけ用意する。 ポート番号は Domino の [ポート] と同じ値を割り当て、チャンネルは [All Channels] に設定する。 |
TX16Wx | Reaper のトラックに 1 個追加する。 プログラムスロットを Domino のトラックと同数追加する。プログラムスロットの[midi] フィールドは Domino の [チャンネル] と同じ番号順に設定する。 |
下の図をクリックして Domino のチャンネル設定の値と TX16Wx の [midi] フィールドの値が同じ番号順になっているのを確認して頂きたい。
この設定は他の二つの設定例とは違い、MIDI ファイルの処理を Reaper のトラック 1 本でまかなっている。その Reaper に設定された 1 個の TX16Wx は、個々のチャンネルに、それぞれ異なるプログラムを割り当てることができる ―― TX16Wx のユーザーマニュアルでは、この設定のことを「完全にマルチティンバーな設定」と言っている。
MIDI ファイルを使う場合の Domino の設定など:
- 環境設定は「設定例 1」と同じ。
- 書き出す時は、書き出し対象のすべてのトラックを演奏状態にしてから [SMF 書き出し(M)] を実行する。
- 3)TX16Wx のバンク(目次へ戻る)
この項では TX16Wx のバンクについて説明するが、最初に簡単だが重要な注意事項を挙げておく。
Reaper では TX16Wx にサウンドフォントや、TX16Wx 専用バンクなど読み込んだ状態をプロジェクトに保存できない。バンクを読み込んだ状態のプロジェクトを保存・終了する時は、次のような手順を実行するのがもっとも安全で確実な方法だ。
プロジェクト保存・終了時のバンクの処理:
- プロジェクト終了前に、[shift] + [Save bank] または [Save bank] ボタンでバンクを保存する。
- [shift] + [ゴミ箱] をックリックして、バンク全体を削除してからプロジェクトを保存・終了する。
※プロジェクトを再読み込みした時に、[Load bank/performance] ボタンでバンクを読み込む。
- オリジナルバンクとカスタムバンク
TX16Wx には、1 本のサウンドフォントを丸ごと専用プログラムファイルなどのファイル集合体に変換、保存する機能がある。音源の設定はこの集合体からプログラムファイルを読み込んで行なうのだ。
いま、この機能を使って変換保存したものの全体を「オリジナルバンク(仮)」と言うことにする。
TX16Wx では、1 個以上のオリジナルバンク(仮)から複数のプログラムを選択して、より使い勝手の良い小規模なバンクを構成することもできる。いま、そのようなユーザー作成バンクのことを「カスタムバンク(仮)」と言うことにする。
この二つの(仮)バンクの間には、保存されるファイルの集合体と、TX16Wx の外部で行うファイル操作の自由度に関して、かなり目だった違いがある。下にその概略を示す。
ファイル操作の注意点はそれなりに重要だと思うので、これは必ず目を通して頂きたい。
用語 | 保存オブジェクト | 保存オブジェクトの明細 |
---|---|---|
オリジナルバンク(仮) | 異種ファイルの集合体とサブフォルダ |
|
カスタムバンク(仮) | 2 本のファイル |
|
オリジナルバンク(仮)の注意点:
- 保存フォルダ内のファイル名の変更、削除、サブディレクトリへの移動などは原則禁止。
- フォルダ外へのファイルの移動、他のディレクトリへのコピペなどは原則禁止。
- 保存フォルダごとならば、ディレクトリの変更、他の PC への移動、コピペなどを実行することができる。
カスタムバンク(仮)の注意点:
- オリジナルバンクと同じフォルダ内に保存するのは原則禁止。
- 他の PC への移動、コピペなどは不可。
- 同一 PC 内ならば、パフォーマンスとのペアを保ちつつ、すべてのファイル操作が実行できる。
先ほど仮の名前を付けた二つのバンクには、バンクファイルと、バンクファイルに付随するパフォーマンスファイルが必ず含まれている。
カスタムバンク(仮)には、プログラムファイルと wav ファイル、およびそれらを格納する Samples フォルダは含まれない。両者でファイル操作上の違いが出るのはこの一点を見ただけでも当然と言える。
TX16Wx でバンクを読み込むということは、両者に必ず含まれる 2 種類のファイルの中から、拡張子「txbank」のバンクファイルを読み込むということを意味している。なので、これ以降の説明でバンクの読み込みについて言う時は ――
保存の時は、(仮)バンクのようなファイル集合体のことをバンクと言うことにする。時にはその境界があやふやになるかも知れないが、その場合は文脈から判断して頂きたい。
- オリジナルバンクの作成(Return)
ではまず、サウンドフォントからオリジナルバンクを作成する手順から説明する。
オリジナルバンクとても簡単に作成することができる。下の図を見れば余計な説明はいらないんじゃないかと思うくらいだ。
ポイント:
バンクファイルに「サウンドフォントと同じ名前を付けて保存」 = オリジナルバンク作成完了!
図のポイント:
- 変換対象は拡張子が「sf2」形式のサウンドフォントファイル。
- 変換後のファイル集合体を保存するためのフォルダの名前を、サウンドフォントと同名にしている(推奨)。
- あえてプログラムスロットを複数用意する必要はない。
保存されるファイル:
- バンクファイル(拡張子「txbank」)
- パフォーマンスファイル(拡張子「txperf」)
- プログラムファイル(拡張子「txprog」)
- Samples フォルダ(wav ファイル格納)
バンクファイルとパフォーマンスファイルの役割:
- バンクファイルを読み込むと、オリジナルバンク内のすべてのプログラムとパフォーマンスファイルが TX16Wx に読み込まれる。
- パフォーマンスファイルが読み込まれると、オリジナルバンク保存時に TX16Wx のプログラムスロットに設定されていたプログラムが、アクティブに(復元)設定される。
続いて画面操作の手順を説明する。
これは参考ページから該当部分を引用して、このページの内容に沿うように編集し直したものだ。プログラムスロット 1 本で複数のオリジナルバンクを作成する場合は、この手順を繰り返す。
オリジナルバンク作成手順:
a)サウンドフォントを読み込む
[Load bank] ボタンをクリックしてファイルダイアログを開き、使用するサウンドフォントを選択する。
b)バンクファイル(オリジナルバンク)に名前を付けて保存する
[Save bank] ボタンの上のドロップダウンにサウンドフォントの名前が表示されていることを確認する。
もし「New Performance」 と表示されていたら、サウンドフォントが本当に使用可能になっているかどうかをチェックする。何か問題があるようならば、少し下に書いてある「サウンドフォントの削除」の手順ですべてを削除し、サウンドフォントを再度読み込む。
[ Shift ] + [Save bank] ボタンをクリックしてファイルダイアログを開き、あらかじめ用意しておいたフォルダにバンクファイル(オリジナルバンク)を保存する。
オリジナルバンクの場合は、バンクファイルを保存すると一緒にすべてのオブジェクトが保存される。これでオリジナルバンクの作成は完了だ。簡単だったでしょ?
c)サウンドフォントを削除する
役割の済んだサウンドフォントを削除する。
下図のツールチップにあるとおり [Shift] + [ゴミ箱] をクリックすると全部削除することができる。ディスクから削除される訳ではないので、安心してどうぞ。
[Shift] を押さないでゴミ箱をクリックすると、表示されているプログラムスロットだけが削除されて wav ファイルのデータはすべて残ってしまう。その場合はもう一度処理をやり直す。
- カスタムバンクの作成(Return)
複数プログラムを読み込む:
カスタムバンクに組み込む複数のプログラムをオリジナルバンクから読み込む。
下の図は、プログラムの読み込みから、カスタムバンクの新規作成までの流れを表している。
ポイント:
- パフォーマンスファイルとバンクファイルに「名前を付けて保存」 = カスタムバンク作成完了!
- 先にパフォーマンス、次にバンクの順に保存する。間違えたらやり直す。
図のポイント:
- TX16Wx は異なるオリジナルバンクのプログラムを読み込むことができる。
- オリジナルバンクが異なる場合は、同じ名前のプログラムファイル、wav ファイルを読み込むことができる。
- 1 個のプログラムスロットに複数のプログラムを読み込むことができる。
- ファイル保存用のフォルダに、カスタムバンクと同じ名前を付けることは、むしろ推奨しない。
保存されるファイル:
- バンクファイル(拡張子「txbank」)
- パフォーマンスファイル(拡張子「txperf」)
バンクファイルとパフォーマンスファイルの役割:
- バンクファイルを読み込むと、リストアップされたすべてのプログラムとパフォーマンスファイルが TX16Wx に読み込まれる。
- パフォーマンスファイルが読み込まれると、カスタムバンク保存時に TX16Wx のプログラムスロットに設定されていたプログラムが、アクティブに(復元)設定される。
画面操作:
ポイントで書いているとおり先にパフォーマンスファイルを保存する。
[shift] + [Save performance] をクリックして、名前を付けて保存する。このように明示的にパフォーマンスを保存するのは、新規作成時の一回だけで良い。
次にバンクファイル(カスタムバンク)を保存する。
[Shift] + [Save bank] をクリックして名前を付けて保存する。名前はパフォーマンスと同じにするのが無難だろう。今は新規作成なので、[Shift] キーを押すのを忘れてはいけない!
- カスタムバンクの読み込みと保存(Return)
カスタムバンクを読み込む:
読み込みはサウンドフォントと同じ画面操作でバンクファイルを読み込む。カスタムバンクの読み込みのフローは下の図のとおり。
図のポイント 1:
- 白抜きの矢印の始点が読み込まれるファイル。保存時にはこの矢印の向きが逆になる。すべての(編集済み)プログラム、(加工済み)wav ファイルも保存される。
- バンクに付随するパフォーマンスはあるが、その逆はない。
図のポイント 2:
- バンクの絶対参照のリストに従って、異なるオリジナルバンクからプログラムファイルと wav ファイルが読み込まれる。
- パフォーマンスは、バンクの相対参照によって読み込まれる。
- パフォーマンスの「プログラムスロットの設定」には、そのプログラムスロットが使うプログラムへの絶対参照が 1 個含まれる。
カスタムバンクにプログラムを追加する:
カスタムバンクを読み込んだ状態で新しいプログラムを読み込み、そのままカスタムバンクを上書き保存すれば、新しいプログラムがカスタムバンクに追加される。
カスタムバンクからプログラムを削除する:
左図のメニューの左上コーナー部のところに工具(レンチ)アイコンがある。これをクリックしてメニューを表示させ [Re-order performance/program] を選択する。
右図に示すウインドウが開いたら、プログラムリストの中から削除するプログラムを選択して、下部にある [Delete] ボタンをクリックする。[OK] ボタンをクリックしてウインドウを閉じて、カスタムバンクを上書き保存する。
- カスタムバンクの実例(Return)
カスタムバンクには、フルパス名が違えば、同じ名前のプログラムファイル、wav ファイルを複数個追加することができる。これは、異なるオリジナルバンクの同じ名前のプログラムを聞き比べるという目的にはとても都合の良い特徴だ。
下の 2 枚の図は、それぞれ異なるオリジナルバンクからカスタムバンクに追加した、[Power] という名前のドラムスのプログラムを選択した状態を示している。
このように TX16Wx は出自(しゅつじ)の違う二つの同名のプログラムを、異なるプログラムとして正確に扱っている。
- 4)TX16Wx のパフォーマンスとプログラム(目次へ戻る)
- パフォーマンスの機能
パフォーマンスを理解するには機能面から入るのが分かりやすい。
下の枠囲みはかなり簡略化した内容だが、これだけでもパフォーマンスの大事なところは理解して頂けるだろう。後の説明は自分で書いといて言うのも何だが、読むのがかなりメンドくさい内容なので、読み飛ばしてもらって全然かまわない。
パフォーマンスの機能:
TX16Wx のプログラムスロットを、プロジェクト、またはパフォーマンス保存時の状態に復元する。ただしバンクは復元しない。
パフォーマンスの実体の構造。たぶん xml ドキュメント:
- プログラムスロットのリスト
- プログラムスロットの設定(プログラム名、MIDI チャンネル、Audio 出力など)
- プログラム本体(プロジェクト限定オプション)
パフォーマンス実体のフロー:
- a)TX16Wx の設定 ⇒ Reaper ⇒ プロジェクトの保存
- b)プロジェクトの読込み ⇒ Reaper ⇒ TX16Wx の設定
※パフォーマンスとプログラム本体は、まず間違いなく xml ドキュメントだ。
両方ともプロジェクトファイルに渡される時は Reaper 仕様のテキストに変換される。逆の時はもちろん xml ドキュメントに戻される。
Reaper のプロジェクトファイル内には、パフォーマンスと、パフォーマンス内にリストアップされたプログラムスロット(複数可)が使用するプログラムの本体が保存されている。
プロジェクトが読み込まれると、パフォーマンスとプログラムスロットは Reaper 経由で TX16Wx に渡される。
TX16Wx はパフォーマンスのリストに従って、プログラムスロットの配置とプログラムの設定を復元する。プログラムスロットの MIDI チャンネルや Audio 出力などの設定も同時に復元する。
パフォーマンスの説明:
パフォーマンスは MIDI チャンネルや Audio 出力に〈複数の〉プログラム〈スロット〉を割り当てる、アクティヴなマルチティンバーの完璧な仕組みであり、それらは親の DAW に対して開示される高位のアイテムだ――という説明が TX16Wx のユーザーマニュアルに書いてある(カッコ内の付け足しは説明図の解釈による)。
「アクティヴなマルチティンバーの完璧な仕組み」じゃ何のことか分からない。
「現在アクティヴなマルチティンバー〈音源〉設定のすべて」と読むことができるし「マルチティンバー〈音源〉の設定すべてを動的に実行する仕組み」とも読める。
困ったことに機能面から見ると、どちらもそれなりに的(まと)を得ているのだ。そのあたりの受け取り方は、実際に TX16Wx を使ってみてどう感じるかによって違っても構わないと思う。
プロジェクトファイル内にプログラムが保存されていることが分かったのは、単なる思いつきが発端(ほったん)だ。
パフォーマンスでプログラムスロットに設定されているプログラムファイルを、ディスクから削除するとどうなるんだろう、という好奇心からテストしてみたのだが、プロジェクトを読み込むとあっさりプログラムスロットと設定情報を復元してしまった。これは Cubase のプロジェクトでも確認している。
プロジェクトファイルの中身を見ていたら、何となくそうなりそうな気配があったのであえてバカをやってみたのだが、実際にそのとおりになるとはビックリだ。でも、さすがに wav データまでは持っていなかった。
パフォーマンスファイルの読み込みではこういうことは起きない。
あるべきところにプログラムがないと、ファイルダイアログが開いて「プログラムを探せ」と催促(さいそく)される。
- パフォーマンスの実例(Return)
下の図は [設定例 3] におけるパフォーマンスの実例だ。
このパフォーマンスは 1 個の TX16Wx に 4 本のプログラムスロットを配置して [midi] フィールドをチャンネルの順列で設定する仕様になっている。
パフォーマンスは複数読み込むことができる。
これは上の図のような状態を頻繁に切り替えて音源を聞き比べるのに便利だ。
ただしこの状態――複数のパフォーマンスがロードされた状態そのものは、プロジェクトに保存することはできない。
追記:(2016/01/25)
複数のパフォーマンスを使ってプログラムチェンジを実行することができる。
詳しいことは「技術関連のメモ帳」の「VST プラグイン TX16Wx の使い方 ―― プログラムチェンジ(Program Change)」に書いてあるので、参考にして頂きたい。
- プログラム(Return)
プログラムを専用フォルダーに保存する:
プログラムは TX16Wx 上からならば、オリジナルバンクとは別の場所に保存することができる。プログラムスロット上で [Shift] + [Save program] ボタンをクリックして別の場所を選択し、今の名前とは違う名前を付けて保存する。
オリジナルバンクの外に保存したプログラムは、オリジナルのプログラムとは別物(べつもの)になっているので、同じ PC 上ならどこのディレクトリにでも置くことができる。
下にオリジナルプログラムと別フォルダーに保存したプログラムの違いの例を示す。
二つのプログラムの違い:
- オリジナルプログラムの内容の一部。
- このプログラムが wav ファイルへの間接参照を持っていることが分かる。
[tx:path="Samples\YAMAHABBG1-Long.wav" ・・・ ]
- 別の場所に保存されたプログラムの一部。
- このプログラムが wav ファイルへの絶対参照を持っていることが分かる。
[tx:path="D:\Sound Font\Bass Yamaha BB\Samples\YAMAHABBG1-Long.wav"・・・]
こういう違いがあるので、多くの場合、この二つのプログラムは入れ替えがきかない。つまり別物なのだ。それが「今の名前とは違う名前」を付けなければならない理由だ。
Domino のプログラムと TX16Wx のプログラムの同期:
「技術関連のメモ帳」の「Domino と Cubase LE5 の連携」の中で、Domino と Tx16Wx のプログラム名をシンクロさせる方法を書いた。以下にその一部を引用する。
「Domino と Cubase LE5 の連携 「3.Domino の設定:Cubase で使用したいサウンドフォントを用意して Domino 用の音源定義ファイルを作成する」より引用:
サウンドフォントの本体の sf2 ファイルを使うのは Domino ではなく Cubase だ。
しかしこのサウンドフォントから Domino 用に音源定義ファイルを作成・登録しておけば、Domino と Cubase の使用楽器(プログラム)を合わせることができるので、曲作りがとても楽になる。
これが完全にできるのは、プログラムスロットにそれぞれ異なる MIDI ポートを割り当てた時 ―― すなわち「設定例 1」だけで、「設定例 2」、「設定例 3」のような場合は、もしプログラムがすべて異なるオリジナルバンクから選択されているとすると、見ることができるプログラムは 1 本だけになる。
ではそういう時、どのプログラムが見えると良いのか・・・と言うか、見えないと困るのは何だ?ということになるワケだが、答えは自(おの)ずから決まってくるんじゃないだろうか。
複数ユニットで構成されたプログラムの取扱い:
ドラムスなど、複数のユニットで構成されているプログラムを使用する場合は、そのプログラムが入っているサウンドフォントの音源定義ファイルを使う。
理由:
ドラムスはオリジナルバンクによって使用ユニットの種類、数などが異なることがあるので、Domino 側でそれらの配置を見ながら打ち込む必要がある。
ギターやベースなどの一つのユニットでできているプログラムは、どうしても見えなければ駄目だ!ということはない。
下の図がその設定例だ。
このトラックには Rock Organ を設定しているので、項目 [種類(K)] がメロディになっている。間違えた訳じゃない。
Domino のトラックで見ると、ここはデフォルトの(GrandPiano)になっていて、あまりいい感じはしないが、これはこれで仕方ないかと思っている。
どうしてもスッキリしたいのなら、ドラムス用に別の MIDI ポートを割り当てるというやり方もあるだろう。このあたりのことはユーザーが好きなように決めれば良いんじゃないだろうか。
- Reaper の誤動作の報告とその予防・救済方法 (目次へ戻る)
Reaper v0.999(Reaper)で VST プラグイン TX16Wx を使用していて、プロジェクト読み込みの時に Windows の例外(以下「Windows のエラー」)が発生し、Reaper が強制終了されるという事例が現在進行形で発生している。
以下にその誤動作の事例と、とりあえずそれを回避(かいひ)する予防方法を紹介する。
あわせて、この誤動作が原因で Reaper がまったく起動できなくなった場合の救済方法も紹介する。これは Reaper 起動時に、最後に保存したプロジェクトを読み込む設定が ON になっている場合に限り起きるトラブルだ。
この起動時のトラブルを未然に防止するには、事前にその設定を OFF にしておけば良い。このトラブルでとても困った状況に直面した当事者として、ぜひそうすることをお勧(すす)めする。
状況を打開するため色々とやったことを以下の文中では「テスト」と言っている。
最初に思いついた救済方法は Inspiron 530S( Inspiron )で検証したあと、Dynabook T552/58GKD( Dynabook )で実行して Reaper の起動に成功している。 それ以後のテストはもっぱら Dynabook の方で行った。
- 1)誤動作の事例(目次へ戻る)
最初の誤動作は Dynabook で Reaper が起動できないという形で発生した。
その後 Inspiron でも発生するのを確認しているので、Dynabook だけの問題ではないようだ。ただし Inspiron の方はめったにプロジェクトの読込みエラーは発生しない。
現象:
- Dynabook T552/58GKD( Windows 8.1 )
TX16Wx のプログラムスロットの総数が 4 本のプロジェクトを保存して、それを次回に読み込もうとすると Windows のエラーメッセージが表示され Reaper が強制終了される。
- Inspiron 530S( Windows Vista )
上と同じプロジェクトを読み込もうとすると、プログラムスロットの全部、または一部が削除された状態で読み込まれる。読み込めない時は Reaper が強制終了される。
※この事例のプロジェクトには「1.VST プラグイン TX16Wx の使用方法:2)Domino と Reaper の MIDI ポート・チャンネル設定」の設定例が全部含まれている。
※TX16Wx にロードされた wav ファイルの総数は 73 本、ファイルサイズの合計は約 3.75 MB。
囲みの中の数値がボーダーラインということではない。プロジェクトの構成がそうなっていた、という事実を書いている。
しかしプロジェクトの TX16Wx からプログラムスロット(スロット)を適当に 1 本削除すると誤動作は発生しないので、何かの数値がボーダーライン近辺にあったらしい、ということは言えそうだ。
- 2)救済方法も兼ねる予防方法(目次へ戻る)
最初に救済方法も兼ねた予防方法を紹介する。
これは色々テストしているうちに偶然見つけた方法だ。Audio ドライバーというターゲットは見つけたが、ではそれの何が問題なのか、という疑問の答えは明らかになっていない。
しかし、この方法は Reaper の設定画面で実行できる安全で確実な方法なので、特に複数の Audio ドライバーを使い分けているような人には、この予防・救済方法を推奨する。
予防・救済方法の実行手順:
- プロジェクトを読み込む前に [オーディオシステム] ドロップダウンで、プロジェクト保存時とは違う種類のオーディオシステムを選択する。ただし Wave Out と Direct Sound の切り替え対象は、必ず ASIO でなければならない。
- プロジェクトを読み込む。その後 [オーディオシステム] を常時使っている設定に戻す。
※ ASIO ドライバーがなければ、適当なドライバーをインストールしておく必要がある。
この予防・救済方法を実行しないでプロジェクトを読み込むと、Cubase LE5( Cubase )に付属していた ASIO ドライバー ASIO Direct X Full Duplex Driver と Reaper 付属の Wave Out、Direct Sound では、ほぼ 50 %の確率で誤動作が発生する。
ASIO 4 ALL v2 は一回だけ発生したような気がするが、記憶違いかも知れない。現在はまったく発生しない。
また Cubase に付属していた Generic Low Latency ASIO Driver でも、発生は確認していない。Kernel Streaming はテストができないので、言えることは何もない。
この方法は次善策だ。
事例のプロジェクトのスロットを 8 本に増やした(注 1)バージョンでテストしてみたところ、TX16Wx のスロットが 1 本減って 7 本になるという事例があった。
つまり、すべての誤動作をこの方法で防ぎ切ることはできないということだ
しかし Reaper の設定でひと手間かけるだけ、という実践(じっせん)上のメリットは大きいので、そんなにスロットを使っていない私自身はこの方法を実践(じっせん)している。
- 3)別の予防方法(目次へ戻る)
この記事はもともとこちらの方法を紹介するつもりで書き始めた。
途中で上に挙げた方法が見つかったので重要度が少し低下したが、それでもこれはある意味決定的な予防策だと思う。
問題を起こしそうなオブジェクトをクリアしてからプロジェクトを保存する、という至極(しごく)まっとうな発想からきている方法で、実行手順そのものはとても簡単だ。。
別の予防方法の実行手順:
プロジェクトを保存する前に次の手順を実行する。
- TX16Wx のバンク、パフォーマンス、またはプログラムを保存する。
- 保存が終了したら TX16Wx のバンク、パフォーマンスまたはプログラムを削除する。
次回プロジェクトを読み込んだ時に次の手順を実行する。
- TX16Wx の保存済みのバンク、パフォーマンスまたはプログラムを読み込む。
これは平凡(へいぼん)ながら安全でしかも確実な方法なので、おそらくどんな規模のプロジェクトでも対応できると思っている。
私自身は、今よりスロット数の多いプロジェクトに取り組む時があれば、この方法の方を習慣化した方が良いと思っている。プロジェクト読み込みの時に誤動作が発生する可能性がまったくないからだ。
- 4)Reaper が起動できない時の救済方法(目次へ戻る)
Reaper 起動時に、最後に保存したプロジェクトを読み込む設定が ON になっている状態で誤動作が発生すると、Reaper そのものが起動できなくなる。これはその時に実行する救済方法だ。
次にその方法を簡単な順にリストアップする。
個々の方法についての詳細な説明は特にいらないだろう。これらの方法は、誤動作を引き起こすオブジェクト――例えば今問題になっているプロジェクトや、TX16Wx の本体の TX16Wx.dll をロードできないようにする、という発想からきている。
なかでも、最後に保存したプロジェクトを操作する方法がもっとも安全で確実なので、ここではこの方法を強く推奨する。
救済方法:
- a )最後に保存したプロジェクトを別のフォルダーに移動する。または名前を変更する。
- b )TX16Wx.dll の名前の拡張子の部分を変更する。
- c )テキストエディターで REAPER.ini を開き、VST プラグインの参照項目を消去して上書き保存する。
※ Tx16Wx.dll と REAPER.ini のフルパスは次のとおり。32 bit OS の場合は Program Files に( x86 )は付かない。
C:\Program Files( x86 )\Steinberg\VSTPlugins\TX16Wx.dll
C:\Users\[ username ]\AppData\Roaming\REAPER\REAPER.ini
※TX16Wx.dll を TX16Wx.dll.old などと変更する。
TX16Wx の部分を変更しても効果はない。単にエイリアス(別名)とみなされる。
※特定のオブジェクトに対する参照を削除――または変更するという方法はまだ幾つかあるが、ここでは紹介しない。
TX16Wx に問題があるということは Inspiron で Reaper を操作していた時に分かった。もし Inspiron で Reaper が起動できなかったらおそらく何も分からなかっただろう。今回は運が良かった・・・それもものすごく良かったと思う。
参考:
参考として最初の誤動作の時に私が実行した方法を紹介する。
救済方法のリストの中の最後の、この中で一番めんどくさいのがそうだ。 これで Windows のエラーじゃなくて、TX16Wx のことで Reaper が何か文句を言ってきたら大当たり、という気持ちだった。
下の囲みは REAPER.ini の抜粋で、図は Reaper の警告メッセージ。期待した通り TX16Wx が使えないので設定どおりの音は出せないよ――と文句を言っている。
これが出たときはホント嬉しかった。 普段なら最も見たくない画面のひとつなのに、まさかこれを歓迎するような状況があろうとは・・・!
REAPER.ini からの抜粋:
[REAPER] dockheight=218 mixwnd_vis=1
・・・中略・・・
renderclosewhendone=1
vstpath=C:\Program Files (x86)\Steinberg\VSTPlugins
[verchk] lastt=1423059372 [audioconfig] mode=3 ks_srate=48000
・・・以下省略・・・
※太字・下線の部分を削除した。
Reaper の警告ダイアログ。
注 1:このテストは 1 個の TX16Wx に 8 本のスロットを配置したケースだ(トラック 1 本)。トラック 2 本として 1 個の TX16Wx に 4本ずつ振り分けてテストしたところ、このような現象は発生しなかった。(戻る)
前回の「Domino と Reaper v0.999 の連携」は、ちょっと「技術関連のメモ帳」に入れるには物足りない内容だった。
さんざん悪戦苦闘したわりには中身のない記事になったのだが、これは結局主題を絞り切ることができなくてそうなったと思っている。というワケで、今回は前回書き残したことだけを書くつもりだったが、書いているうちにどんどん長くなってしまった。書き始めは 2月 6日なので、1ヶ月以上もかかったことになる。
しかし今回は主題だけははっきりさせることができた。
ただ、Office ドキュメントならば図解でいけるようなところを文章で説明しているので、かなりメンドくさい書き方になっている。これはパワーポイントとかでフローチャートが描けるようになれば、スタイルを変えることができるかも知れない。
追記:(2016/01/25)
パワーポイントの図を入れて少し分かりやすくする工夫をしてみた。
ある程度説明を簡略化できるかと思ったが、できた所もあるが、逆に増えたところもある。今後もずっと見直しは続けるつもりでいる。
記事後半で紹介した Reaper の 誤動作は、Dynabook が修理から帰ってきたあとに発生している。
HDD を交換したので、Domino と Cubase LE5、Reaper は Windows8.1 へのアップグレード完了後にインストールした。そしていきなりブログに書いた大失敗だ。
私はてっきりアップグレードが不完全だったかと思ったが、これは不完全なのは私の方だったことがすぐ分かり、問題はあっさり解決した。
その後、外付け HDD に退避していたデータを復帰したり、リカバリーメディアのテストをしたり、ブログを書いたりと色々やりながらある日 Reaper を起動してみたら「何だこりゃ」な状況になっていたワケですな。
実は、このあたりの経緯はよく覚えていないのだ。
歳のせいもあるが、色々忙しかったので記憶の前後関係がかなり怪しくなっている。
とにかく Windows 8.1 で Reaper が起動できなくなったので、Vista の方の Reaper でテストを開始したところ、ある日ついにこちらでも Windows のエラーが発生した。
ただ、このエラーは私が KDrums のオリジナルバンクを壊したのが原因だ。
どうやら wav ファイルの読み込みか、またはスプリット作成で重大なトラブルが発生して Windows のエラーが発生したらしい。
災い転じてなんとやら・・・とはこのことだ。
これで Dynabook の方の問題が、プロジェクト読み込みに関係ありと当たりが付き、やがて TX16Wx のプログラムスロットや Reaper の [オーディオシステム] の設定が問題になることが分かったと、こういうワケだ。
記事の中で「ものすごく運が良かった」と書いた私の気持ちが少し分かって頂けると思う。
2015/03/10