2 summary:: Stereo ping-pong delay.
3 related:: Classes/SinOsc
4 categories:: UGens>Delays>Buffer
9 Bounces sound between two outputs… Like a ping-pong ball. PingPong is
10 actually a compound built upon link::Classes/RecordBuf:: and
11 link::Classes/PlayBuf:: .
19 First index of a multi channel buffer.
22 An array of audio inputs, the same size as your buffer.
25 Delay time in seconds.
32 Which rotates the inputArray by one step. (left → right, right →
33 left). Rotation of 0 (or 2) would result in no rotation to the
45 b = Buffer.alloc(s,44100 * 2, 2);
47 SynthDef("help-PingPong",{ arg out=0,bufnum=0,feedback=0.5,delayTime=0.2;
49 left = Decay2.ar(Impulse.ar(0.7, 0.25), 0.01, 0.25,
50 SinOsc.ar(SinOsc.kr(3.7,0,200,500)));
51 right = Decay2.ar(Impulse.ar(0.5, 0.25), 0.01, 0.25,
52 Resonz.ar(PinkNoise.ar(4), SinOsc.kr(2.7,0,1000,2500), 0.2));
55 PingPong.ar(bufnum, [left,right], delayTime, feedback, 1)
57 }).play(s,[\out, 0, \bufnum, b.bufnum,\feedback,0.5,\delayTime,0.1]);
66 b = Buffer.alloc(s,44100 * 2, 2);
68 SynthDef("help-PingPong",{ arg out=0,bufnum=0;
70 left = Decay2.ar(Impulse.ar(0.7, 0.25), 0.01, 0.25,
71 SinOsc.ar(SinOsc.kr(3.7,0,200,500)));
72 right = Decay2.ar(Impulse.ar(0.5, 0.25), 0.01, 0.25,
73 Resonz.ar(PinkNoise.ar(4), SinOsc.kr(2.7,0,1000,2500),
77 PingPong.ar(bufnum, [left,right] * EnvGen.kr(Env([1, 1, 0], [2, 0.1])),
80 }).play(s,[\out, 0, \bufnum, b.bufnum]);
90 Patch({ arg buffer,feedback=0.5,delayTime=0.2;
92 left = Decay2.ar(Impulse.ar(0.7, 0.25), 0.01, 0.25,
93 SinOsc.ar(SinOsc.kr(3.7,0,200,500)));
94 right = Decay2.ar(Impulse.ar(0.5, 0.25), 0.01, 0.25,
95 Resonz.ar(PinkNoise.ar(4), SinOsc.kr(2.7,0,1000,2500), 0.2));
97 PingPong.ar(buffer.bufnumIr, [left,right], delayTime, feedback, 1)