synthesizer-core-0.8.4: Audio signal processing coded in Haskell: Low level part
Safe HaskellSafe-Inferred
LanguageHaskell2010

Synthesizer.Plain.Instrument

Synopsis

Documentation

stereoPhaser Source #

Arguments

:: C a 
=> (a -> [b])

A function mapping a frequency to a signal.

-> a

The factor to the frequency, should be close to 1.

-> a

The base (undeviated) frequency of the sound.

-> [b] 

Create a sound of a slightly changed frequency just as needed for a simple stereo sound.

allpassPlain :: (C a, C a, C a a) => a -> a -> a -> a -> [a] Source #

allpassDown :: (C a, C a, C a a) => a -> Int -> a -> a -> a -> [a] Source #

moogDown :: (C a, C a, C a a) => a -> Int -> a -> a -> a -> [a] Source #

moogReso :: (C a, C a, C a a) => a -> Int -> a -> a -> a -> [a] Source #

bell :: (C a, C a) => a -> a -> [a] Source #

bellHarmonic :: (C a, C a) => a -> a -> a -> a -> [a] Source #

fastBell :: (C a, C a, C a a) => a -> a -> [a] Source #

squareBell :: (C a, C a, C a a) => a -> a -> [a] Source #

moogGuitar :: (C a, C a, C a a) => a -> a -> [a] Source #

moogGuitarSoft :: (C a, C a, C a a) => a -> a -> [a] Source #

simpleSaw :: (C a, C a, C a a) => a -> a -> [a] Source #

fatSaw :: (C a, C a, C a a) => a -> a -> [a] Source #

filterSaw :: (C a a, C a, C a) => a -> a -> a -> [a] Source #

fmBell :: (C a, C a) => a -> a -> a -> a -> [a] Source #

filterSweep :: (C v, C a v, C a, C a) => a -> a -> [v] -> [v] Source #

low pass with resonance

fatSawChordFilter :: (C a, C a, C a a) => a -> a -> [a] Source #

fatSawChord :: (C a, C a, C a a) => a -> a -> [a] Source #

filterDown :: (C a, C a) => a -> [Parameter a] Source #

modulatedWave :: (C a, C a) => a -> (a -> [a] -> [a]) -> a -> a -> a -> a -> a -> [a] Source #

accumulate multiple similar saw sounds and observe the increase of volume The oscillator osc must accept relative frequencies.

accumulatedSaws :: (Random a, C a, C a) => a -> a -> [[a]] Source #

choirWave :: C a => [a] Source #

choir :: (Random a, C a, C a) => a -> a -> [a] Source #

osciDoubleSaw :: (C a, C a a) => a -> [a] -> [a] Source #

osciSharp :: (C a, C a) => a -> a -> [a] Source #

A tone with a waveform with roughly the dependency x -> x**p, where the waveform is normalized to constant quadratic norm

osciAbsModSaw :: (C a, C a) => a -> a -> [a] Source #

Build a saw sound from its harmonics and modulate it. Different to normal modulation I modulate each harmonic with the same depth rather than a proportional one.

pulsedNoise Source #

Arguments

:: (C a, Random a, C a, C a) 
=> a 
-> a

frequency of the pulses, interesting ones are around 100 Hz and below

-> [a] 

Short pulsed Noise.white, i.e. Noise.white amplified with pulses of varying H/L ratio.

noiseBass :: (C a, Random a, C a, C a, C a a) => a -> a -> [a] Source #

electroTom :: (C a, Random a, C a, C a, C a a) => a -> [a] Source #

Drum sound using the Karplus-Strong-Algorithm This is a Noise.white enveloped by an exponential2 which is piped through the Karplus-Strong machine for generating some frequency. The whole thing is then frequency modulated to give a falling frequency.