Name: synthesizer-core
Version: 0.7
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
Category: Sound
Synopsis: Audio signal processing coded in Haskell: Low level part
Description:
Low level audio signal processing
used by the other synthesizer packages.
The routines can be really fast
due to StorableVector, Stream-like list type and aggressive inlining.
For an interface to Haskore see <http://code.haskell.org/haskore/revised/synthesizer/>.
For introductory examples see "Synthesizer.Plain.Tutorial"
and "Synthesizer.Generic.Tutorial".
-- the Overview module does not really fit into one of the part packages
-- For an overview of the organization of the package
-- and the discussion of various design issues see "Synthesizer.Overview".
.
Functions:
Oscillators, Noise generators, Frequency filters,
Fast Fourier transform for computation of frequency spectrum
Stability: Experimental
Tested-With: GHC==6.4.1, GHC==6.8.2, GHC==6.10.4, GHC==6.12.3
Tested-With: GHC==7.0.4, GHC==7.2.1, GHC==7.4.2, GHC==7.6.3
Cabal-Version: >=1.6
Build-Type: Simple
Extra-Source-Files:
Makefile
Flag splitBase
description: Choose the new smaller, split-up base package.
Flag optimizeAdvanced
description: Enable advanced optimizations. They slow down compilation considerably.
default: True
Flag buildProfilers
description: Build executables for investigating efficiency of code
default: False
Flag buildTests
description: Build test suite
default: False
Source-Repository this
Tag: 0.7
Type: darcs
Location: http://code.haskell.org/synthesizer/core/
Source-Repository head
Type: darcs
Location: http://code.haskell.org/synthesizer/core/
Library
Build-Depends:
sample-frame-np >=0.0.4 && <0.1,
sox >=0.1 && <0.3,
transformers >=0.2 && <0.4,
non-empty >=0.2 && <0.3,
event-list >=0.1 && <0.2,
non-negative >=0.1 && <0.2,
explicit-exception >=0.1.6 && <0.2,
numeric-prelude >=0.4 && <0.5,
numeric-quest >=0.1 && <0.3,
utility-ht >=0.0.5 && <0.1,
filepath >=1.1 && <1.4,
stream-fusion >=0.1.2 && <0.2,
bytestring >=0.9 && <0.11,
binary >=0.1 && <1,
deepseq >=1.1 && <1.4,
storablevector >=0.2.5 && <0.3,
storable-record >=0.0.1 && <0.1,
storable-tuple >=0.0.1 && <0.1,
QuickCheck >=1 && <3,
array >=0.1 && <0.6,
containers >=0.1 && <0.6,
random >=1.0 && <2.0,
process >=1.0 && <1.3,
base >= 4 && <5
If impl(ghc>=7.0)
-- also warns about NumericPrelude import: -fwarn-missing-import-lists
GHC-Options: -fwarn-unused-do-bind
CPP-Options: -DNoImplicitPrelude=RebindableSyntax
Extensions: CPP
GHC-Options: -Wall
Hs-source-dirs: src
Exposed-modules:
Synthesizer.Storage
Synthesizer.ApplicativeUtility
Synthesizer.Format
Synthesizer.RandomKnuth
Synthesizer.Piecewise
Synthesizer.Zip
Synthesizer.Basic.Binary
Synthesizer.Basic.Distortion
Synthesizer.Basic.DistortionControlled
Synthesizer.Basic.Phase
Synthesizer.Basic.ToneModulation
Synthesizer.Basic.Wave
Synthesizer.Basic.WaveSmoothed
Synthesizer.Interpolation
Synthesizer.Interpolation.Core
Synthesizer.Interpolation.Class
Synthesizer.Interpolation.Module
Synthesizer.Interpolation.Custom
Synthesizer.Frame.Stereo
Synthesizer.ChunkySize
Synthesizer.ChunkySize.Cut
Synthesizer.ChunkySize.Signal
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.FirstOrderComplex
Synthesizer.Plain.Filter.Recursive.Hilbert
Synthesizer.Plain.Filter.Recursive.Integration
Synthesizer.Plain.Filter.Recursive.Moog
Synthesizer.Plain.Filter.Recursive.MovingAverage
Synthesizer.Plain.Filter.Recursive.SecondOrder
Synthesizer.Plain.Filter.Recursive.SecondOrderCascade
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.Wave
Synthesizer.Plain.Instrument
Synthesizer.Plain.Effect
Synthesizer.Plain.Effect.Fly
Synthesizer.Plain.Effect.Glass
Synthesizer.Plain.Builder
Synthesizer.Plain.IO
Synthesizer.Plain.File
Synthesizer.Plain.Play
Synthesizer.Storable.Cut
Synthesizer.Storable.Generate
Synthesizer.Storable.Oscillator
Synthesizer.Storable.Play
Synthesizer.Storable.Repair
Synthesizer.Storable.Signal
Synthesizer.Storable.Filter.NonRecursive
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.Noise
Synthesizer.State.NoiseCustom
Synthesizer.State.Oscillator
Synthesizer.State.Signal
Synthesizer.State.ToneModulation
Synthesizer.Causal.Process
Synthesizer.Causal.Class
Synthesizer.Causal.Arrow
Synthesizer.Causal.Analysis
Synthesizer.Causal.Cut
Synthesizer.Causal.Displacement
Synthesizer.Causal.Interpolation
Synthesizer.Causal.Oscillator
Synthesizer.Causal.Oscillator.Core
Synthesizer.Causal.ToneModulation
Synthesizer.Causal.Spatial
Synthesizer.Causal.Filter.NonRecursive
Synthesizer.Causal.Filter.Recursive.Integration
Synthesizer.CausalIO.Gate
Synthesizer.CausalIO.Process
Synthesizer.Generic.Analysis
Synthesizer.Generic.Cut
Synthesizer.Generic.CutChunky
Synthesizer.Generic.Control
Synthesizer.Generic.Cyclic
Synthesizer.Generic.Displacement
Synthesizer.Generic.Filter.NonRecursive
Synthesizer.Generic.Filter.Delay
Synthesizer.Generic.Filter.Recursive.Integration
Synthesizer.Generic.Filter.Recursive.MovingAverage
Synthesizer.Generic.Filter.Recursive.Comb
Synthesizer.Generic.Fourier
Synthesizer.Generic.Interpolation
Synthesizer.Generic.Loop
Synthesizer.Generic.Noise
Synthesizer.Generic.Oscillator
Synthesizer.Generic.Piece
Synthesizer.Generic.Signal
Synthesizer.Generic.Wave
Synthesizer.PiecewiseConstant.Signal
-- that's only exposed for Haddock
Synthesizer.Plain.Tutorial
Synthesizer.Generic.Tutorial
-- synthesizer.dimensional:Synthesizer.Dimensional.Causal.Filter import affineComb
Synthesizer.Utility
Other-Modules:
Synthesizer.Basic.ComplexModule
Synthesizer.Basic.NumberTheory
Synthesizer.Generic.Permutation
Synthesizer.Generic.LengthSignal
Executable test
If !flag(buildTests)
Buildable: False
GHC-Options: -Wall -fwarn-tabs -fwarn-incomplete-record-updates
Hs-Source-Dirs: src
If impl(ghc>=7.0)
GHC-Options: -fwarn-unused-do-bind
CPP-Options: -DNoImplicitPrelude=RebindableSyntax
Extensions: CPP
Other-Modules:
Test.Utility
Test.Sound.Synthesizer.Plain.Analysis
Test.Sound.Synthesizer.Plain.Control
Test.Sound.Synthesizer.Plain.Filter
Test.Sound.Synthesizer.Plain.Filter.Allpass
Test.Sound.Synthesizer.Plain.Filter.Hilbert
Test.Sound.Synthesizer.Plain.Interpolation
Test.Sound.Synthesizer.Plain.NonEmpty
Test.Sound.Synthesizer.Plain.Oscillator
Test.Sound.Synthesizer.Plain.ToneModulation
Test.Sound.Synthesizer.Plain.Wave
Test.Sound.Synthesizer.Basic.ToneModulation
Test.Sound.Synthesizer.Basic.NumberTheory
Test.Sound.Synthesizer.Generic.Cut
Test.Sound.Synthesizer.Generic.ToneModulation
Test.Sound.Synthesizer.Generic.Permutation
Test.Sound.Synthesizer.Generic.Fourier
Test.Sound.Synthesizer.Generic.FourierInteger
Test.Sound.Synthesizer.Generic.Filter
Test.Sound.Synthesizer.Storable.Cut
Test.Sound.Synthesizer.Causal.Analysis
Main-Is: Test/Main.hs
Executable fouriertest
If flag(buildProfilers)
Build-Depends:
storablevector >=0.2.7 && <0.3,
utility-ht >=0.0.5 && <0.1,
storable-tuple >=0.0.1 && <0.1,
timeit >=1.0 && <1.1,
base >=4 && <5
Else
Buildable: False
If impl(ghc>=7.0)
GHC-Options: -fwarn-unused-do-bind
CPP-Options: -DNoImplicitPrelude=RebindableSyntax
Extensions: CPP
GHC-Options: -Wall
GHC-Prof-Options: -auto-all
Hs-Source-Dirs: speedtest, src
Main-Is: Fourier.hs
Executable speedtest
If !flag(buildProfilers)
Buildable: False
If impl(ghc>=7.0)
GHC-Options: -fwarn-unused-do-bind
CPP-Options: -DNoImplicitPrelude=RebindableSyntax
Extensions: CPP
GHC-Options: -Wall -fexcess-precision
If flag(optimizeAdvanced)
GHC-Options: -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
If impl(ghc>=7.0)
GHC-Options: -fwarn-unused-do-bind
CPP-Options: -DNoImplicitPrelude=RebindableSyntax
Extensions: CPP
GHC-Options: -Wall -fexcess-precision
Hs-Source-Dirs: speedtest, src
Main-Is: SpeedTestExp.hs
If flag(splitBase)
Build-Depends:
old-time >= 1.0 && < 1.2,
directory >= 1.0 && < 1.3
Executable speedtest-simple
If !flag(buildProfilers)
Buildable: False
If impl(ghc>=7.0)
GHC-Options: -fwarn-unused-do-bind
CPP-Options: -DNoImplicitPrelude=RebindableSyntax
Extensions: CPP
GHC-Options: -Wall
Hs-Source-Dirs: speedtest, src
Main-Is: SpeedTestSimple.hs