JDELAY -- simple regenerating delay-line + filter
in RTcmix/insts/jg


quick syntax:
JDELAY(outsk, insk, dur, AMP, DELAYTIME, FEEDBACK, ringdowndur, FILTFREQ, SIGMIX[, inputchan, PAN, prefadesend, dcblock])


   p0 = output start time (seconds)
   p1 = input start time (seconds)
   p2 = input duration (seconds)
   p3 = amplitude multiplier (relative multiplier of input signal)
   p4 = delay time (seconds)
   p5 = delay feedback (regeneration multiplier, 0-1])
   p6 = ring-down duration (seconds)
   p7 = cutoff freq for low-pass filter (Hz, 0 to disable filter)
   p8 = wet/dry mix (0: dry, 1: wet)
   p9 = input channel number [optional; default is 0]
   p10 = pan (0-1 stereo; 0.5 is middle) [optional; default is 0]
   p11 = pre-fader send (0: no, 1: yes) [optional, default is no]
   p12 = apply DC blocking filter (0: no, 1: yes) [optional, default is yes]
  
   p3 (amplitude), p4 (delay time), p5 (feedback), p7 (cutoff), p8 (wet/dry)
   and p8 (pan) can receive dynamic updates from a table or real-time control
   source.

   Author:  John Gibson, 6/23/99; rev for v4, 7/21/04



JDELAY instantiates a regenerating delay, similar to DELAY.



Usage Notes

The differences between JDELAY and DELAY are: JDELAY can produce mono or stereo output.



Sample Scores

very basic:
   rtsetparams(44100, 1)
   load("JDELAY")

   rtinput("mysound.aif")

	JDELAY(0, 0, 4.3, 1.0, 0.35, 0.7, 5.0, 0, 1)


slightly more advanced:
   rtsetparams(44100, 2)
   load("JDELAY")
   
   rtinput("mysound.aif")
   
   outskip = 0
   inskip = 0
   indur = DUR()
   amp = 1.0
   deltime = 1/cpspch(7.02)
   feedback = .990
   ringdur = 1
   percent_wet = 0.5
   prefadersend = 0  // if 0, sound stops abruptly; else env spans indur + ringdur
   
   env = maketable("line", 1000, 0,0, 1,1, 6,1, 10,0)
   
   cutoff = 4000
   JDELAY(outskip, inskip, indur, amp*env, deltime, feedback, ringdur,
      cutoff, percent_wet, inchan=0, pan=0.5, prefadersend)



SEE ALSO

maketable, COMBIT, DEL1, DELAY PANECHO,