Perry Cook's Clarinet Physical Model

The clarinet suite (clarinetActor, clarinetHand, clarinetAlg) makes calls into Perry Cook's STK synthesis toolkit.

To use the clarinet implementation, load perry.so and create an actor of type ClarinetActor.

ClarinetActor messages

In addition to the messages understood by all generator actors, the ClarinetActor understands the following messages:
SetReverb hActor x
Turn on reverb for new instances created by this actor to x. (1 = ON, 0 = OFF)
SetAllReverb hActor x
Turn on reverb of all children to x, and set the default reverb flag for all future children. (1 = ON, 0 = OFF)
SetBreathPressure hActor x
Set the breath pressure for new instances created by this actor to x.
SetAllBreathPressure hActor x time
Set the breath pressure of all children to x, and set the default breath pressure for all future children. If time is specified, children will modulate to the new breath pressure over the specified duration. Default breath pressure is always set immediately regardless of time.
SetFreq hActor x
Set the frequency (in Hertz) for new instances created by this actor to x.
SetAllFreq hActor x time
Set the frequency (in Hertz) of all children to x, and set the default frequency (in Hertz) for all future children. If time is specified, children will modulate to the new frequency over the specified duration. Default frequency is always set immediately regardless of time.
SetVibGain hActor x
Set the vibrato gain for new instances created by this actor to x.
SetAllVibGain hActor x time
Set the vibrato gain of all children to x, and set the default vibrato gain for all future children. If time is specified, children will modulate to the new vibrato gain over the specified duration. Default vibrato gain is always set immediately regardless of time.
SetReedStiffness hActor x
Set the reed stiffness for new instances created by this actor to x.
SetAllReedStiffness hActor x time
Set the reed stiffness of all children to x, and set the default reed stiffness for all future children. If time is specified, children will modulate to the new reed stiffness over the specified duration. Default reed stiffness is always set immediately regardless of time.
SetNoiseGain hActor x
Set the noise gain for new instances created by this actor to x.
SetAllNoiseGain hActor x time
Set the noise gain of all children to x, and set the default noise gain for all future children. If time is specified, children will modulate to the new noise gain over the specified duration. Default noise gain is always set immediately regardless of time.
SetVibFreq hActor x
Set the vibrato frequency for new instances created by this actor to x.
SetAllVibFreq hActor x time
Set the vibrato frequency of all children to x, and set the default vibrato frequency for all future children. If time is specified, children will modulate to the new vibrato frequency over the specified duration. Default vibrato frequency is always set immediately regardless of time.

clarinet handler messages

In addition to the messages understood by all handlers, the handler for the clarinet algorithm understands the following messages:
SetReverb hSound x
Turn on reverb to x. (1 = ON, 0 = OFF)
SetBreathPressure hSound x time
Set the breath pressure to x. If time is specified, modulate to the new breath pressure over the specified duration.
SetFreq hSound x time
Set the frequency to x. If time is specified, modulate to the new frequency over the specified duration.
SetVibGain hSound x time
Set the vibrato gain to x. If time is specified, modulate to the new vibrato gain over the specified duration.
SetReedStiffness hSound x time
Set the reed stiffness to x. If time is specified, modulate to the new reed stiffness over the specified duration.
SetNoiseGain hSound x time
Set the noise gain to x. If time is specified, modulate to the new noise gain over the specified duration.
SetVibFreq hSound x time
Set the vibrato frequency to x. If time is specified, modulate to the new vibrato frequency over the specified duration.