From 3a5a64df866c4962a2749c98e7619ca183005c06 Mon Sep 17 00:00:00 2001 From: rob Date: Thu, 18 Dec 2008 11:04:09 +0000 Subject: [PATCH] updated help files --- Help/AverageOutput.html | 2 +- Help/SwitchDelay.html | 91 ++++++++++++++++++++--------------------- 2 files changed, 46 insertions(+), 47 deletions(-) diff --git a/Help/AverageOutput.html b/Help/AverageOutput.html index 9a842f6..78a41bb 100644 --- a/Help/AverageOutput.html +++ b/Help/AverageOutput.html @@ -14,7 +14,7 @@ p.p4 {margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Helvetica} p.p5 {margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px Helvetica} p.p6 {margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px Helvetica; min-height: 16.0px} p.p7 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; min-height: 12.0px} -p.p8 {margin: 0.0px 0.0px 0.0px 57.0px; text-indent: -57.0px; font: 9.0px Monaco; color: #8b2e18} +p.p8 {margin: 0.0px 0.0px 0.0px 57.0px; text-indent: -57.0px; font: 9.0px Monaco; color: #7a341d} p.p9 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco} span.s1 {text-decoration: underline} diff --git a/Help/SwitchDelay.html b/Help/SwitchDelay.html index 7405c2d..724ad56 100644 --- a/Help/SwitchDelay.html +++ b/Help/SwitchDelay.html @@ -9,18 +9,20 @@ @@ -29,69 +31,66 @@ span.Apple-tab-span {white-space:pre}


SwitchDelay.ar(input, drylevel, wetlevel, delaytime, delayfactor, maxdelaytime, mul, add)


-

A feedback delay line which allows switching the buffer read pointer using the switch-and-ramp technique

+

A feedback delay line which allows moving the buffer read position using the switch-and-ramp technique

as described by Miller S. Puckette in his Theory and Techniques of Electronic Music book.

-

http://crca.ucsd.edu/~msp/techniques/latest/book.pdf (chapter 4)

+

http://crca.ucsd.edu/~msp/techniques/latest/book.pdf (chapter 4)


Altering the buffer read position, in order to affect the perceived delay speed/timing, creates a 

-

discontinuity in the signal, and usually comes with unwanted audible artefacts. SwitchDelay seeks to 

-

minimize these artefacts by use of the above technique. See the examples below for comparison.

+

discontinuity in the signal, typically creating unwanted audible artefacts. SwitchDelay seeks to 

+

minimize these artefacts by use of the above technique. 


input - a signal to be filtered

-


drylevel - level of dry signal (default: 1.0)

-


wetlevel - level of delayed signal (default: 1.0)

-


delaytime - seconds to delay signal (default: 1.0)

-


delayfactor - multiplier for feedback level, affects the length of the feedback tail (default 0.7)

   limited slightly below 1.0 to avoid speaker damaging mistakes

-

   

maxdelaytime - buffer size (default 20.0)


-

  See also: CombN etc

-


+

  See also: CombN etc


-

// Load a soundfile:

-

b = Buffer.read(s, "sounds/a11wlk01.wav");

-


-

// simple feedback line, no modulation

+


+

// before anything else

+

s = Server.local.boot;

+

b = Buffer.read(s, "sounds/a11wlk01.wav");

+


+


+

// simple feedback delay

(

-

SynthDef('help-switchdelay-1', { arg out=0, bufnum, delaytime;

-

Out.ar(out,

-

DelayLineCM2.ar(

-

PlayBuf.ar(numChannels: 1, bufnum: bufnum, loop: 0) * 0.5,

-

delaytime: delaytime,

-

wetlevel: 0.6

+

SynthDef('help-switchdelay-1', { arg out=0, bufnum;

+

Out.ar(out,

+

SwitchDelay.ar(

+

PlayBuf.ar(numChannels: 1, bufnum: bufnum, loop: 0) * 0.5,

+

delaytime: 0.2,

+

delayfactor: 0.85,

+

wetlevel: 0.7

)

);

}).send(s);

)

-


-

x = Synth('help-switchdelay-1', [\bufnum, b, \delaytime, 2.0]);

+


+

x = Synth('help-switchdelay-1', [\bufnum, b]);

x.free;

-


-


-


-

// this time, change the buffer read pointer periodically.

+


+


+

// this time, change the buffer read pointer periodically.

(

-

SynthDef('help-switchdelay-2', { arg out=0, bufnum, delaytime;

-

Out.ar(out,

-

DelayLineCM2.ar(

-

PlayBuf.ar(numChannels: 1, bufnum: bufnum, loop: 0) * 0.5,

+

SynthDef('help-switchdelay-2', { arg out=0, bufnum, delaytime;

+

Out.ar(out,

+

SwitchDelay.ar(

+

PlayBuf.ar(numChannels: 1, bufnum: bufnum, loop: 0) * 0.5,

wetlevel: 0.6,

-

delaytime: Select.kr(

-

Stepper.kr(Impulse.kr(0.5), 0, 0, 3),

-

[ 0.02, 0.1, 0.725, 0.25 ] 

+

delaytime: Select.kr(

+

Stepper.kr(Impulse.kr(0.5), 0, 0, 3),

+

#[ 0.02, 0.1, 0.725, 0.25 ] 

)

)

);

}).send(s);

)

-


-

x = Synth('help-switchdelay-2', [\bufnum, b, \loop, 0, \delaytime, 2.0]);

+


+

x = Synth('help-switchdelay-2', [\bufnum, b, \loop, 0, \delaytime, 2.0]);

x.free;

-


+