packages feed

hsc3-0.16: Help/UGen/gendy1.help.lhs

    > Sound.SC3.UGen.Help.viewSC3Help "Gendy1"
    > Sound.SC3.UGen.DB.ugenSummary "Gendy1"

> import Data.Char {- base -}
> import Sound.SC3 {- base -}

SC3 default parameters

> g_01 = gendy1 'α' AR 1 1 1 1 440 660 0.5 0.5 12 12 * 0.15

Wandering bass

> g_02 = gendy1 'α' AR 1 1 1.0 1.0 30 100 0.3 0.05 5 5 * 0.15

Play me

> g_03 =
>     let x = mouseX KR 100 1000 Exponential 0.1
>         g = gendy1 'α' AR 1 1 1.0 1.0 30 100 0.3 0.05 5 5
>     in rlpf g 500 0.3 * 0.1

Scream!

> g_04 =
>     let x = mouseX KR 220 440 Exponential 0.1
>         y = mouseY KR 0.0 1.0 Linear 0.1
>     in gendy1 'α' AR 2 3 1 1 x (8 * x) y y 7 7 *0.3

1 CP = random noise

> g_05 = gendy1 'α' AR 1 1 1 1 440 660 0.5 0.5 1 1 * 0.15

2 CPs = an oscillator

> g_06 = gendy1 'α' AR 1 1 1 1 440 660 0.5 0.5 2 2 * 0.15

Used as an LFO

> g_07 =
>     let ad = sinOsc KR 0.10 0 * 0.49 + 0.51
>         dd = sinOsc KR 0.13 0 * 0.49 + 0.51
>         as = sinOsc KR 0.17 0 * 0.49 + 0.51
>         ds = sinOsc KR 0.19 0 * 0.49 + 0.51
>         g = gendy1 'α' KR 2 4 ad dd 3.4 3.5 as ds 10 10
>     in sinOsc AR (g * 50 + 350) 0 * 0.3

Wasp

> g_08 =
>     let ad = sinOsc KR 0.1 0 * 0.1 + 0.9
>     in gendy1 'α' AR 0 0 ad 1.0 50 1000 1 0.005 12 12 * 0.2

Modulate distributions. Change of pitch as distributions change
the duration structure and spectrum

> g_09 =
>     let x = mouseX KR 0 7 Linear 0.1
>         y = mouseY KR 0 7 Linear 0.1
>     in gendy1 'α' AR x y 1 1 440 660 0.5 0.5 12 12 * 0.2

Modulate number of CPs.

> g_10 =
>     let x = mouseX KR 1 13 Linear 0.1
>     in gendy1 'α' AR 1 1 1 1 440 660 0.5 0.5 12 x * 0.2

Self modulation.

> g_11 =
>     let x = mouseX KR 1   13 Linear 0.1
>         y = mouseY KR 0.1 10 Linear 0.1
>         g0 = gendy1 'α' AR 5 4 0.3 0.7 0.1 y 1.0 1.0 5 5
>     in gendy1 'α' AR 1 1 1 1 440 (g0 * 500 + 600) 0.5 0.5 12 x * 0.2

Use SINUS to track any oscillator and take CP positions from it use
adParam and ddParam as the inputs to sample.

> g_12 =
>     let p = lfPulse KR 100 0 0.4
>         s = sinOsc KR 30 0 * 0.5
>     in gendy1 'α' AR 6 6 p s 440 660 0.5 0.5 12 12 * 0.2

Near the corners are interesting.

> g_13 =
>     let x = mouseX KR 0 200 Linear 0.1
>         y = mouseY KR 0 200 Linear 0.1
>         p = lfPulse KR x 0 0.4
>         s = sinOsc KR y 0 * 0.5
>     in gendy1 'α' AR 6 6 p s 440 660 0.5 0.5 12 12 * 0.2

Texture

> g_14 =
>     let node e = let f = rand e 130 160.3
>                      r0 = rand e 0 6
>                      r1 = rand (toUpper e) 0 6
>                      l = rand e (-1) 1
>                      ad = sinOsc KR 0.10 0 * 0.49 + 0.51
>                      dd = sinOsc KR 0.13 0 * 0.49 + 0.51
>                      as = sinOsc KR 0.17 0 * 0.49 + 0.51
>                      ds = sinOsc KR 0.19 0 * 0.49 + 0.51
>                      g = gendy1 'α' AR r0 r1 ad dd f f as ds 12 12
>                      o = sinOsc AR (g * 200 + 400) 0
>                  in pan2 o l 0.1
>     in mix (mce (map node ['β'..'γ']))

Try durscale 10.0 and 0.0 too.

> g_15 =
>     let x = mouseX KR 10 700 Linear 0.1
>         y = mouseY KR 50 1000 Linear 0.1
>         g = gendy1 'α' AR 2 3 1 1 1 x 0.5 0.1 10 10
>     in combN (resonz g y 0.1) 0.1 0.1 5 * 0.6