Here making specialize in MIDI softwares and libraries.
For detail, please see https://openmidiproject.osdn.jp/index_en.html.
『MIDIDataライブラリ』は、フリーでオープンソースの、
MIDIデータ作成・編集用ライブラリです。このライブラ
リは、MIDIデータの作成・ファイル入出力(SMFフォーマ
ット0/1/2)、MIDIトラックの作成・追加・変更・削除、
MIDIイベント(メタイベント・システムエクスクルーシブ
イベントを含む)の作成・追加・変更・削除など、MIDIデ
ータのあらゆる要素に迅速にアクセスする関数を提供し
ています。
タイムベースは、TPQNベース(分解能=1〜960)とSMPTEベー
ス(24,25,29.97,30フレーム/秒)(分解能=1〜255)の両方
に対応。タイムベース取得・変換関数も装備。フォーマッ
トは0/1/2に対応。フォーマット取得・変換関数も装備。
MIDIデータのタイトル・著作権・コメント・開始タイム・
終了タイムなどを簡易に取得・設定する関数も提供してい
ます。
また、MIDIデータ中のテンポイベントを解析して、タイム
コードをミリ秒に変換する関数や、拍子記号イベントを解
析して、タイムコードを小節:拍:ティックに変換する関
数も装備。内部演算は必要に応じて64ビットとし、テンポ
チェンジの激しい曲でも計算誤差を1ミリ秒以内に抑えて
います。
対応OS:Windows95/98/ME/2000/XP/Vista
公式ガイドブックの不備を大幅に訂正しました。
ソースコードには変更はありません。
・MIDIData_CountTrack関数の説明が抜けていたので追加。
・MIDITrack_CountEvent関数の説明が抜けていたので追加。
・MIDITrack_RemoveEvent関数の説明修正。
・MIDITrack_RemoveSingleEvent関数の説明が抜けていたので追加。
・MIDIEvent_Delete関数の説明修正。
・MIDIEvent_DeleteSingle関数の説明が抜けていたので追加。
・MIDIEvent_SetTime関数の説明修正。
・MIDIEvent_SetTimeSingle関数の説明が抜けていたので追加。
・forEachTrackマクロの説明修正・追加。
・forEachEventマクロの説明修正・追加。
・細部修正。