SuperCollider CLASSES

Schmidt

Schmidt trigger.
Inherits from: InRange : UGen : AbstractFunction : Object

Description

When in crosses to greater than hi , output 1, then when signal crosses lower than lo output 0. Uses the formula:

if (out == 1, { if (in < lo, { out = 0.0 }) }, { if (in > hi, { out = 1.0 }) }).

Output is initially zero.

Class Methods

*ar (in: 0, lo: 0, hi: 1)

From superclass: InRange

*kr (in: 0, lo: 0, hi: 1)

From superclass: InRange

Arguments:

in

Signal to be tested.

lo

Low threshold.

hi

High threshold.

Inherited class methods

Instance Methods

Inherited instance methods

Examples

s.boot;

{ Schmidt.kr(SinOsc.kr(1, 0, 0.2), -0.15, 0.15)}.scope; // see the trigger

{ Schmidt.kr(MouseX.kr(0, 1), 0.2, 0.8)}.scope; // try it with the cursor

// threshold octave jumps
(
{
    var in = LFNoise1.kr(3);
    var octave = Schmidt.kr(in, -0.15, 0.15) + 1;
    SinOsc.ar(in * 200 + 500 * octave, 0, 0.1)
}.scope;
)