-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathMIDIPlayer.bi
31 lines (28 loc) · 1.14 KB
/
MIDIPlayer.bi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
'-----------------------------------------------------------------------------------------------------------------------
' MIDI Player library using fmidi + RtMidi
' Copyright (c) 2024 Samuel Gomes
'-----------------------------------------------------------------------------------------------------------------------
$INCLUDEONCE
'$INCLUDE:'Common.bi'
'$INCLUDE:'Types.bi'
'$INCLUDE:'File.bi'
DECLARE LIBRARY "MIDIPlayer"
FUNCTION MIDI_GetErrorMessage$
FUNCTION MIDI_GetPortCount~&
FUNCTION MIDI_GetPortName$ (BYVAL portIndex AS _UNSIGNED LONG)
FUNCTION MIDI_SetPort%% (BYVAL portIndex AS _UNSIGNED LONG)
FUNCTION MIDI_GetPort~&
FUNCTION __MIDI_PlayFromMemory%% (buffer AS STRING, BYVAL bufferSize AS _OFFSET)
SUB MIDI_Stop
FUNCTION MIDI_IsPlaying%%
SUB MIDI_Loop (BYVAL loops AS LONG)
FUNCTION MIDI_IsLooping%%
SUB MIDI_Pause (BYVAL state AS _BYTE)
FUNCTION MIDI_IsPaused%%
FUNCTION MIDI_GetTotalTime#
FUNCTION MIDI_GetCurrentTime#
SUB MIDI_SetVolume (BYVAL volume AS SINGLE)
FUNCTION MIDI_GetVolume!
SUB MIDI_SeekToTime (BYVAL seekTime AS DOUBLE)
FUNCTION MIDI_GetFormat$
END DECLARE