TMIDIには、他のプレイヤにない機能としてMIDIエミュレーション機能が上げられます。
たとえば、私はSC-88を所有していますが、SC-88PRO用のデータを聞くとまったく音が出なかったり、一部出なかったりします。そこでMIDIエミュレーション機能を使用するととりあえず音が出るようになります。
また、Sound Blaster32のようなエクスクルーシブをまったく受け付けない音源でもTMIDIがエミュレートすることにより、ドラムを正常に鳴らしたり、音程がずれてしまうことを避けたりします。
SC-33やGS互換と言われている大半の音源では、MT−32やCM−64用の曲が聴けませんが、パッチテーブルを搭載させることにより聞けるようになります。
SC-88PROなどの上位機種で、SC-55などの下位機種用のデータを聴く場合は PRO本体の MAPボタン を押さなくてはいけませんが、これを自動的に切り替えることができます。
SC-88などのGS音源で、MU80用データのバンクセレクトによるドラムマップへの切替をエミュレートします。
これらの一部機能は今までのプレイヤーにも存在していましたが、TMIDIの特色はドキュメントファイルから自動検索して適切に設定するところと、使用する音源を指定すればあとは曲ごとに適切に設定されるということです。
ドキュメントファイルから自動検索することによりヒット率は90%程度になります。 また、演奏モニタの楽器名表示と連動しており、データの対象としている音源によって楽器名テーブルが自動的に変わります。
とくに難しい知識を必要としません。環境設定でMIDIエミュレーションに関する設定をすれば完了です。これで使用音源側に関する設定は終わりです。
演奏する場合は対象音源に注意しなければなりません。液晶部分の右下部分に自動判別の結果が表示されます。期待する音源と異なれば、リストウィンドウで右クリックをして、TDF演奏設定ファイルの編集をしてください。
MIDIファイルの対象音源は以下の順序でサーチされます。
また、サーチされるキーワードは、TMIDI.EXEに内蔵されている設定ファイルによって記述されています。この設定ファイルは、TMIDIのメニューのオプション(O), MIDI設定, エミュレーション, 内蔵定義ファイル書き出しボタンを押すと、取得できます。[keyword]セクションにキーワード一覧があります。
TMIDIには、MIMPI ver3.7以降に備わったWRD表示機能とほぼ同等の機能を備えています。
他のWindows用WRDプレイヤーと違い、256色モードにする必要がありません。フルカラーモードの場合でもそのまま表示できます。ただし当然ですが、かなりのマシンパワーが必要です。
また、TMIDIはDirectXの機能を利用して、フルスクリーン状態で表示することが出来ます。256色モードの場合、パレットチェンジ時の走査線の横切りを押さえることが出来ます。
WRDウィンドウを右クリックすると、WRDの設定ダイアログが出てきます。また、最大化時にダブルクリックすると、液晶部分も消えて、本当の意味でのフルスクリーン表示になります。
MIMPI WRDの仕様は、規格と呼べるほど完成された仕様ではないため、いくつか挙動不審な点があり、それをエミュレートするのは大変困難です。そのため、いくつかのWRDファイルでタイミングずれを起こすものもあります。
BUCHIさん作の演出君メカの一部のコマンドに対応しています。
対応しているコマンドは、^FONTM, ^FONTR, ^FONTP, ^XCOPY(method=0,1,8,10), ^VCOPY, ^VSRES, ^VSGET, ^PAL です。これ以外のコマンドには対応していません。
正常表示できない演出君メカ用の巨大WRDをメールで送るのは止めるようにお願いします。非常に困っています。(しかも毎度同じWRDファイル 電話代がかかってしょうがない)
新WRD規格である、Sherry WRDに対応しています。詳細は、4.5 Sherry WRDについてをご覧ください。
DECOPで表示される DVフォーマットの歌詞データを表示する事が出来ます。この機能は、Nissyさんが作られた DV2WRD32.DLL を利用します。今回のリリースでは、Nissyさんの都合により、今のところ単独公開はせず、TMIDIに添付してのリリースとなります。
リスト機能とは、いくつかの曲データを登録し、曲順をファイルに記録しておく機能です。保存したリストファイルはいつでも順番に演奏できます。
リスト機能を使うには、まず ファイル(F)−新規リストの作成(N)を選んで空のリストファイルを作ってください。作られると直ちに編集画面に入ります。登録したい曲を右側のリストボックスから選んで左側へ登録していってください。また、エクスプローラからドロップすることもできます。登録順序を変えるには、左側のリストボックスの中でドラッグアンドドロップをしてください。
アルバム機能とは、いくつかの曲順リストファイルを登録して、一発で呼び出せるようにする機能です。
アルバムメニューの 追加 を選ぶと、リストファイルを追加することが出来ます。エクスプローラ等からドロップすることも出来ます。
TMIDIでは、MIDIデータに付属しているドキュメントファイルを閲覧する機能があります。拡張子が TXT,DOC,ホソク,HED のファイルすべてを読み込みます。また、ファイルが見付からなかった場合は同じディレクトリにあるドキュメントファイルを読みに行きます。
LZH機能を利用すると、まったく関係の無いドキュメントファイルが読まれる場合があります。?:\WINDOWS\TEMP\TMIDILZH ディレクトリのなかにごみが溜まっているとこのようなことが起きます。定期的に中を清掃してください(^^;
ごみはTMIDIが異常終了,もしくはWindowsがハングアップした時に発生します。
MIDIに関連する設定ができます。
使用するMIDIポートを設定します。3つまで指定する事が出来ます。同じデバイスを複数指定しても無視されます。
MIDIエミュレーション機能の設定をします。通常の使用では、使用楽器にはあなたの使用している音源を、対象音源は自動判別、フィルター機能は (なし) に設定してください。
演奏に関する設定をします。
割り込み間隔は、演奏処理する間隔を設定します。短ければ短いほど精度の高い演奏が出来ます。ただし、CPUの占有率が高くなり、他のソフトの動作が遅くなります。
MIDIメッセージ転送レートの調整をチェックすると、Roland系の音源で起こるMIDIメッセージのとりこぼしを抑制する事が出来ます。この現象はシリアルMIDI I/Fの38.4kbps(M(PC-2)を使用した場合に頻発します。詳細はMIDIメッセージ転送速度の問題をご覧ください。副作用として、演奏がもたりやすくなります。(そもそも、もたるデータのほうがおかしいのだが)
DLLタイプオプションは、使用するDLLを選ぶ事が出来ます。良く分からない人はいじらないでください。必ず16bitで使用してください。(NT使用時は除く)
これはFAQなんですが、Windows95を使用している方が、訳も分からず32bitを選ぶようです。32bitにするとOSの構造上、必ずテンポが不安定になります。詳しくは、Microsoft社のWWWサイトにある、Knowledge BaseのQ153400 How to Use Multimedia Timer Services on Windows 95を参照してください。
独立ウィンドウ指定は、TMIDIのメインウィンドウとは独立のフレームで表示するウィンドウを指定します。
実行制御には、メインスレッド(演奏スレッドとは別です)の実行優先順位を指定します。このオプションはExpert専用です。素人の方はいじらないでください。危険です。この値を高くすると、相対的に演奏スレッドの順位が下がるので演奏が不正確になります。また、この値を下げすぎると動作が遅くなり、次の曲へ進まなくなったりします。
DirectDrawをロードしない オプションをチェックすると、DirectDrawライブラリとのリンクをしなくなります。DirectDrawを使用すると動作が不安定になる方がチェックしてください。起動すら出来ず、この環境設定を開けない方は DDNOT.REGファイルを実行してください。このオプションが有効になるように設定されます。
CPUアイドル時間を使わない オプションをチェックすると、演奏モニタなどのポーリング頻度が下がります。この結果、動きが鈍くなったり、表示が不正確になります。このオプションをチェックしてもほとんどCPU占有率は下がりません。ただ、タスクマネージャなどのパフォーマンスモニタを見ると常に 100% と出てしまうため、気になる人がいるようです。気になるひとはチェックしてください。また、インテリマウス、xmouseなどのCPUアイドル時間の検出をして動かすアプリケーションを使用した場合は弊害が出るので、このオプションをチェックしてください。
演出君メカフォントファイルには、演出君メカでデフォルトで読み込まれるフォントを指定します。何の事か良く分からない人は設定しないでください。
高速描画オプションをチェックすると、描画の一部を端折って描画を高速にします。多少描画過程が見えなくなったり、コマ落ししたような感じになりますが、最終的な表示結果は同じです。
全画面表示設定には、全画面表示にしたときに使われるビデオモードを指定します。DirectDrawの動作が不安定な人は、推奨どおり "色数を変更しない" を選んでください。それ以外の方は 256色 を選んだほうが得です。
パレットチェンジ時のVSYNC同期は、普段は VBLANK検出のみ を選んでください。良く分からない人はいじらないでください。
左側の機能一覧から機能を選んで、右側の欄でショートカットキーを定義します。Windowsの仕様上、F10キーとBSキーは設定できないようです。"なし"にしたい場合はBSキーを押してください。
デフォルト状態に戻したい場合は、HKEY_CURRENT_USER\Software\TK\KeyConfigTable以下を全て削除してください。
MIDIポートと、MIDIエミュレーションの使用楽器情報をセットにして、すばやく切り替える事が出来ます。
演奏モニタには、各チャンネルのパラメータ、発音中のノートが表示されます。また、マウスでクリックさせることにより、そのパラメータをリアルタイムで変更することが出来ます。
演奏モニタには次のようなパラメータが表示されます。
Vibrato,Filter,Envelopeの部分はNRPNを表示します。NRPNボタンを押して、淡色表示から、黒文字にすると、画面レイアウトが変わります。
in C/Amボタンは、コードの表示をC/Amに移調して表示します。
マウスを操作することにより、各パラメータを変更する事が出来ます。
左(右)クリックをするとパラメータが1増え(減り)ます。また、左ボタンを押しながら右を押すとパラメータの変化が早くなります。
現在のバージョンのプログラムチェンジについては、数字の部分へのクリックのみ対応しています。楽器名、マップ名へのクリックには対応していません。
また、チャンネル番号の部分をクリックすることにより、チャンネルごとのミュートを制御することが出来ます。左クリックをするとミュート状態の切替。右クリックで全チャンネルミュート解除、左ダブルクリックでソロ演奏ができます。
発音しているノートからコードを解析して表示することが出来ます。転回形も表示されます。分数コードとUSTについては、いい解析アルゴリズムが考えられなかったため、表示できません。
コード表示はそのチャンネルで鳴らしている音の構成音を見て判断します。そのため、曲の進行を表すコードではありません。
複数の解釈が出来る場合は、そのすべてが表示されます。
例: Cm7 A#6
ディミニッシュは、すべての構成音が短3度ずつ離れているので、必ず4つ出てき てしまいます。
例: Cdim D#dim E#dim Adim
テンションコードは、C7(-9 11 13)のように表示されます。理論上ありえない組み合わせでも表示されます。
対応しているコード (ルートがCの場合)
以上と、(-9,9,+9,11,+11,-13,13)のテンションコード。テンションコードは 検出されれば無条件に表示されます。
また、曲データ中のキー情報をもとに、トニック、サブドミナント、ドミナントを判別して表示します。トニックは緑、サブドミナントは青、ドミナントは赤で表示され、それぞれの代理コードは暗い色で表示されます。
また、セコンダリードミナントコード、裏コード(IIb7) は紫で表示されます。先読みはしないので、ノンダイアトニックコードの7thはすべて紫で表示するようになっています。
楽器名表示は基本的には対象音源の設定が必須となります。対象音源の設定が間違っていた場合は正しく表示されません。
現バージョンで以下の音色表に対応しています。
オプションメニューの中にある、MIDI THRUを選ぶとMIDI THRU機能が使用できます。この機能はMIDI THRUダイアログが表示している間のみ使用可能です。
ステータスメッセージ以外のすべてのメッセージを通します。エクスクルーシブも、もちろん通します。ただ、エクスクルーシブメッセージのTHRUは、メッセージの取りこぼしが起きるかもしれません。もし起きたらバグレポートをお願いします。私の環境では特に目立った取りこぼしはありませんでした。
また、出力するメッセージを加工する事も出来ます。出力チャンネルを変更する事が出来ます。また、ベロシティ値を加工する事も出来ます。また、MIDIエミュレーションモードの影響を受けます。
入力されたメッセージは、演奏モニタに反映されます。ノート表示も行われ、コード解析も行われます。
TMIDIは画面をめいいっぱい使ってWRD(歌詞)を表示する事が出来ます。この機能を使用するにはDirectX2以上が必要となります。
フルスクリーンモードにするには、最大化ボタンを押してください。これだけでOKです。ディスプレイとの同期周波数が切り替わるため、一瞬画面が乱れたり暗くなります。これでディスプレイを破壊することはないはずです。(もし壊れたら、コンピュータメーカの怠慢です。自作機はもちろん製作者の責任です。生半可な知識を使って組み立てないように。)
また、フルスクリーン時に画面色数の設定を変える事も出来ます。基本的に256色モードのときが一番パフォーマンスがいいです。環境設定のWRD設定の欄で設定してください。
WRDのデバッグに便利な機能を搭載しています。
メニューで、ウィンドウ(W)-WRDデバッグウィンドウ を押すと、今演奏しているWRDと、現在位置が表示されます。
また、以下のようなキーにWRDデバッグに便利な機能が割り当てられています。
キー | 動作 |
---|---|
Alt+'0' | パレット初期化 |
Alt+'.' | パレット初期化 (白) |
Alt+'1' 〜 '9' | WRD画面ページ切り替え |
Alt+'-' | グラフィック画面ON/OFF |
Alt+'*' | テキスト画面ON/OFF |
SMFナイフで変換したファイルを演奏させる事が出来ます。また、RCPCV.DLLを利用する事により、RCP/R36/G36ファイルも変換する事が出来ます。
2通りの変換の仕方があります。
MIDIエミュレーションの代わりにSMFナイフを利用する方法です。勝手に音源を判別して、コンフィグファイルを選んでSMFナイフへ渡します。
この設定は、TMIDIの MIDI設定 - MIDIエミュレーション - 定義ファイル 欄に、SMFKNIFE.DEFを読み込ませると可能になります。SMFKNIFE.DEFはTMIDIに添付されています。
リストウィンドウを開いて、ファイルのプロパティを開くと、SMFナイフ タグが出てきます。ここで設定すると変換後のファイルを再生する事が出来ます。
現バージョンでは、LZHファイル内のファイルを変換する事が出来ません。