-+P -d -+O
;Alessandro Petrolati
;Spectral Text
;9/04/2004
sr =44100
kr =441
ksmps =100
giFrames init 25
giSize init 1024
giAmp ftgen 1,0,giSize/2+1, 2, 0
giFrq ftgen 2,0,giSize/2+1, 2, 0
giSine ftgen 3,0,giSize/2+1, 10, 1
giEq ftgen 4, 0,giSize/2+1,2,0
ifun1 ftgen 5, 0,giSize/2+1,7,0,56,0,50,1,100,1,1,0,512,0
ifun2 ftgen 6, 0,giSize/2+1,7,1,giSize,1
gilist ftgen 7, 0,2,-2,ifun1,ifun2
#define BANDE(a'b'c'd'e') #
knull1,gihband1$a FLslider " ", 0,1, 0, 2, -1, $b, $c, $d, $e
knull2,gihband2$a FLslider " ", 0,1, 0, 2, -1, $b, $c, $d+($b), $e
knull3,gihband3$a FLslider " ", 0,1, 0, 2, -1, $b, $c, $d+($b*2), $e
knull4,gihband4$a FLslider " ", 0,1, 0, 2, -1, $b, $c, $d+($b*3), $e
knull5,gihband5$a FLslider " ", 0,1, 0, 2, -1, $b, $c, $d+($b*4), $e
knull6,gihband6$a FLslider " ", 0,1, 0, 2, -1, $b, $c, $d+($b*5), $e
knull7,gihband7$a FLslider " ", 0,1, 0, 2, -1, $b, $c, $d+($b*6), $e
knull8,gihband8$a FLslider " ", 0,1, 0, 2, -1, $b, $c, $d+($b*7), $e
FLsetVal_i 1,gihband1$a
FLsetVal_i 1,gihband2$a
FLsetVal_i 1,gihband3$a
FLsetVal_i 1,gihband4$a
FLsetVal_i 1,gihband5$a
FLsetVal_i 1,gihband6$a
FLsetVal_i 1,gihband7$a
FLsetVal_i 1,gihband8$a
FLsetBox 5,gihband1$a
FLsetBox 5,gihband2$a
FLsetBox 5,gihband3$a
FLsetBox 5,gihband4$a
FLsetBox 5,gihband5$a
FLsetBox 5,gihband6$a
FLsetBox 5,gihband7$a
FLsetBox 5,gihband8$a
#
#define MOVE(a'b'c') #
k0$a tab 0+$b,$c
k1$a tab 1+$b,$c
k2$a tab 2+$b,$c
k3$a tab 3+$b,$c
k4$a tab 4+$b,$c
k5$a tab 5+$b,$c
k6$a tab 6+$b,$c
k7$a tab 7+$b,$c
FLsetVal ktrig,1-k0$a, gihband1$a
FLsetVal ktrig,1-k1$a, gihband2$a
FLsetVal ktrig, 1-k2$a, gihband3$a
FLsetVal ktrig, 1-k3$a, gihband4$a
FLsetVal ktrig, 1-k4$a, gihband5$a
FLsetVal ktrig, 1-k5$a, gihband6$a
FLsetVal ktrig, 1-k6$a, gihband7$a
FLsetVal ktrig, 1-k7$a, gihband8$a
#
FLpanel "Spectral Text",800,600,50,50
ih1 FLvalue " ", 54, 25, 295, 15
gkGain,init0 FLslider "Equalizzazione",0, 1, 0, 3, ih1, 280, 18, 10,20
FLsetVal_i 20,init0
FLsetBox 4,init0
FLsetAlign 2,init0
FLsetBox 0,ih1
kexit, iex FLbutton "Exitnow", 1, 0, 1, 100, 30, 120, 450, +105, 110, 0, 3600
FLsetFont 2,iex
FLsetTextSize 12,iex
FLsetBox 4, iex
FLcolor 128,0,0,192,192,192
$BANDE(0'10'381'10'59')
$BANDE(8'10'381'10+($b*8)'59')
$BANDE(16'10'381'10+($b*16)'59')
$BANDE(24'10'381'10+($b*24)'59')
$BANDE(32'10'381'10+($b*32)'59')
$BANDE(40'10'381'10+($b*40)'59')
$BANDE(48'10'381'10+($b*48)'59')
$BANDE(56'10'381'10+($b*56)'59')
gkRescale,ginull FLslider "Rescale",.2,4,0,15,-1,400,20,10,550
FLsetVal_i 1,ginull
FLpanel_end
FLrun
instr 1
ioverlap init 4
iprecision init 10
ftmorf gkGain, gilist, giEq
a1 diskin "BROWSE_FILE",1,0,1
fanal pvsanal a1/32767,giSize,giSize/ioverlap,giSize*iprecision,0 ;analyse, using Hamming
fanal pvsmaska fanal,giEq,1 ;apply eq from f-table
;aout pvsynth fequ ;and resynthesize
kflag pvsftw fanal, giAmp,giFrq
;aout pvsadsyn fsin, 50, 1,30 ; [,ibinoffset, ibinincr, iinit]
;aout adsynt2 32767, 1, giSine, giFrq, giOut, 50 ;[, iphs]
;vmult giFrq,gkRescale,ftlen(giFrq)
vmult giFrq,gkRescale,ftlen(giFrq)
pvsftr fanal, giAmp,giFrq
aout pvsynth fanal ;and resynthesize
out aout*32767
ktrig metro giFrames
$MOVE(0'0'giAmp')
$MOVE(8'8'giAmp')
$MOVE(16'16'giAmp')
$MOVE(24'24'giAmp')
$MOVE(32'32'giAmp')
$MOVE(40'40'giAmp')
$MOVE(48'48'giAmp')
$MOVE(56'56'giAmp')
endin
instr 110
exitnow
endin
i1 0 10000
e