85 lines
1.3 KiB
Text
85 lines
1.3 KiB
Text
class:: Trig1
|
|
summary:: Timed trigger.
|
|
related:: Classes/Trig
|
|
categories:: UGens>Triggers
|
|
|
|
|
|
Description::
|
|
|
|
When a nonpositive to positive transition occurs at the input, Trig1
|
|
outputs 1 for the specified duration, otherwise outputs 0.
|
|
|
|
|
|
classmethods::
|
|
|
|
method::ar, kr
|
|
|
|
argument::in
|
|
|
|
Trigger. Trigger can be any signal. A trigger happens when the
|
|
signal changes from non-positive to positive.
|
|
|
|
|
|
argument::dur
|
|
|
|
Duration of the trigger output.
|
|
|
|
|
|
Examples::
|
|
|
|
code::
|
|
|
|
{ Trig1.ar(Dust.ar(1), 0.2) * FSinOsc.ar(800, 0.5) }.play
|
|
|
|
|
|
To create a fixed duration gate
|
|
(
|
|
|
|
SynthDef("trig1",{ arg dur=0.125;
|
|
var gate;
|
|
gate = Trig1.kr(1.0,dur);
|
|
OffsetOut.ar(0,
|
|
SinOsc.ar(800, 0.3)
|
|
* EnvGen.kr(
|
|
Env([0,0.1,0.1,0],[0.01,1.0,0.01],[-4,4],2),
|
|
gate,
|
|
doneAction: Done.freeSelf)
|
|
)
|
|
}).add;
|
|
|
|
Routine({
|
|
1.0.wait;
|
|
100.do({
|
|
s.sendBundle(0.05,["s_new", "trig1" ,-1,0,0,0,rrand(0.02,0.25)]);
|
|
0.25.wait
|
|
})
|
|
}).play(SystemClock)
|
|
|
|
)
|
|
|
|
This should sound like a continuous sine wave, although it is actually a series of 0.25 second synths.
|
|
(
|
|
SynthDef("trig1",{
|
|
var gate;
|
|
gate = Trig1.kr(1.0,0.25);
|
|
OffsetOut.ar(0,
|
|
SinOsc.ar(800, 0.3)
|
|
* EnvGen.kr(
|
|
Env([0,0.1,0.1,0],[0.01,1.0,0.01],[-4,4],2),
|
|
gate,
|
|
doneAction: Done.freeSelf)
|
|
)
|
|
}).add;
|
|
|
|
Routine({
|
|
1.0.wait;
|
|
100.do({
|
|
s.sendBundle(0.05,["s_new", "trig1" ,-1]);
|
|
0.25.wait
|
|
})
|
|
}).play(SystemClock)
|
|
|
|
)
|
|
|
|
::
|
|
|