<info>
i is ex6-2
ECMC Csound Tutorial example ex6-2
</info>
<tk_interface>
</tk_interface>
<mono>
    ; csound header
sr=44100
kr=2205
ksmps=20
nchnls=1

;  #############################################################
;  soundfile ex6-1 : harmonizer  ECMC Csound Tutorial
;  #############################################################

   ;  p4 =  gen1 function.# number of source soundfile} ,

   ;     p6 = rise {fade-in} time
   ;     p7 = decay {fade-out} time

instr 1
;----- SOUNDFILE INPUT --------------------
	ifunc = p4 ; gen1 function number of input soundfile
	iampscale = (p5 = 0 ? 1. : p5)  ; adjust input amplitude
	irise = (p6 = 0 ? .001 : p6)   ; fade-in time
	idecay =( p7  = 0 ? .001 : p7)  ; fade-out time

    ; loscil arguments
    ibasepitch = (p8 < 13. ? cpspch(p8) : p8) ; base pitch of soundfile in pch or cps
    ioutpitch = (p9 < 13. ? cpspch(p9) : p9) ; output pitch in pch or cps
    ioutpitch = (p9 < 3 ? p9 * ibasepitch :ioutpitch) ; or as multiplier of basepitch

 ; output amplitude envelope
kamp  expseg  .005 ,irise  , iampscale  , p3 - (irise + idecay) , iampscale , idecay , .005
asource  loscil  kamp, ioutpitch, ifunc, ibasepitch

;----- HARMONIZER --------------------
	imin init 0
	imin = (p10 < 1. ? p10 * ioutpitch : imin)
	imin = (p10 > 1. && p10 < 13. ? cpspch(p10) : imin)
	imin = (p10 > 13 ? p10 : imin)

      ; max. freq. variance
                     ; as % of output source pitch or in pch or cps
	imaxvar = (p11 < 1. ? p11 : p11 / ioutpitch)
        imode = p12 ; if 0, iharm1 & iharm2 are ratios * ioutpitch
                    ;  if 1, iharm1 & iharm2 are notes in pch or cps
        iprd = p15  ; pitch analysis window size
iharm1 init p13
iharm2 init p14
if imode = 0 igoto doit
if p13 = 0 igoto harm2
	iharm1 = (p13 < 13. ? cpspch(p13) : p13)
harm2: if p14 = 0 igoto doit
	iharm2 = (p14 < 13. ? cpspch(p14) : p14)
doit:

aharm harmon asource, ioutpitch, imaxvar, iharm1, iharm2, imode, imin, iprd
print ioutpitch, imaxvar, iharm1, iharm2, imode, imin, iprd
;----- SIGNAL OUTPUTS  {source/harmonizer mix} ---------------
out (p16 * asource) + (p17 * aharm)
endin

</mono>
<stereo>
</stereo>
<score>

                  SCORE-11, Version 1.4
Copyright (C) 1982, 1990, 1992, 1995 by Alexander R. Brinkman
     Eastman School of Music, University of Rochester

new random seed =     999
f1 0 32768 -1 "/sflib/voice/sop3.b3" 0 0 0
f2 0 32768 -1 "/sflib/voice/sop3.ds4" 0 0 0
f3 0 32768 -1 "/sflib/voice/sop3.fs4" 0 0 0
f4 0 32768 -1 "/sflib/voice/sop3.as4" 0 0 0
f5 0 32768 -1 "/sflib/voice/sop3.cs5" 0 0 0
f6 0 32768 -1 "/sflib/voice/sop3.e5" 0 0 0
f7 0 32768 -1 "/sflib/voice/sop3.gs5" 0 0 0
f8 0 32768 -1 "/sflib/voice/sop3.b5" 0 0 0
f99 0 128 -17 0 1 61 2 65 3 68 4 72 5 75 6 78 7 82 8 
f98 0 16 -2 0 59 63 66 70 73 76 80 83 
  i1 0.000 0.303 1 0.030 0.063 0.129 7.11 0.985 0.900 0.300 0 0.905 1.175 0.030 0.488 0.932
  i1 0.296 0.355 3 0.073 0.072 0.139 8.06 0.980 0.900 0.300 0 0.687 1.294 0.030 0.420 0.933
  i1 0.602 0.421 5 0.119 0.047 0.176 9.01 0.996 0.900 0.300 0 0.722 1.101 0.030 0.443 0.831
  i1 0.905 0.442 7 0.166 0.041 0.188 9.08 1.048 0.900 0.300 0 0.704 1.269 0.030 0.485 0.915
  i1 1.200 0.363 8 0.215 0.033 0.162 9.11 1.043 0.900 0.300 0 0.885 1.138 0.030 0.312 0.913
  i1 1.465 0.346 6 0.267 0.030 0.145 9.04 1.107 0.900 0.300 0 0.693 1.307 0.030 0.313 0.808
  i1 1.757 0.356 4 0.320 0.017 0.155 8.10 1.098 0.900 0.300 0 0.737 1.314 0.030 0.450 0.949
  i1 2.008 0.349 2 0.376 0.019 0.150 8.03 0.967 0.900 0.300 0 0.900 1.063 0.030 0.455 0.982
  i1 2.250 0.314 1 0.434 0.011 0.138 7.11 0.896 0.900 0.300 0 0.724 1.089 0.030 0.481 0.899
  i1 2.484 0.310 3 0.494 0.008 0.148 8.06 0.931 0.900 0.300 0 0.765 1.282 0.030 0.415 0.939
  i1 2.721 0.305 5 0.457 0.009 0.138 9.01 0.998 0.900 0.300 0 0.740 1.136 0.030 0.370 0.935
  i1 2.955 0.290 7 0.412 0.012 0.147 9.08 0.902 0.900 0.300 0 0.844 1.311 0.030 0.473 0.932
  i1 3.169 0.327 8 0.367 0.012 0.151 9.11 1.089 0.900 0.300 0 0.833 1.274 0.030 0.346 0.973
  i1 3.396 0.300 6 0.325 0.020 0.147 9.04 1.104 0.900 0.300 0 0.687 1.099 0.030 0.315 0.993
  i1 3.655 0.366 4 0.283 0.023 0.122 8.10 1.045 0.900 0.300 0 0.837 1.203 0.030 0.431 0.993
  i1 3.888 0.339 2 0.243 0.028 0.152 8.03 0.959 0.900 0.300 0 0.759 1.228 0.030 0.453 0.956
  i1 4.154 0.359 1 0.204 0.033 0.161 7.11 1.077 0.900 0.300 0 0.809 1.241 0.030 0.361 0.965
  i1 4.399 0.353 3 0.166 0.043 0.185 8.06 0.955 0.900 0.300 0 0.852 1.270 0.030 0.454 0.884
  i1 4.669 0.347 5 0.130 0.048 0.185 9.01 0.954 0.900 0.300 0 0.931 1.098 0.030 0.312 0.975
  i1 4.936 0.362 7 0.094 0.065 0.196 9.08 1.067 0.900 0.300 0 0.935 1.222 0.030 0.362 0.893
  i1 5.218 0.362 8 0.060 0.079 0.203 9.11 1.067 0.900 0.300 0 0.862 1.170 0.030 0.428 0.950
  i1 5.536 0.366 6 0.027 0.095 0.233 9.04 1.017 0.900 0.300 0 0.910 1.258 0.030 0.323 0.978
  i1 5.862 0.459 4 0.020 0.100 0.230 8.10 0.960 0.900 0.300 0 0.722 1.316 0.030 0.341 0.984
  i1 6.183 0.361 2 0.020 0.100 0.248 8.03 0.987 0.900 0.300 0 0.922 1.210 0.030 0.414 0.836
  i1 6.479 0.447 1 0.020 0.100 0.230 7.11 1.090 0.900 0.300 0 0.723 1.311 0.030 0.301 0.859
e
</score>
