[preset00]
fRating=0.000000
fGammaAdj=1.000000
fDecay=0.925000
fVideoEchoZoom=1.001829
fVideoEchoAlpha=0.500000
nVideoEchoOrientation=3
nWaveMode=2
bAdditiveWaves=1
bWaveDots=1
bWaveThick=0
bModWaveAlphaByVolume=0
bMaximizeWaveColor=0
bTexWrap=1
bDarkenCenter=0
bRedBlueStereo=0
bBrighten=0
bDarken=0
bSolarize=0
bInvert=0
fWaveAlpha=4.099998
fWaveScale=2.850136
fWaveSmoothing=0.630000
fWaveParam=0.000000
fModWaveAlphaStart=0.710000
fModWaveAlphaEnd=1.300000
fWarpAnimSpeed=1.000000
fWarpScale=1.331000
fZoomExponent=1.000000
fShader=0.000000
zoom=0.999514
rot=0.000000
cx=0.500000
cy=0.500000
dx=0.000000
dy=0.000000
warp=0.010000
sx=1.000000
sy=1.000000
wave_r=1.000000
wave_g=0.000000
wave_b=0.000000
wave_x=0.500000
wave_y=0.500000
ob_size=0.000000
ob_r=0.010000
ob_g=0.000000
ob_b=0.000000
ob_a=1.000000
ib_size=0.005000
ib_r=0.250000
ib_g=0.250000
ib_b=0.250000
ib_a=1.000000
nMotionVectorsX=63.936001
nMotionVectorsY=47.952000
mv_dx=0.000000
mv_dy=0.000000
mv_l=5.000000
mv_r=0.200000
mv_g=1.000000
mv_b=1.000000
mv_a=0.000000
wavecode_0_enabled=0
wavecode_0_samples=512
wavecode_0_sep=0
wavecode_0_bSpectrum=0
wavecode_0_bUseDots=0
wavecode_0_bDrawThick=0
wavecode_0_bAdditive=0
wavecode_0_scaling=1.000000
wavecode_0_smoothing=0.500000
wavecode_0_r=1.000000
wavecode_0_g=1.000000
wavecode_0_b=1.000000
wavecode_0_a=1.000000
wave_0_per_frame1=basstime=basstime+(bass*bass);
wave_0_per_frame2=t1=basstime*0.003;
wave_0_per_frame3=
wave_0_per_point1=//plot x,y,z to point on circle
wave_0_per_point2=smp=sample*6.283;
wave_0_per_point3=xp=sin(smp )*0.05;
wave_0_per_point4=yp=cos(smp )*0.05;
wave_0_per_point5=zp=0;
wave_0_per_point6=
wave_0_per_point7=
wave_0_per_point8=//alter shape;
wave_0_per_point9=angy=sin(sample*6.28*4 +t1 )*6.28;
wave_0_per_point10=xq=xp*cos(angy) - zp*sin(angy);
wave_0_per_point11=zq=xp*sin(angy) + zp*cos(angy);
wave_0_per_point12=xp=xq;
wave_0_per_point13=zp=zq;
wave_0_per_point14=
wave_0_per_point15=
wave_0_per_point16=//rotate on y axis;
wave_0_per_point17=angy=t1*0.1;
wave_0_per_point18=xq=xp*cos(angy) - zp*sin(angy);
wave_0_per_point19=zq=xp*sin(angy) + zp*cos(angy);
wave_0_per_point20=xp=xq;
wave_0_per_point21=zp=zq;
wave_0_per_point22=
wave_0_per_point23=//rotate on x axis
wave_0_per_point24=axs1 = sin(t1*0.15) + 1.6;
wave_0_per_point25=yq= yp*cos(axs1) - zp*sin(axs1);
wave_0_per_point26=zq= yp*sin(axs1) + zp*cos(axs1);
wave_0_per_point27=yp=yq;
wave_0_per_point28=zp=zq;
wave_0_per_point29=
wave_0_per_point30=//rotate on y axis again
wave_0_per_point31=axs2 = sin(t1*0.1)*3.3;
wave_0_per_point32=xq=xp*cos(axs2) - zp*sin(axs2);
wave_0_per_point33=zq=xp*sin(axs2) + zp*cos(axs2);
wave_0_per_point34=xp=xq;
wave_0_per_point35=zp=zq;
wave_0_per_point36=
wave_0_per_point37=//stretch y axis to compensate for aspect ratio
wave_0_per_point38=yp=yp*1.2;
wave_0_per_point39=
wave_0_per_point40=//push forward into viewpace
wave_0_per_point41=zp=zp+2.1;
wave_0_per_point42=
wave_0_per_point43=//project x,y,z into screenspace
wave_0_per_point44=xs=xp/zp;
wave_0_per_point45=ys=yp/zp;
wave_0_per_point46=
wave_0_per_point47=//center 0,0 in middle of screen
wave_0_per_point48=x=xs+0.5+q4;
wave_0_per_point49=y=ys+0.5+q5;
wave_0_per_point50=
wave_0_per_point51=r=1-q1;
wave_0_per_point52=g=1-q2;
wave_0_per_point53=b=1-q3;
wavecode_1_enabled=0
wavecode_1_samples=512
wavecode_1_sep=0
wavecode_1_bSpectrum=0
wavecode_1_bUseDots=0
wavecode_1_bDrawThick=0
wavecode_1_bAdditive=0
wavecode_1_scaling=1.000000
wavecode_1_smoothing=0.500000
wavecode_1_r=1.000000
wavecode_1_g=1.000000
wavecode_1_b=1.000000
wavecode_1_a=1.000000
wavecode_2_enabled=0
wavecode_2_samples=512
wavecode_2_sep=0
wavecode_2_bSpectrum=0
wavecode_2_bUseDots=0
wavecode_2_bDrawThick=0
wavecode_2_bAdditive=0
wavecode_2_scaling=1.000000
wavecode_2_smoothing=0.500000
wavecode_2_r=1.000000
wavecode_2_g=1.000000
wavecode_2_b=1.000000
wavecode_2_a=1.000000
wavecode_3_enabled=0
wavecode_3_samples=512
wavecode_3_sep=0
wavecode_3_bSpectrum=0
wavecode_3_bUseDots=0
wavecode_3_bDrawThick=0
wavecode_3_bAdditive=0
wavecode_3_scaling=1.000000
wavecode_3_smoothing=0.500000
wavecode_3_r=1.000000
wavecode_3_g=1.000000
wavecode_3_b=1.000000
wavecode_3_a=1.000000
shapecode_0_enabled=0
shapecode_0_sides=23
shapecode_0_additive=1
shapecode_0_thickOutline=0
shapecode_0_textured=1
shapecode_0_x=0.500000
shapecode_0_y=0.700000
shapecode_0_rad=0.154930
shapecode_0_ang=0.000000
shapecode_0_tex_ang=0.000000
shapecode_0_tex_zoom=0.010000
shapecode_0_r=1.000000
shapecode_0_g=1.000000
shapecode_0_b=1.000000
shapecode_0_a=1.000000
shapecode_0_r2=1.000000
shapecode_0_g2=1.000000
shapecode_0_b2=1.000000
shapecode_0_a2=0.000000
shapecode_0_border_r=1.000000
shapecode_0_border_g=1.000000
shapecode_0_border_b=1.000000
shapecode_0_border_a=0.000000
shape_0_per_frame1=y=bass_att*0.5+0.2;
shape_0_per_frame2=x=cos(time*2)*0.5+0.5;
shapecode_1_enabled=0
shapecode_1_sides=4
shapecode_1_additive=0
shapecode_1_thickOutline=0
shapecode_1_textured=1
shapecode_1_x=0.500000
shapecode_1_y=0.500000
shapecode_1_rad=1.801999
shapecode_1_ang=0.000000
shapecode_1_tex_ang=3.141593
shapecode_1_tex_zoom=0.572684
shapecode_1_r=1.000000
shapecode_1_g=1.000000
shapecode_1_b=1.000000
shapecode_1_a=1.000000
shapecode_1_r2=1.000000
shapecode_1_g2=1.000000
shapecode_1_b2=1.000000
shapecode_1_a2=1.000000
shapecode_1_border_r=1.000000
shapecode_1_border_g=1.000000
shapecode_1_border_b=1.000000
shapecode_1_border_a=0.000000
shape_1_per_frame1=//ang = ang + (bass*.2) + (time*.4);
shape_1_per_frame2=//rad=1.781+(bass*0.025);
shape_1_per_frame3=ang=above(0.5,treb_att)*.063;
shapecode_2_enabled=0
shapecode_2_sides=100
shapecode_2_additive=1
shapecode_2_thickOutline=0
shapecode_2_textured=1
shapecode_2_x=0.900000
shapecode_2_y=0.500000
shapecode_2_rad=0.100000
shapecode_2_ang=0.000000
shapecode_2_tex_ang=0.000000
shapecode_2_tex_zoom=0.010000
shapecode_2_r=1.000000
shapecode_2_g=1.000000
shapecode_2_b=1.000000
shapecode_2_a=1.000000
shapecode_2_r2=1.000000
shapecode_2_g2=1.000000
shapecode_2_b2=1.000000
shapecode_2_a2=0.000000
shapecode_2_border_r=1.000000
shapecode_2_border_g=1.000000
shapecode_2_border_b=1.000000
shapecode_2_border_a=0.100000
shape_2_per_frame1=x = sin(time*5) * .4 + .5;
shape_2_per_frame2=y=treb_att*0.5;
shape_2_per_frame3=
shape_2_per_frame4=pow( (bass*.15),2);
shapecode_3_enabled=0
shapecode_3_sides=100
shapecode_3_additive=0
shapecode_3_thickOutline=0
shapecode_3_textured=1
shapecode_3_x=0.500000
shapecode_3_y=0.500000
shapecode_3_rad=0.033004
shapecode_3_ang=0.000000
shapecode_3_tex_ang=0.000000
shapecode_3_tex_zoom=0.010000
shapecode_3_r=1.000000
shapecode_3_g=1.000000
shapecode_3_b=1.000000
shapecode_3_a=1.000000
shapecode_3_r2=1.000000
shapecode_3_g2=1.000000
shapecode_3_b2=1.000000
shapecode_3_a2=0.000000
shapecode_3_border_r=1.000000
shapecode_3_border_g=1.000000
shapecode_3_border_b=1.000000
shapecode_3_border_a=0.000000
shape_3_per_frame1=x=.5+(bass*0.07);
per_frame_1=wave_a = 0;
per_frame_2=
per_frame_3=
per_frame_4=
per_frame_5=//Thanks to Zylot for rainbow generator
per_frame_6=counter1 = if(equal(counter2,1),if(equal(counter1,1),0,counter1+.2),1);
per_frame_7=counter2 = if(equal(counter1,1),if(equal(counter2,1),0,counter2+.2),1);
per_frame_8=cdelay1 = if(equal(cdelay2,1),1,if(equal(colorcounter%2,1),if(equal(counter1,1),2 ,0), if(equal(counter2,1),2,0)));
per_frame_9=cdelay2 = if(equal(cdelay1,2),1,0);
per_frame_10=colorcounter = if(above(colorcounter,7),0,if(equal(cdelay1,1),colorcounter+1,colorcounter));
per_frame_11=ib_r = .5*if(equal(colorcounter,1),1, if(equal(colorcounter,2),1, if(equal(colorcounter,3),1, if(equal(colorcounter,4),sin(counter2+2.1), if(equal(colorcounter,5),0, if(equal(colorcounter,6),0,sin(counter1)))))));
per_frame_12=ib_g = .5*if(equal(colorcounter,1),0, if(equal(colorcounter,2),sin(counter2*.5), if(equal(colorcounter,3),sin((counter1+1.75)*.4), if(equal(colorcounter,4),1, if(equal(colorcounter,5),1, if(equal(colorcounter,6),sin(counter2+2),0))))));
per_frame_13=ib_b = if(equal(colorcounter,1),sin(counter1+2.1), if(equal(colorcounter,2),0, if(equal(colorcounter,3),0, if(equal(colorcounter,4),0, if(equal(colorcounter,5),sin(counter1), if(equal(colorcounter,6),1,1))))));
per_frame_14=
per_frame_15=
per_frame_16=
per_frame_17=ob_r=ib_r-0.5;
per_frame_18=ob_g=ib_g-0.5;
per_frame_19=ob_b=ib_b-0.5;
per_frame_20=q1=ib_r;
per_frame_21=q2=ib_g;
per_frame_22=q3=ib_b;
per_frame_23=
per_frame_24=
per_frame_25=
per_frame_26=decay = 0.9999;
per_frame_27=
per_frame_28=
per_frame_29=//echo_orient=((bass_att+mid_att+treb_att)/3)*3;
per_frame_30=//solarize=above(0.5,bass);
per_frame_31=//darken=above(0.4,treb);
per_frame_32=
per_frame_33=musictime=musictime+(mid*mid*mid)*0.02;
per_frame_34=
per_frame_35=xpos=sin(musictime*0.6)*0.6;
per_frame_36=ypos=sin(musictime*0.4)*0.6;
per_frame_37=q4=xpos;
per_frame_38=q5=ypos;
per_frame_39=
per_frame_40=
per_frame_41=
per_frame_42=//beatdetect
per_frame_43=volume = 0.3*(bass+mid+att);
per_frame_44=beatrate = if(equal(beatrate,0),1,if(below(volume,0.01),1,beatrate));
per_frame_45=lastbeat = if(equal(lastbeat,0),time,lastbeat);
per_frame_46=meanbass_att = 0.1*(meanbass_att*9 + bass_att);
per_frame_47=beat = if(above(volume,0.8),if(below(peakbass_att - bass_att, 0.05*peakbass_att),if(above(time - lastbeat,0.1+0.5*(beatrate-0.1)),1,0),0),0);
per_frame_48=beatrate = max(if(beat,if(below(time-lastbeat,2*beatrate),0.5*(beatrate + time - lastbeat),beatrate),beatrate),0.1);
per_frame_49=peakbass_att = if(equal(beat,0),if(above(time - lastbeat,2*beatrate),peakbass_att*0.95,peakbass_att*0.995),bass_att);
per_frame_50=lastbeat = if(beat,time,lastbeat);
per_frame_51=peakbass_att = max(if(beat,bass_att,peakbass_att),1.1*meanbass_att);
per_frame_52=
per_frame_53=mybeat=if(beat,mybeat+1,mybeat);
per_frame_54=mybeat=if(above(mybeat,3),0,mybeat);
per_frame_55=echo_orient=mybeat;
per_pixel_1=//flip= (-2 * above(sin(time),-0.9) )+1;
per_pixel_2=//var=(bass+mid+treb)/3;
per_pixel_3=//rot=((ang&rad/rad)/(var*20))/10;
per_pixel_4=//sx=.99-(var*0.01);
per_pixel_5=//cx=var*0.1*(ang/12);
per_pixel_6=//sy=sx;
per_pixel_7=
per_pixel_8=//zoom=-1;
per_pixel_9=sx=-1+(bass*0.2);
per_pixel_10=sy=-1-(treb*0.2);
per_pixel_11=
per_pixel_12=cx=0.5+q4;
per_pixel_13=cy=0.5-q5;
per_pixel_14=rd=sqrt( sqr( (x-0.5-q4)*2) + sqr( (y-0.5+q5)*1.5 ) );
per_pixel_15=//zm=(1.1-(rd/4));
per_pixel_16=zm=.994;
per_pixel_17=
per_pixel_18=ag=atan( (y-0.5+q5)/(x-0.5-q4) );
per_pixel_19=star=sin(ag*6+time)*((2-rd)-ag)/5;
per_pixel_20=zm=zm+star/20;
per_pixel_21=sx=zm;
per_pixel_22=sy=zm;
per_pixel_23=//rot=above(rd,0.7)*(rd-0.7)*sin(time*0.3)
