Csound Csound-dev Csound-tekno Search About

synthesizing with wave packets - ERRATA

Date1998-09-21 10:40
FromPedro Batista
Subjectsynthesizing with wave packets - ERRATA
I'm so sorry, but in my haste to send this last instr I missed a small bug. 
It doesnt change much, but caused vertical positioning to be uncentered 
sometimes. Here's the correct version
Sorry for the inconvenience,
pedro

;Start of WPT.ORC--------------------

sr   =    44100
kr   =    490
ksmps     =    90

;=-=-=-=-=-=-=-=-=-=-=- F I L T E R S -=-=-=-=-=-=-=-=-=-=-=-=-=;
;standard 4
ifn  ftgen     1, 0, 4, -2, 0.4829629131445341, 0.8365163037378079, 
0.2241438680420134, -0.1294095225512604

;standard 10
ifn  ftgen     2, 0, 16, -2, 0.160102397974, 0.603829269797, 0.724308528438, 
0.138428145901, -0.242294887066, -0.032244869585, 0.077571493840, 
 -0.006241490213, -0.012580751999, 0.003335725285

;standard 12
ifn  ftgen     3, 0, 16, -2, 0.111540743350, 0.494623890398, 0.751133908021, 
0.315250351709, -0.226264693965, -0.129766867567, 0.097501605587, 
0.027522865530, -0.031582039318, 0.000553842201, 0.004777257511, 
 -0.001077301085

;coifman 12
ifn  ftgen     4, 0, 16, -2, 1.15875967387, -.02932013798, -.04763959031, 
..273021046535, .574682393857, .294867193696, -.0540856070917, 
 -.0420264804608, .0167444101633, .00396788361296,-.00128920335614, 
 -.000509505399

;coifman 6
ifn  ftgen     5, 0, 8, -2, (sqrt(15)-3.0)/32.0, (1.0-sqrt(15))/32.0, 
(3.0-sqrt(15))/16.0, (sqrt(15)+3.0)/16.0, (sqrt(15)+13.0)/32.0, 
(9.0-sqrt(15))/32.0

;mirror filter
ifn  ftgen     6, 0, 16, -7, 0, 16, 0

;size table
ifn  ftgen     7, 0, 8, -2, 4, 10, 12, 12, 6

gifilt    =    0
gimirr    =    0
gifsz     =    0

     zakinit   1, 1022

;=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=;
     instr     1
;=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=;
; MirrorFilter
;=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=;
ifilter   =    p4
imirror   =    6
isztab    =    7
ifiltsz   table     ifilter-1, isztab
indx =    0
loop:
ifil table     ifiltsz-indx-1, ifilter
     itablew   (frac((indx+1)/2)==0 ? +1:-1)*ifil, indx, imirror
indx =    indx+1
     if (indxiwavlen) igoto main
ii   =    0
loop1:
     ziw  (ii==i1pos ? 1:0), iovec+ii
ii   =    ii+1
     if (ii=imin) igoto next2
imin =    isig
next2:    itablew   isig, indx, ivector
indx =    indx+1
     if (indx