home *** CD-ROM | disk | FTP | other *** search
/ PC World 2008 February / PCWorld_2008-02_cd.bin / audio-video / reaper / reaper2028-install.exe / Effects / LOSER / 3BandEQ next >
Text File  |  2007-12-03  |  2KB  |  55 lines

  1. // (C) 2006, Michael Gruhn.
  2.  
  3. // NO WARRANTY IS GRANTED. THIS PLUG-IN IS PROVIDED ON AN "AS IS" BASIS, WITHOUT
  4. // WARRANTY OF ANY KIND. NO LIABILITY IS GRANTED, INCLUDING, BUT NOT LIMITED TO,
  5. // ANY DIRECT OR INDIRECT,  SPECIAL,  INCIDENTAL OR CONSEQUENTIAL DAMAGE ARISING
  6. // OUT OF  THE  USE  OR INABILITY  TO  USE  THIS PLUG-IN,  COMPUTER FAILTURE  OF
  7. // MALFUNCTION INCLUDED.  THE USE OF THE SOURCE CODE,  EITHER  PARTIALLY  OR  IN
  8. // TOTAL, IS ONLY GRANTED,  IF USED IN THE SENSE OF THE AUTHOR'S INTENTION,  AND
  9. // USED WITH ACKNOWLEDGEMENT OF THE AUTHOR. FURTHERMORE IS THIS PLUG-IN A  THIRD
  10. // PARTY CONTRIBUTION,  EVEN IF INCLUDED IN REAPER(TM),  COCKOS INCORPORATED  OR
  11. // ITS AFFILIATES HAVE NOTHING TO DO WITH IT.  LAST BUT NOT LEAST, BY USING THIS
  12. // PLUG-IN YOU RELINQUISH YOUR CLAIM TO SUE IT'S AUTHOR, AS WELL AS THE CLAIM TO
  13. // ENTRUST SOMEBODY ELSE WITH DOING SO.
  14.  
  15.  
  16. desc:3-Band EQ
  17. slider1:0<-24,24,1>Low (dB)
  18. slider2:200<0,22000,1>Frequency (Hz)
  19. slider3:0<-24,24,1>Mid (dB)
  20. slider4:2000<0,22000,1>Frequency (Hz)
  21. slider5:0<-24,24,1>High (dB)
  22. slider6:0<-24,24,1>Output (dB)
  23.  
  24. @init
  25. cDenorm = 10^-30;
  26. cAmpDB = 8.65617025;
  27.  
  28. @slider
  29. lVol = exp(slider1/cAmpDB); 
  30. mVol = exp(slider3/cAmpDB); 
  31. hVol = exp(slider5/cAmpDB); 
  32. outVol = exp(slider6/cAmpDB); 
  33.  
  34. freqLP = min(min(slider2,srate),slider4);
  35. xLP = exp(-2.0*$pi*freqLP/srate);
  36. a0LP = 1.0-xLP;
  37. b1LP = -xLP;
  38.  
  39. freqHP = max(min(slider4,srate),slider2);
  40. xHP = exp(-2.0*$pi*freqHP/srate);
  41. a0HP = 1.0-xHP;
  42. b1HP = -xHP;
  43.  
  44. @sample
  45.  
  46. sl0 = (tmplLP = a0LP*spl0 - b1LP*tmplLP + cDenorm);
  47. sl1 = (tmprLP = a0LP*spl1 - b1LP*tmprLP + cDenorm);
  48.  
  49. sh0 = spl0 - (tmplHP = a0HP*spl0 - b1HP*tmplHP + cDenorm);
  50. sh1 = spl1 - (tmprHP = a0HP*spl1 - b1HP*tmprHP + cDenorm);
  51.  
  52. spl0 = (sl0*lVol + (spl0 - sl0 - sh0)*mVol + sh0*hVol)*outVol;
  53. spl1 = (sl1*lVol + (spl1 - sl1 - sh1)*mVol + sh1*hVol)*outVol;
  54.  
  55.