root/ocaml-remix/trunk/ladspa_raw.mli

Revision 529, 1.1 kB (checked in by shans, 1 year ago)

Replacing sound implementation - WAS ocaml int arrays, IS native float
arrays. This has not yet been completely been debugged!

Line 
1 (* ----- C interface ----- *)
2
3 type plugin;;
4 type handle;;
5 type buffer = FB.buffer_raw;;
6
7 type portDirection = Input | Output;;
8 type portType = Control | Audio;;
9
10 val open_plugin : string -> plugin;;
11 val port_count : plugin -> int;;
12 val port_descriptor : plugin -> int -> (portDirection * portType);;
13
14 val instantiate : plugin -> int -> handle;;
15 val activate : plugin -> handle -> unit;;
16
17 (* provide sound, output buffer array, and length in samples *)
18 val raw_sound_to_buffers : int array -> buffer array -> int -> unit;;
19
20 val raw_sound_channel_to_buffer : int array -> int -> int -> buffer -> unit;;
21
22 (* provide buffers and length of each one in samples *)
23 val buffers_to_raw_sound : buffer array -> int -> int array;;
24 val control_value_to_buffer : float -> buffer;;
25 val empty_buffer : int -> buffer;;
26
27 val connect_port : plugin -> handle -> int -> buffer -> unit;;
28 val run : plugin -> handle -> int -> unit;;
29 val run_adding : plugin -> handle -> int -> unit;;
30
31 (* ------ helper functions ----- *)
32
33 val direction_to_string : portDirection -> string;;
34 val type_to_string : portType -> string;;
Note: See TracBrowser for help on using the browser.