MIDI音源状態管理用ライブラリ『MIDIStatusライブラリ0.7』リリース
2012-12-01 22:59 (by kuzu)

『MIDIStatusライブラリ』は、フリーでオープンソースの、MIDI音源の状態保持・参照用ライブラリです。このライブラリは、MIDI音源の各鍵盤の押され具合、コントローラーやプログラムナンバーやピッチベンドなどの状態、マスターボリューム・マスターリバーブ・マスターコーラスなどの状態を記憶する構造体を管理し、いつでも状態を設定・参照することができます。リアルタイムで状態を記録するには、MIDIStatusオブジェクトに対してMIDIメッセージを与えるだけでよいのです。MIDIStatusオブジェクトは、MIDI1.0/GM/GM2/GS/XGで定義されるほとんどのMIDIメッセージ(システムエクスクルーシブ含む)を認識できます。

このヴァージョンでは、次の点を改良しました。

・MIDIPart_GetNoteで、誤った値を取得するバグを修正しました。
・MIDIPart_SetNRPNMSBで、ドラムアタックタイムの設定時に誤った値を設定するバグを修正しました。
・MIDIPart_GetNRPNMSBで、ドラムピッチファインの取得時に誤った値を取得するバグを修正しました。
・MIDIStatus_GetMasterReverbExで、指定数のマスターリバーブ設定値を取得できないバグを修正しました。
・MIDIStatus_GetMasterChorusExで、指定数のマスターコーラス設定値を取得できないバグを修正しました。
・MIDIStatus_GetMasterDelayExで、指定数のマスターディレイ設定値を取得できないバグを修正しました。
・MIDIStatus_GetMasterEqualizerExで、指定数のマスターイコライザ設定値を取得できないバグを修正しました。
・MIDIStatus_SetModuleModeの型をvoidからlongに修正しました。
・MIDIStatus_SetMasterReverbTypeの型をvoidからlongに修正しました。
・MIDIStatus_SetMasterChorusTypeの型をvoidからlongに修正しました。
・MIDIStatus_SetMasterDelayTypeの型をvoidからlongに修正しました。
・MIDIStatus_SetMasterEqualizerTypeの型をvoidからlongに修正しました。
・MIDIStatus_PutMIDIMessageで、ユニバーサルシステムエクスクルーシヴメッセージによるマスターファインチューニング、マスターリバーブタイプ、マスターリバーブタイム、マスターコーラスタイプの設定、及びGSシステムエクスクルーシヴメッセージによるベロシティセンスデプスの設定が誤っているバグを修正しました。
・文字列がANSIとUNICODEの両方に対応しました。なお、今までのC/C++ソースコードはそのまま使えるが、再コンパイルは必要です。
・MIDIStatus_Save(非公式関数)のpszFileNameをconst char*型からconst TCHAR*型に変更しました。
・MIDIStatus_Load(非公式関数)のpszFileNameをconst char*型からconst TCHAR*型に変更しました。
・MIDIStatus.basを添付しました。

詳しくはhttp://openmidiproject.sourceforge.jp/index.htmlをご覧ください。


OpenMIDIProject project news list