packages feed

synthesizer-0.0.3: synthesizer.cabal

Name:           synthesizer
Version:        0.0.3
License:        GPL
License-File:   LICENSE
Author:         Henning Thielemann <haskell@henning-thielemann.de>
Maintainer:     Henning Thielemann <haskell@henning-thielemann.de>
Homepage:       http://www.haskell.org/haskellwiki/Synthesizer
Package-URL:    http://darcs.haskell.org/synthesizer/
Category:       Sound
Synopsis:       Audio signal processing coded in Haskell
Description:
   Audio signal processing
   featuring both low-level functions
   and high-level functions which use physical units,
   abstract from the sample rate and are really fast
   due to StorableVector, Stream-like list type and aggressive inlining.
   For an interface to Haskore see <http://darcs.haskell.org/haskore-synthesizer/>.
   For an introduction see @doc/Prologue.txt@.
Stability:      Experimental
Tested-With:    GHC==6.4.1, GHC==6.8.2
Cabal-Version:  >=1.2
Build-Type:     Simple

Extra-Source-Files:
  Makefile
  src/OsciDiffEq.hs
  doc/Prologue.txt

Flag splitBase
  description: Choose the new smaller, split-up base package.

Flag buildExamples
  description: Build example executables
  default:     False

Flag buildProfilers
  description: Build executables for investigating efficiency of code
  default:     False

Flag buildTests
  description: Build test suite
  default:     False


Library
  Build-Depends:
    mtl >=1.1 && <1.2,
    event-list >=0.0.6 && <0.1,
    non-negative >=0.0.1 && <0.1,
    numeric-prelude >=0.0.4 && <0.1,
    -- numeric-quest/Orthogonals is only needed by Filter.Graph
    numeric-quest,
    -- bytestring and binary are only needed by SpeedTest
    bytestring >= 0.9 && <0.10,
    binary >=0.1 && <1,
    storablevector >=0.1.3,
    -- QuickCheck is needed for Filter.Delay.Block
    QuickCheck >=1 && <2

  If flag(splitBase)
    Build-Depends:
      base >= 3, array >=0.1 && <0.2, containers >=0.1 && <0.2, random >=1.0 && <1.1, process >=1.0 && <1.1, unix >=2.3 && <2.4
  Else
    Build-Depends:
      base >= 1.0 && < 2, special-functors

  GHC-Options:    -Wall
  Hs-source-dirs: src
  Exposed-modules:
    Sound.Signal
    Sound.Signal.Block
    Sound.Signal.StrictBlock
    -- further implementations of Signal class are in the Synthesizer.*.Signal modules
    StorableInstance
    BinarySample
    Filter.Basic
    Filter.Composition
    Filter.Example
    Filter.Fix
    Filter.Graph
    Filter.Graphic
    Filter.MonadFix
    Filter.OneWay
    Filter.TwoWay
    FourierSeries
    Sox
    Sox.File
    Sox.Play
    Synthesizer.Utility
    Synthesizer.ApplicativeUtility
    Synthesizer.Format
    Synthesizer.RandomKnuth
    Synthesizer.Piecewise
    Synthesizer.Basic.Distortion
    Synthesizer.Basic.DistortionControlled
    Synthesizer.Basic.Phase
    Synthesizer.Basic.Wave
    Synthesizer.Basic.WaveSmoothed
    Synthesizer.Frame.Stereo
    Synthesizer.Plain.Signal
    Synthesizer.Plain.Analysis
    Synthesizer.Plain.Cut
    Synthesizer.Plain.Control
    Synthesizer.Plain.Displacement
    Synthesizer.Plain.Filter.NonRecursive
    Synthesizer.Plain.Filter.Recursive
    Synthesizer.Plain.Filter.Recursive.Allpass
    Synthesizer.Plain.Filter.Recursive.AllpassPoly
    Synthesizer.Plain.Filter.Recursive.Butterworth
    Synthesizer.Plain.Filter.Recursive.Chebyshev
    Synthesizer.Plain.Filter.Recursive.Comb
    Synthesizer.Plain.Filter.Recursive.FirstOrder
    Synthesizer.Plain.Filter.Recursive.Integration
    Synthesizer.Plain.Filter.Recursive.Moog
    Synthesizer.Plain.Filter.Recursive.MovingAverage
    Synthesizer.Plain.Filter.Recursive.SecondOrder
    Synthesizer.Plain.Filter.Recursive.Universal
    Synthesizer.Plain.Filter.Recursive.Test
    Synthesizer.Plain.Filter.Delay
    Synthesizer.Plain.Filter.Delay.ST
    Synthesizer.Plain.Filter.Delay.List
    Synthesizer.Plain.Filter.Delay.Block
    Synthesizer.Plain.Filter.LinearPredictive
    Synthesizer.Plain.Interpolation
    Synthesizer.Plain.LorenzAttractor
    Synthesizer.Plain.Modifier
    Synthesizer.Plain.Noise
    Synthesizer.Plain.Oscillator
    Synthesizer.Plain.ToneModulation
    Synthesizer.Plain.Miscellaneous
    Synthesizer.Plain.Instrument
    Synthesizer.Plain.Effect
    Synthesizer.Plain.Effect.Fly
    Synthesizer.Plain.Effect.Glass
    Synthesizer.FusionList.Control
    Synthesizer.FusionList.Filter.NonRecursive
    Synthesizer.FusionList.Oscillator
    Synthesizer.FusionList.Signal
    Synthesizer.Storable.Cut
    Synthesizer.Storable.Oscillator
    Synthesizer.Storable.Signal
    Synthesizer.Storable.Filter.Recursive.Comb
    Synthesizer.State.Analysis
    Synthesizer.State.Control
    Synthesizer.State.Cut
    Synthesizer.State.Displacement
    Synthesizer.State.Filter.NonRecursive
    Synthesizer.State.Filter.Delay
    Synthesizer.State.Filter.Recursive.Comb
    Synthesizer.State.Filter.Recursive.Integration
    Synthesizer.State.Filter.Recursive.MovingAverage
    Synthesizer.State.Interpolation
    Synthesizer.State.Miscellaneous
    Synthesizer.State.Noise
    Synthesizer.State.NoiseCustom
    Synthesizer.State.Oscillator
    Synthesizer.State.Signal
    Synthesizer.Causal.Process
    Synthesizer.Causal.Displacement
    Synthesizer.Causal.Interpolation
    Synthesizer.Causal.Oscillator
    Synthesizer.Generic.Analysis
    Synthesizer.Generic.Control
    Synthesizer.Generic.Displacement
    Synthesizer.Generic.Filter.NonRecursive
    Synthesizer.Generic.Filter.Delay
    Synthesizer.Generic.Filter.Recursive.Integration
    Synthesizer.Generic.Filter.Recursive.MovingAverage
    Synthesizer.Generic.Interpolation
    Synthesizer.Generic.Noise
    Synthesizer.Generic.Oscillator
    Synthesizer.Generic.SampledValue
    Synthesizer.Generic.Signal
  --
    Synthesizer.Physical
    Synthesizer.Physical.Cut
    Synthesizer.Physical.Control
    Synthesizer.Physical.File
    Synthesizer.Physical.Filter
    Synthesizer.Physical.Noise
    Synthesizer.Physical.Oscillator
    Synthesizer.Physical.Play
    Synthesizer.Physical.Signal
    Synthesizer.Physical.Displacement
    Synthesizer.Amplitude.Signal
    Synthesizer.Amplitude.Cut
    Synthesizer.Amplitude.Control
    Synthesizer.Amplitude.Filter
    Synthesizer.Amplitude.Displacement
    Synthesizer.SampleRateContext.Rate
    Synthesizer.SampleRateContext.Signal
    Synthesizer.SampleRateContext.Oscillator
    Synthesizer.SampleRateContext.Cut
    Synthesizer.SampleRateContext.Control
    Synthesizer.SampleRateContext.Filter
    Synthesizer.SampleRateContext.Displacement
    Synthesizer.SampleRateContext.Noise
    Synthesizer.SampleRateContext.Play
    Synthesizer.Inference.DesignStudy.Applicative
    Synthesizer.Inference.DesignStudy.Arrow
    Synthesizer.Inference.DesignStudy.Monad
    Synthesizer.Inference.Func.Cut
    Synthesizer.Inference.Func.Signal
    Synthesizer.Inference.Reader.Play
    Synthesizer.Inference.Reader.Process
    Synthesizer.Inference.Reader.Signal
    Synthesizer.Inference.Reader.Control
    Synthesizer.Inference.Reader.Cut
    Synthesizer.Inference.Reader.Filter
    Synthesizer.Inference.Reader.Noise
    Synthesizer.Inference.Reader.Oscillator
  --
    Synthesizer.Dimensional.Abstraction.Flat
    Synthesizer.Dimensional.Abstraction.Homogeneous
    Synthesizer.Dimensional.Abstraction.RateIndependent
    Synthesizer.Dimensional.Amplitude.Analysis
    Synthesizer.Dimensional.Amplitude.Cut
    Synthesizer.Dimensional.Amplitude.Control
    Synthesizer.Dimensional.Amplitude.Displacement
    Synthesizer.Dimensional.Amplitude.Filter
    Synthesizer.Dimensional.Amplitude.Signal
    Synthesizer.Dimensional.Causal.Process
    Synthesizer.Dimensional.ControlledProcess
    Synthesizer.Dimensional.Cyclic.Signal
    Synthesizer.Dimensional.Process
    Synthesizer.Dimensional.Rate
    Synthesizer.Dimensional.RatePhantom
    Synthesizer.Dimensional.RateWrapper
    Synthesizer.Dimensional.Rate.Analysis
    Synthesizer.Dimensional.Rate.Control
    Synthesizer.Dimensional.Rate.Cut
    Synthesizer.Dimensional.Rate.Filter
    Synthesizer.Dimensional.Rate.Oscillator
    Synthesizer.Dimensional.RateAmplitude.Analysis
    Synthesizer.Dimensional.RateAmplitude.Cut
    Synthesizer.Dimensional.RateAmplitude.Control
    Synthesizer.Dimensional.RateAmplitude.Displacement
    Synthesizer.Dimensional.RateAmplitude.File
    Synthesizer.Dimensional.RateAmplitude.Filter
    Synthesizer.Dimensional.RateAmplitude.Instrument
    Synthesizer.Dimensional.RateAmplitude.Noise
    Synthesizer.Dimensional.RateAmplitude.Play
    Synthesizer.Dimensional.RateAmplitude.Signal
    Synthesizer.Dimensional.Straight.Displacement
    Synthesizer.Dimensional.Straight.Signal

Executable demonstration
  If !flag(buildExamples)
    Buildable: False
  GHC-Options: -Wall -O2 -fexcess-precision -fvia-C -optc-O2
-- -ddump-simpl-stats
  Hs-Source-Dirs: src
  Main-Is: Synthesizer/Dimensional/RateAmplitude/Demonstration.hs

Executable traumzauberbaum
  If !flag(buildExamples)
    Buildable: False
  GHC-Options: -Wall -O2 -fexcess-precision -fvia-C -optc-O2
  Hs-Source-Dirs: src
  Main-Is: Synthesizer/Dimensional/RateAmplitude/Traumzauberbaum.hs

Executable test
  If !flag(buildTests)
    Buildable: False
  GHC-Options: -Wall
  Hs-Source-Dirs: src
  Other-Modules:
    Test.Utility
    Test.Sound.Synthesizer.Plain.Analysis
    Test.Sound.Synthesizer.Plain.Control
    Test.Sound.Synthesizer.Plain.Filter
    Test.Sound.Synthesizer.Plain.Interpolation
    Test.Sound.Synthesizer.Plain.Oscillator
    Test.Sound.Synthesizer.Plain.ToneModulation
    Test.Sound.Synthesizer.Plain.Wave
  Main-Is: Test/Main.hs

Executable fusiontest
  If !flag(buildProfilers)
    Buildable: False
  GHC-Options: -Wall -fexcess-precision -ddump-simpl-stats
  Hs-Source-Dirs: speedtest, src
  Main-Is: FusionTest.hs

Executable speedtest
  If !flag(buildProfilers)
    Buildable: False
  GHC-Options: -Wall -fexcess-precision -optc-ffast-math -optc-O3
  --  -funfolding-use-threshold=20 -funfolding-creation-threshold=100
  --  -optc-march=pentium4 -optc-mfpmath=sse
  Hs-Source-Dirs: speedtest, src
  Main-Is: SpeedTest.hs

Executable speedtest-exp
  If !flag(buildProfilers)
    Buildable: False
  GHC-Options: -Wall -fexcess-precision
  Hs-Source-Dirs: speedtest, src
  Main-Is: SpeedTestExp.hs
  If flag(splitBase)
    Build-Depends:
      old-time >= 1.0 && < 1.1, directory >= 1.0 && < 1.1

Executable speedtest-simple
  If !flag(buildProfilers)
    Buildable: False
  GHC-Options: -Wall
  Hs-Source-Dirs: speedtest, src
  Main-Is: SpeedTestSimple.hs