乾 ダウンロード

 ファイル名や画像をクリックすることでダウンロードできます
  ※作者の許可無く転載することを禁じます


とにかく、新しいもの好きのかたは、ここを覗いてダウンロードしてください。説明無しの実行モジュールのみですが、作者が使用している版(本館アップロードより一つ上)をアーカイブしてアップロードしておきます。ドキュメント等まとまった段階で、本館にアップロードします。

アーカイブ名は本館のモジュールと合わせてあります。展開し、上書きコピーして使用してください。

ファイル一覧
 http://www.tees.ne.jp/~mohishi/new

ダウンロード
 EditPAT
 Mwatch
 Timidi95
 TimidiCP
 TimidiDR
 TimidiS4
 TimidiSS
 TimidiX
 WaveST


ファイル一覧 64bit
 http://www.tees.ne.jp/~mohishi/new64

ダウンロード
 EditPAT
 TimidiDR
 TimidiS4
 WaveST
 (VC 2013 x64 runtime)


XP 対応臨時 TimidiSS MIDI ドライバ のコーナー

TimidiDR(TimidiSS MIDI ドライバ)を XP 対応するにあたり、PC 上で TimidiDR がドライバとして動作するかをインストール後再起動無しで確認する方法を記述します。XP 以外の NT/2000 の場合は、XP を NT/2000 に置き換えて読んでください。操作過程で TimidiDR が動作しないと分かった場合には、MIDI デバイスの解除を行ってください。

1. TimidiDR をインストールします
 XP に Administrator 権限でログオンします。TimidiDR.zip とTimidi95.zip を展開し、Timidi95 ディレクトリの内容を TimidiDR ディレクトリにコピーします。

2. PlayDR を起動します
 この時点でエラーが表示されない事を確認して下さい。

3. メニューの設定->TimidiDRコンフィグレーション...を選びます
 TimidiDRコンフィグレーションダイアログが表示されます。

4. 出力タブをクリックします
 WAVEデバイスの下のリストに既存の WAVE デバイスが表示されているでしょうか。空欄になっている場合は、WAVEデバイスが見つからないため TimidiDR は動作しません。また通常の音再生に使用できないボイスモデム等のWAVEデバイスが表示されている場合、音声出力の出来るWAVEデバイスを選択します。選択した WAVEデバイス が他の音楽ソフトで使用されていない事を確認して下さい。
次にバッファサイズ測定(参考)をクリックします。WAVEデバイスが正しく使用できれば、バッファの測定が出来ます。
 バッファサイズ測定が出来ません
エラーが表示される場合、WAVE デバイスが使用できません。WAVE デバイスが他のソフトで使用されていないか確認して下さい。測定時間は環境にもよりますが、30秒以内(作者の PC で約 5秒)で終わると思います。バッファ値が表示されたら、いいえ(N)をクリックします。

5. 一般タブをクリックします
 MIDI デバイスの登録をクリックし、WAVE デバイス出力開始をクリックします。その後 OK ボタンを押します。この時点で、Timidi95 の内容が TimidiDR ディレクトリにコピーしてない場合、
 コンフィグファイルを読み込む事が出来ません
エラーが表示されます。インストールを正しく行って下さい。4. で選択した WAVE デバイスが他のソフトが使用中の場合
 オーディオデバイスを使用できません
エラーが表示されます。何も問題が無ければ、
 設定を有効にするためには再起動が必要です。再起動を行いますか?
が表示されます。ここでは、いいえ(N)をクリックしてください。

6. この状態で、TimidiSS MIDI デバイスがアクティブになります
 メディアプレイヤーを起動し、MIDI ファイルを再生します。PlayDR の画面に、チェネルやボリュームを表す縦棒が表示されれば、TimidiDR は正しく動作しています。確認後メディアプレイヤーを終了します。

7. 再びTimidiDRコンフィグレーションダイアログを開きます
 一般タブで WAVE デバイス出力停止をクリックします。MIDI デバイス解除をクリックします。その後 OK ボタンを押します。何も問題が無ければ、
 設定を有効にするためには再起動が必要です。再起動を行いますか?
が表示されます。ここでは、いいえ(N)をクリックしてください。

8. PlayDR を終了します
 問題なくここまで来れば、これで TimidiDR の動作確認が出来ました。TimidiDR の正規のインストール手順に基づきインストールして下さい。後は、インストール後再起動時に 出力 WAVE デバイスが使用できないなどの問題が発生しなければ TimidiDR の作成する WAVE、MIDI デバイスは動作します。


臨時 TimidiSS MIDI ドライバ のコーナー


TimidiDR(TimidiSS MIDI ドライバ)とは
 WindowsNT に開発した、MIDI/WAVE 32bit マルチスレッド動作ドライバです。Timidi95/SS のように MIDI 再生時に WAVE デバイスを占有してしまうと WAVE の音がでなくなります。TimidiDR では、MIDI1 と WAVE1 デバイスを作成し、MIDI と WAVE の同時使用を可能にします。MIDI 及び WAVE マッパーを操作しますので、通常のマッパー出力を使用しているアプリケーションは、そのまま使用すること(MIDI と WAVE の同時出力)が可能です。

TimidiSS MIDI ドライバベータ版インストールの際に
 WindowsNT 専用 MIDI ドライバをインストールして使用するには、WindowsNT に対して十分な知識が必要です。これはインストール後トラブルが発生した場合に復旧する手段を知っておかなければなりません(クラッシュダンプのブルー画面や、無限ループに陥ってログオン画面まで進まないとかの状態になっても焦らないために、5分くらい待っても先に進まないとかの場合には手動で電源を切ります。そしてエラー原因となったドライバの削除を行ないます。起動しないのにどうするのか、インストール前に以降の説明を読んでください)。TimidiDR を組み込んだ状態で普段使用していますが、作者の PC 以外の構成で何が起きるか分かりませんから、念のために説明をします。

1. chkdsk /f
 まずは、HDD の状況を調べます。ドライブの右クリックのエラーチェックより、コマンドラインの chkdsk を普段使用していますので、コマンドラインで chkdsk を実行します。chkdsk は、リードオンリーモードで起動しますので、HDD にエラーがあってもメッセージを表示するだけで修復はしません。エラーがある場合は、chkdsk /f で起動し修復を行なってください。NT のシステムドライブなどは、次回の起動時にスケジュールしますか、と確認してきますので、'y' を押してください。再起動を行なうと、ブート後のブルー画面の時に、chkdsk が実行されます。chkdsk が終わると、自動的にリセットがかかり、再起動をはじめます。

2. rdisk(修復ディスク ユーティリティ)
 正常動作時のコンフィグレーション情報(レジストリ)を HDD に保存し、FD にバックアップをとるコマンドです。NT インストール時では、エクスプローラに登録されていないので、NT のディレクトリの system32 ディレクトリにある rdisk.exe(%windir%\system32\rdisk.exe) を エクスプローラで起動し、修復情報の更新ボタンを押し、以降画面に出る操作に従ってください。コンフィグレーション情報を FD にバックアップするか確認してきますので、FD を作成してください。

3. 前回の正常起動したコンフィグレーションでの立ち上げ
 NT 起動時、ブートメニュー選択の後に、スペースキーを押すタイミング(画面にメッセージが出ます)があります。ここでスペースキーを押すと、コンフィグレーションの選択画面になります。正常起動しない場合は、 前回の正常起動したコンフィグレーションを選択し起動することにより、起動が上手く行くことがあります。

4. 別の NT をインストール
 作者はこれを行なっているのですが、普段使用している NT とは別ディレクトリに NT を最小構成でインストールしておきます。NT を別ディレクトリにインストールするとブートメニューに追加されますので、起動したい NT を選択することが出来ます。ブートメニュー の表示文字列はブートドライブの boot.ini(hidden system 属性がついているので属性を外す) テキストファイルを書きかえることによって好きな文字列を表示することが出来ます。
 NT が起動しなくなったら、別ディレクトリの NT を起動し、最後にインストールしたファイルを削除します。これで NT が起動します。
 NT を別ディレクトリに入れておくと、普段はコピーできないシステムのファイルもコピーできますので、復旧とかバックアップには便利です。またデフラグも移動できないファイルが少なくなりますので、効果覿面です。

上記が出来れば、殆どの場合に対処できると思います。

TimidiDR のインストール
 TimidiDR のインストールは TimidiSS と同様、timididr.zip を展開後、TimidiDR ディレクトリに Timidi95 ディレクトリの内容(音色ファイル)をコピーします。NT への登録は、コントロールパネルを使用せずに、専用の CtrlDR.exe を使用します。TimidiDR ディレクトリの CtrlDR.exe を起動し、MIDI デバイスの登録を選び OK を押してください。再起動後、TimidiDR が NT に組み込まれた状態になります。
 CtrlDR.exe は TimidiDR の動作制御を行ないます。TimidiSS の設定ダイアログと同じような働きをします。新しく増えた項目は以下のようになります。

1. MIDI デバイス登録解除

  MIDI デバイス及び WAVE デバイスを NT に登録解除します。

2. WAVE デバイス出力開始停止

  MIDI マッパー及び WAVE マッパーを操作し、MIDI WAVE デバイスをアクティブにし音色ファイルを読みこみ、TimidiDR の出力を開始します。あるいは元に戻します。出力が開始していない場合マッパーは元の出力先を示し、元のデバイスで音が出ます。

3. バッファサイズ

  Timidi95/SS では固定だったバッファサイズ 100ms を 10-100ms の間で指定できます。

 TimidiDR の出力を有効とするためには、WAVEデバイスの出力を開始にしなければなりません。NT 起動直後は、TimidiDR の出力は停止状態にあります。

TimidiDR の設定
 設定は、CtrlDR.exe から行なってください。WAVE 及び MIDI マッパーを元に戻す切り替えは、コントロールパネルのマルチメディアでも出来ます。ただし TimidiDR の動作中は CtrlDR.exe から行なってください。

TimidiDR の調整
(現在バッファ数、バッファサイズを測定する機能を追加)
 MIDI WAVE ドライバとして動作した場合、デバイスのレスポンスが問題となります。TimidiDR では、レスポンスを PC 毎に調整できるように、バッファ数、バッファサイズを指定できます。TimidiDR のデフォルトは、バッファ数 4、バッファサイズ 100ms です。これは TimidiSS と同じ大きさです。この値の積 4×100 = 400ms が待機時間となります。この値が小さいほどレスポンスが良くなります。しかし小さすぎると、音切れ(ブツといった感じのノイズが入る)が発生しますので PC に合わせて調整してください。積が同じ場合でもバッファサイズが小さいほど分解能が上がり(処理単位が小さくなり)ます。

ベータ版の動作
(現在ベータ版はありません)
機能に制限はありません。またユーザー登録のチェックもありませんので、存分にテスト使用することが可能です。
気になる点を幾つか列挙します。

1. CtrlDR.exe で Wave デバイスを開始し OK ボタンを押すと時間がかかる

 音色ファイルを全て読みこんでいます。処理中のダイアログが消えるまでお待ちください。

2. メモリを消費する
(1.0 (003)で少メモリオプション追加)
 音色ファイルを全て読みこみながら、再生に適した形式に変換しています。音色ファイルの数が多いため、メモリを大量に消費します。

3. エラーログファイルを出力する
(1.0) 以降は出力しません)
 TimidiDR ディレクトリに出力します。内容は特に気にする必要はありません。

4. Wave デバイスの出力を開始したまま再起動すると、もう一度 CtrlDR.exe で Wave デバイスの出力を開始しないと音が出ない
(1.0 (003) 以降は再起動時の自動出力開始対応)
 MIDI 及び WAVE マッパーが TimidiDR になっているためです。CtrlDR.exe 開始を行なうか、コントロールパネルで既存のデバイスを選択してください。なお CtrlDR.exe 開始し再び停止を選択すると、既存デバイスの状態になります。

5. コントロールパネルのマルチメディアでインストール、アンインストールできない

 TimidiDR を任意のディレクトリで動作させるため、インストール用の inf ファイルは用意していません。このため、NT の システムディレクトリにファイルをコピーすることはありませんが、インストール、アンインストールは CtrlDR.exe を使用します。

Timidi95/SS との違い
 ドライバ化したことで、Timidi95/SS と動作上の違いが幾つかあります。

1. MIDI ファイルの解釈は MCISEQ(MCI シーケンサ)が行なう

 Timidi95/SS は独自解釈だったものを、MCISEQ に任せています。このため再生結果が若干異なる場合があります。

2. 全体ボリュームのバランスが違う

 Timidi95/SS は MIDI ファイルを調べて、連続再生に適した全体ボリュームに調整し使用しますが、TimidiDR はコマンドの要求通りのボリュームとなります。そのため、MIDI ファイルによっては、極端に音が小さくなったような感じに聞こえる場合がありますが、これが本来のボリュームです。

3. メモリを消費する

 Timidi95/SS は MIDI ファイル再生に必要な音色ファイルを再生前に読みこんでいますが、TimidiDR は、Wave デバイスの出力開始時点で全ての音色ファイルをメモリに読みこみます。一時的に物理メモリを消費しますが、時間とともにアクセスされない音色メモリは、NT が PAGEFILE に出力しますので、特に問題は無いと思います。ただし、実装メモリが少ないと、Wave デバイスの出力開始のファイル読みこみに時間がかかります。

4. WAVE 出力先が デバイス 1 固定
(1.0 以降は末尾デバイスとして登録し先頭デバイスに出力、現在任意のデバイスが選択可能)
 Timidi95/SS は WAVE マッパーに出力を行なっていましたが、TimidiDR では TimidiDR を WAVE デバイスとして WAVE マッパーに設定し、元のWAVE デバイスを WAVE デバイス 1 に設定ししなおして、WAVE デバイス 1 に出力します。

TimidiDR インストール後再起動前に動作確認するには
(XP 対応版では下記の方法は使用出来ません。XP 対応臨時 TimidiSS MIDI ドライバ のコーナーの方法を使用してください。)
 TimidiDR によって組み込まれた MIDI WAVE デバイスが機能するかどうかは、インストール後再起動しなくても確認できます。次の手順を行なってください。

1. timididr.zip を展開すると、TimidiDR ディレクトリが出来あがります。

2. TimidiDR ディレクトリ内の CtrlDR.exe を起動し、MIDI デバイスを登録を選択し OK ボタンを押す。再起動のアラートが出るが再起動は行いません。

3. 再び TimidiDR ディレクトリ内の CtrlDR.exe を起動する。このプロセスが MIDI WAVE デバイスとして機能します。ダイアログを表示したままにしておきます。OK ボタンも キャンセル ボタンも押しません。

4. 3. で起動した CtrlDR.exe とは別に CtrlDR.exe を起動します。WAVE デバイス出力を開始します。OK ボタンを押した後、エラーが表示されなければ MIDI WAVE デバイスが機能し始めます。

5. この状態で、MIDI アプリケーションや WAVE アプリケーションを操作(メディアプレイヤーで十分)し、音が出るか確かめます。正常に動作すれば、再起動してもほぼ大丈夫です。

6. 3. で表示した CtrlDR.exe のダイアログを OK ボタンを押して終了します(キャンセル ボタンは押さない)。

7. 再起動し、TimidiDR を NT に組み込みます。

これらの手順を踏むことにより、再起動前に問題があるか確認することが出来ます。

TimidiDR をインストールしたら NT が起動しなくなった
 NT が起動すれば削除も簡単ですが、起動しない場合(ハングアップのブルー画面が出るとすれば、NT 起動後、ブルー画面の後、ログオン画面の出る時です。このときに、TimidiDR.dll を NT が読みこみます)、前述の TimidiSS MIDI ドライバベータ版インストールの際にて説明したことを行ないます。

1. 前回の正常起動したコンフィグレーションを使用する

 NT の起動時、ブートメニューの選択後、画面上部にスペースキーを受け付けるメッセージが表示されたら、スペースキーを押すとコンフィグレーション選択画面になります。画面の指示に従い、前回の正常起動したコンフィグレーションを選び NT を起動してください。これで起動しない場合、2. を行なってください。

2. TimidiDR.dll を削除する

 NT が FAT16 に入っている場合には DOS/Windows95/98 等を起動し、TimidiDR.dll を削除してください。NTFS の場合には、NT をもう一つインストールし、後からインストールした NT 上で TimidiDR.dll を削除します。

アップデート
 MIDI デバイスを解除し、再起動後にファイルをコピーしてください。解除をし再起動を行なわないとファイルの上書きコピーが出来ません。

改版修正履歴
0.7 (003)
 新規登録

0.8 (004)
 デバイス 0 と 1 を MIDI デバイス登録解除時に入れ替えを行なう処理を追加
 PAUSE RESTART GETPLAYBACKRATE SETPLAYBACKRATE を TimidiDR 側で処理を行なうように変更
 WAVE 出力の合成時に高音質化のための補間処理を追加
 GM リセット GS リセット XG システムオン のエクスクルシブメッセージに対応してリセット処理を追加

0.9 (005)
 デバイスの二重オープンが出来ないようにチェックを追加
 WAVE 出力の合成補間処理の調整。高速化、高音質化
 バッファ数を TimidiSS と同様の選択に変更
 WAVE デバイス出力停止時のシステムのサウンド出力の対応

0.9 (006)
 スレッドの処理内容を見直して、一定期間に処理が集中しないようにして高速化
 ユーザー登録の処理を追加。しかしベータ版のため機能せず
 ヘルプファイルの追加

1.0 (001)
 ユーザー登録の処理を動作
 TimidiDR の作成するデバイスを末尾デバイスとして登録するように変更。ただし、動作時は先頭デバイスとして機能
 WAVE 合成のバッファの取り方を見なおし高速化
 ヘルプファイルの更新

1.0 (002)
 以前 GM リセット GS リセット XG システムオン のエクスクルシブメッセージに対応してリセット処理を追加したが、音が出ない場合があるのでリセット処理方法を変更
 デバイスのクローズを出さないアプリケーションの対応

1.0 (003)
 TimidiDR コンフィグレーションダイアログを TimidiSS と同様のプロパティダイアログに変更
 少メモリ対策として読み込み時の補間処理を行なわないオプションを追加
 WAVE デバイス出力開始後の再起動で、自動的に出力開始を行なう処理を追加
 低レートから高レートに補間する場合、バッファの末尾にノイズがのることがあるのを修正
 waveOutReset 関数動作の高速化
 音色ファイル読み込みの高速化

1.0 (004)
 MIDI デバイスの出力精度改善
 WAVE デバイスの 11025Hz へのダウンサンプリングを行なうときに誤動作する場合があるのを修正

お願い
 TimidiDR ベータ版を使用した方は、以下の動作レポートをメールで送ってください。改版の参考にします。なお記入例は作者の使用している環境で記入してみました。

動作レポート
To:mohishi@quartz.ocn.ne.jp
--------------------------------------------------------------
TimidiDR 動作レポート

使用 CPU クロック:

実装メモリ:

サウンドカード:

再生周波数:

動作バッファ数×バッファサイズ:

何かコメントがあれば:

--------------------------------------------------------------

記入例:
--------------------------------------------------------------
TimidiDR 動作レポート

使用 CPU クロック:
PentiumII 400MHz

実装メモリ:
128MB

サウンドカード:
SoundBlaster AudioPCI 64V

再生周波数:
44100Hz 16bit ステレオ

動作バッファ数×バッファサイズ:
3×60ms = 180ms
4×40ms = 160ms
6×30ms = 180ms
8×20ms = 160ms
12×20ms = 240ms
16×10ms = 160ms

何かコメントがあれば:
160ms が私の PC での限界のようです。メモリを消費せずに高速化できないでしょうか
(さらに高速化しました。10×14 = 140ms で動作しています)
(その後サウンドカードドライバを入れ替え、10×5 = 50ms で動作しています)
(さらに入れ替え、10×3 = 30ms (10x2 = 20msでも可)で動作しています。
ドライバ侮り難し、サウンドカードドライバも最新にアップデートをお勧めします。)

--------------------------------------------------------------