hspmidi.dll
Version 1.0
Date 2026-04-15
Author IronHSP / hspmidi
目次 (3 グループ / 17 ページ)
hspmidi ― MIDI in
midi_in_close
MIDI in デバイスを閉じる
MIDI 入力デバイスを閉じます。内部で midi_in_stop してから close
します。
midi_in_count
MIDI in デバイス数取得
MIDI 入力デバイスの数を var_count に格納します (midiInGetNumDevs)。
midi_in_name
MIDI in デバイス名取得
指定 MIDI 入力デバイスの名称を cp932 で格納します。
var_str は事前に sdim で十分なサイズを確保し、その sdim サイズを
buf_size に指定してください。
midi_in_open
MIDI in デバイスを開く
MIDI 入力デバイスを開きます。成功で 0、失敗で負数。
開いた時点ではまだ受信は始まりません。midi_in_start を呼んで
ください。内部リングバッファはここでクリアされます。
midi_in_start
MIDI 入力の受信開始
midiInStart を呼び、コールバック経由での受信を開始します。
受信メッセージは内部リングバッファ (1024 件) に蓄えられ、
midi_in_poll で取り出します。
midi_in_stop
MIDI 入力の受信停止
midiInStop を呼び受信を停止します。リングバッファの中身は
残ります (続けて poll で取れます)。
hspmidi ― MIDI out
midi_out_close
MIDI out デバイスを閉じる
MIDI 出力デバイスを閉じます。開いていなければ何もせず 0 を返します。
内部で midiOutReset (All Sound Off) してから close します。
midi_out_count
MIDI out デバイス数取得
MIDI 出力デバイスの数を var_count に格納します (midiOutGetNumDevs)。
通常 "Microsoft GS Wavetable Synth" が devid=0 にあります。
midi_out_name
MIDI out デバイス名取得
指定デバイスの名称を var_str に cp932 で格納します。内部的には
midiOutGetDevCapsW で UTF-16 取得後、CP_ACP で変換しています。
midi_out_note_off
Note Off 送信 (便利ラッパ)
$80 + ch のステータスで Note Off を送ります。vel には release
velocity を入れますが、0 で問題ありません。
midi_out_open
MIDI out デバイスを開く
MIDI 出力デバイスを開きます。成功すると 0、失敗なら負数。
既に開いていた場合は内部で一旦 close してから開き直します。
midi_out_reset
全ノートオフ (midiOutReset)
midiOutReset を呼び、全チャンネルで鳴っている音を停止します。
演奏中に強制停止したいときに使用します。
midi_out_short
short MIDI メッセージ送信
任意のショートメッセージを送信します (midiOutShortMsg)。status の
下位 4bit がチャンネル番号です。
iron_midi ― ユーティリティ
note_name
音名 → ノート番号 変換 (iron_midi)
iron_midi.hsp に定義された cfunc。音名を MIDI ノート番号に変換します。
書式: [音名][臨時記号(#|b)][オクターブ番号] 例: "F#3"。
C4 = 60, C-1 = 0, G9 = 127。