;  #############################################################
;  ex5-3  : Balance used as envelope follower
;  #############################################################

; p4  = soundin.#  number  of audio soundfile
; p5 = ampltidue multiplier  ; p6 = skip from front of audio soundfile
; p7 = optional exponential fade in time ; p8 = optional exponential fade out time
; p9  = soundin.#  number  of control soundfile
; p10 = skip time into control soundfile

instr 1

audio  soundin  p4, p6   ; read in the audio soundfile
aenv soundin p9 , p10    ; read in the control soundfile

 ; impose control soundfile envelope on audio file
audio  balance  audio , aenv 
 ; vary output amplitude from note to note :
p5 = ( p5 = 0 ? 1. : p5 )
audio  =  audio * p5

; optional fade-in & fade-out 
itest =  p7 + p8
if itest = 0  goto done
   kfades expseg .01, p7, 1.,p3-(p7 + p8), 1., p7,.01
   audio = audio * kfades
done:
out (p11* aenv) + ((1. - p11) * audio)
endin

