-------------------------------------------------------------------------------
【  名  称  】 DirectMusic Player
【ファイル名】 kbdmusic.kpi
【バージョン】 0.05
【対応拡張子】 sgt/sgp/mid
【 Platform 】 x86(32bit) のみ / x64(64bit) なし
【 公 開 日 】 2017/04/09
-------------------------------------------------------------------------------

【概要】

  DirectMusic (SGT/SGP) を再生するための演奏プラグインです。

  本プラグインは MIDI にも対応しています。「デバイス設定」で kbdmusic.kpi を選
択することで、DirectMusic で MIDI を再生することが出来ます。

【既知の不具合】

  本プラグインはとても完成度が低く、以下の不具合があることが分かっています。

  ・再生時の制約が多い

    再生中に音量制御やシーク制御を行うことが出来ません。一時停止からの再開さえ
    も出来ず、再開時は先頭に戻って再生されます。

  ・曲長計算の結果がおかしい

    曲長計算の結果が毎回微妙に変わります。(1〜50ms前後)

  ・不定期に「データに誤りがあります」と出てファイルオープンに失敗する

    kbdmusic.kpi で DirectMusic 形式や MIDI ファイルを開くとき、まだ演奏を開始
    する必要がなくても内部的にデバイスを開こうとするようです。
    デバイスを開けないとき、ファイルオープンそのものに失敗します。例えば WASAPI
    で MP3 を再生中に DirectMusic 形式に切り替えると、ファイルを開く時点ではま
    だ演奏を停止していないことがあるため、デバイスを開けず、ファイルオープンに
    も失敗してしまいます。その場合、演奏を完全に停止してから開き直す必要があり
    ます。WASAPI や ASIO で再生中だと、演奏リスト上での曲長計算も出来なくなりま
    す。

【MIDI 再生】

  本プラグインは MIDI にも対応しています。「デバイス設定」で kbdmusic.kpi を選
択することで、DirectMusic で MIDI を再生することが出来ます。

  MIDI 再生時の音質は基本的に「Microsoft GS Wavetable Synth」と同等ですが、リバ
ーブのかかり方が異なり、どちらかと言うと本プラグインで再生した方が再生時の品質
は良いようです。ただ、未対応の音色で代理発音をしないため、多くの MIDI データ(GS
や XG 等)はまともに再生出来ません。これは「Microsoft GS Wavetable Synth」でも同
様です。

  本体側で「Map Mode」の「Ignore Bank Select」を強制的に有効にすることでこの問
題に対処しています。従って kbdmusic.kpi で再生する場合、本体側での「Map Mode」
は無視されて常に「Ignore Bank Select」になります。


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

【更新履歴】

Version 0.05(2017/04/09)

・コンパイラを VS2017 に変更

/*---------------------------------------------------------------------------*/

Version 0.04(2017/01/09)

・DLS ファイル抽出処理を修正
・正式版公開に向けての細かい修正(ドキュメント/ソースコードの整理等)

/*---------------------------------------------------------------------------*/

Version 0.03(2016/10/02)

・DLS の検索パスを設定出来るようにした
・演奏開始時に時に少し待つようにした(なぜか DLS の検索パス指定が適用されない
　ため)
・本体側での DLS 検索パスの設定を廃止(設定し直す必要がある)

/*---------------------------------------------------------------------------*/

Version 0.01(2016/08/01)

・演奏プラグイン化後の初版
・プラグイン化に伴い、ファイル名を kbdmusic.dll から kbdmusic.kpi に変更

-------------------------------------------------------------------------------
Kobarin(hidkob@pb.highway.ne.jp)
https://kobarin.sakura.ne.jp/
