<CsoundSynthesizer>
<CsOptions>
-odac
</CsOptions>
<CsInstruments>
sr = 44100
ksmps = 32
nchnls = 2
0dbfs = 1

giSine    ftgen     0, 0, 2^10, 10, 1 ;table with a sine wave

instr 1
 a3        init      0
 kamp      linseg    0, 1.5, 0.2, 1.5, 0       ;envelope for initial input
 asnd      poscil    kamp, 440, giSine         ;initial input
 if p4 == 1 then                               ;choose between two sines ...
  adel1     poscil    0.0523, 0.023, giSine
  adel2     poscil    0.073, 0.023, giSine,.5
 else                                          ;... or a random movement 
                                               ;for the delay lines
  adel1     randi     0.05, 0.1, 2
  adel2     randi     0.08, 0.2, 2
 endif
 a0        delayr    1                          ;delay line of 1 second
 a1        deltapi   adel1 + 0.1                ;first reading
 a2        deltapi   adel2 + 0.1                ;second reading
 krms      rms       a3                         ;rms measurement
           delayw    asnd + exp(-krms) * a3     ;feedback depending on rms
 a3        reson     -(a1+a2), 3000, 7000, 2    ;calculate a3
 aout      linen     a1/3, 1, p3, 1             ;apply fade in and fade out
           outs      aout, aout
endin
</CsInstruments>
<CsScore>
i 1 0 60 1          ;two sine movements of delay with feedback
i 1 61 . 2          ;two random movements of delay with feedback
</CsScore>
</CsoundSynthesizer>
;example by Martin Neukom, adapted by Joachim Heintz
