Module Ladspa.Descriptor

module Descriptor: sig .. end

Descriptors.


type t 

A descriptor.

val descriptor : Ladspa.Plugin.t -> int -> t

Retrieve the n-th descriptor of a plugin.

val descriptors : Ladspa.Plugin.t -> t array

Retrieve all the descriptors of a plugin.

val unique_id : t -> int

This numeric identifier indicates the plugin type uniquely. Plugin programmers may reserve ranges of IDs from a central body to avoid clashes. Hosts may assume that IDs are below 0x1000000.

val label : t -> string

This identifier can be used as a unique, case-sensitive identifier for the plugin type within the plugin file. Plugin types should be identified by file and label rather than by index or plugin name, which may be changed in new plugin versions. Labels must not contain white-space characters.

val name : t -> string

Name of the plugin (e.g. "Sine Oscillator").

val maker : t -> string

String indicating the maker of the plugin.

val copyright : t -> string option

String indicating any copyright applying to the plugin.

val port_count : t -> int

This indicates the number of ports (input AND output) present on the plugin.

val port_name : t -> int -> string

Name of the n-th port.

val port_is_input : t -> int -> bool

Is the n-th port an input?

val port_is_output : t -> int -> bool

Is the n-th port an output?

val port_is_audio : t -> int -> bool

Is the n-th port an audio port?

val port_is_control : t -> int -> bool

Is the n-th port a control port?

val port_is_integer : t -> int -> bool
val port_is_boolean : t -> int -> bool
val port_is_logarithmic : t -> int -> bool
val port_get_default : t -> ?samplerate:int -> int -> float option

Get a sensible default value for a control port.

val port_get_min : t -> ?samplerate:int -> int -> float option
val port_get_max : t -> ?samplerate:int -> int -> float option
type instance 

Instance of a descriptor.

val instantiate : t -> int -> int -> instance

instantiate descr freq len instantiates the descriptor descr with a sampling frequency freq indicating that len samples should be processed at each run.

val set_samples : instance -> int -> unit

Change the number of samples that should be processed at each run.

val connect_audio_port : instance -> int -> float array -> int -> unit

connect_audio_port inst p buf ofs connects the audio port p of instance inst to the buffer buf starting at position ofs.

val connect_control_port_in : instance -> int -> float -> unit

Connect an input control port.

val connect_control_port_out : instance -> int -> float Stdlib.ref -> unit

Connect an output control port.

val activate : instance -> unit

Activate (i.e. initialize) a plugin.

val deactivate : instance -> unit

Deactivate a plugin.

exception Input_port_not_connected of int

An input port is not connected.

val run : instance -> unit

Process samples.

val pre_run : instance -> unit

Internal function used by the DSSI binding.

Internal function used by the DSSI binding.

val post_run : instance -> unit

Internal function used by the DSSI binding.

val post_run_adding : instance -> unit