module MIDI:sig..end
Operations on MIDI data.
type division = 
| | 
Ticks_per_quarter of  | 
(* | Ticks per quarter note.  | *) | 
| | 
SMPTE of  | 
(* | SMPTE (frames per second, ticks per frame).  | *) | 
Units for delta-times.
type event = 
| | 
Note_off of  | 
| | 
Note_on of  | 
| | 
Aftertouch of  | 
| | 
Control_change of  | 
| | 
Patch of  | 
| | 
Channel_aftertouch of  | 
| | 
Pitch of  | 
| | 
Sequence_number of  | 
| | 
Text of  | 
| | 
Copyright of  | 
| | 
Track_name of  | 
| | 
Instrument_name of  | 
| | 
Lyric of  | 
| | 
Marker of  | 
| | 
Cue of  | 
| | 
End_of_track | 
| | 
Tempo of  | 
| | 
Time_signature of  | 
| | 
Key_signature of  | 
| | 
Custom of  | 
type buffer 
A MIDI buffer.
val data : buffer -> (int * event) list
val create : int -> bufferCreate a MIDI buffer of given length in samples.
val copy : buffer -> bufferCreate a copy of a MIDI buffer.
val blit : buffer -> int -> buffer -> int -> int -> unit
val blit_all : buffer -> buffer -> unit
val merge : buffer -> buffer -> unitmerge b1 b2 merges the buffer b2 into b1.
val add : buffer -> int -> buffer -> int -> int -> unit
val clear_all : buffer -> unit
val insert : buffer -> int * event -> unit
module Multitrack:sig..end
module IO:sig..end