File: DelayL.schelp

package info (click to toggle)
supercollider 1%3A3.10.0%2Brepack-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 45,496 kB
  • sloc: cpp: 283,513; lisp: 74,040; ansic: 72,252; sh: 23,016; python: 7,175; makefile: 1,087; perl: 766; java: 677; yacc: 314; lex: 175; ruby: 136; objc: 65; xml: 15
file content (58 lines) | stat: -rw-r--r-- 1,357 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
class:: DelayL
summary:: Simple delay line with linear interpolation.
related:: Classes/DelayC, Classes/DelayN, Classes/BufDelayL
categories::  UGens>Delays


Description::

Simple delay line with linear interpolation. See also
link::Classes/DelayN::  which uses no interpolation, and
link::Classes/DelayC::  which uses cubic interpolation. Cubic
interpolation is more computationally expensive than linear,
but more accurate.

The term "delay" is often used in electronic music to refer to a delay line with feedback. If you are looking for that, try CombL.


classmethods::

method::ar, kr

argument::in
The input signal.

argument::maxdelaytime
The maximum delay time in seconds. used to initialize the delay buffer size.

argument::delaytime
Delay time in seconds.

argument::mul
Output will be multiplied by this value.

argument::add
This value will be added to the output.

Examples::

code::
(
// Dust randomly triggers Decay to create an exponential
// decay envelope for the WhiteNoise input source
{
z = Decay.ar(Dust.ar(1,0.5), 0.3, WhiteNoise.ar);
DelayL.ar(z, 0.2, 0.2, 1, z); // input is mixed with delay via the add input
}.play
)

(
// recursive application of delay.
{
z = Decay2.ar(Dust.ar(1, 0.5), 0.01, 0.1, Saw.ar(100 + [0, 1]));
5.do { |i| z = DelayL.ar(RLPF.ar(z, Rand(100, 3000), 0.03), 1, 1 / (2**i), 1, z * 0.5) };
z
}.play
)
::