GuruGuruSMF

GuruGuruSMFはスタンダードMIDIファイルをループ再生するdllです。
エンターブレイン社、RPGツクール2000以降のループ仕様(CC#111)をサポートしております。

10/11:テストプレイヤーがver.4.0.1になりました。

無音SMFを再生させようとするとクラッシュする不具合の対処をしました。
厳密にはdll側でも対処が必要ですが、用途上まずないケースだと思いますので、こちらは次回の更新時に行う予定です。

08/17:ver.4.0.6になりました。

不完全ながらWindows98での動作環境を入手しましたので
これで動作するように修正しました。

04/22:ver.4.0.5になりました。

DirectMusicモードにおいてマスターボリュームやフェードインなどでボリュームが不正な値になることがあったのを修正しました。

01/14:ver.4.0.4になりました。

Windows9x系での動作を考え、UNICODE版関数が存在しない場合にANSI版関数を呼ぶようにしました。動的結合コードにもコメントで補足を書きました。
しかし、作者には9x系の動作環境がないため、これによって本当に動くかどうかは自信ありません。

WinAPIモードでデバイスを開いた後最初の再生で、リセット命令が送られていなかったのを修正。

また、同じくWinAPIモードで、リセット命令の送信時にオールサウンドオフとリセットオールコントローラも送るようにしました。

DirectMusicモードでのOpenDeviceの際にメモリリークしていたのを修正。

01/04:Windows9x系での動作について

現在のヴァージョンではWin32APIのユニコード版関数をいくつかそのまま使用しているため(4.0.4で対策済)、Windows9x系では動作しなくなっています。
作者に動作環境がないので正式対応からは外させていただきますが、なるべく動くように修正しようと考えております。

12/07:ver.4.0.3になりました。

特定の環境でMIDI_MAPPERに特定のデバイスを設定し、MIDI_MAPPERを通して再生しようとした時にフリーズする不具合の対策を行いました。
挙動上、MIDI_MAPPERは非推奨とさせてください。なるべくアプリケーション使用者側がデバイスを選択できるようにできるとよいかと思います。

DeleteListItem及びClearListで再生中のMIDIデータを削除しようとした時に再生を停止するようにしました。

既知の不具合

Bufferedを指定せずにリストに追加したMIDIファイルを置き換えてそのまま再生しようとすると吹っ飛ぶ。
→これは対処しません。MIDIファイルが置き換わるような状況がある時は読み直してください。

更新履歴(RSS)

2011/11/10
テストプレイヤー ver.4.0.1リリース
2011/08/17
GuruGuruSMF ver.4.0.6/ver.3.4.6リリース
2011/04/22
GuruGuruSMF ver.4.0.5/ver.3.4.5リリース
2011/01/14
GuruGuruSMF ver.4.0.4/ver.3.4.4リリース
2011/01/04
Windows9x系での動作について

ダウンロード

GuruGuruSMF ver.4.0.6汎用dll / 2011.08.17
GuruGuruSMF最新版です。

GuruGuruSMF ver.4.0.6HSP拡張プラグイン / 2011.08.17
HSPプラグイン版です。

GuruGuruSMF テストプレイヤー ver.4.0.1 / 2011.11.10
副産物のテストプレイヤーです。.NET Framework2.0(~3.5)が必要です。
MIDIファイルのチェックにでもどうぞ。
中のGuruGuruSMF.dllをver.4.0.6にしました。

GuruGuruSMF ver.3.4.6汎用dll / 2011.08.17
ver.0.3系統が少々バグっぽかったため、置き換えのための互換版です。

GuruGuruSMF ver.4.0.6ソースコード / 2011.08.17
ソースコードです。修正BSDライセンスとなってます。