-- | Basic psychoacoustic amplitude compensation.
module Sound.SC3.UGen.Record.AmpComp where
import qualified Sound.SC3.UGen as S
import Sound.SC3.UGen.Record
data AmpComp = AmpComp {
  rate :: S.Rate,
  freq :: S.UGen,
  root :: S.UGen,
  exp_ :: S.UGen
  } deriving (Show)
ampComp :: AmpComp
ampComp = AmpComp {
  rate = S.AR,
  freq = 0.0,
  root = 0.0,
  exp_ = 0.3333
  }
mkAmpComp :: AmpComp -> S.UGen
mkAmpComp (AmpComp r a' b' c') = S.mkOsc r "AmpComp" [a',b',c'] 1
instance Make AmpComp where
  ugen = mkAmpComp