|  | 
| | Synthesizer.Generic.Oscillator | | Portability | requires multi-parameter type classes |  | Stability | provisional |  | Maintainer | synthesizer@henning-thielemann.de | 
 | 
 | 
|  | 
|  | 
|  | 
| Description | 
| Tone generators
 Frequencies are always specified in ratios of the sample rate,
e.g. the frequency 0.01 for the sample rate 44100 Hz
means a physical frequency of 441 Hz.
 | 
|  | 
| Synopsis | 
|  | 
| | freqToPhase :: (C a, C a, C sig) => T a -> sig a -> sig (T a) |  |  |  | static :: (C a, C a, C b, C sig) => T a b -> T a -> a -> sig b |  |  |  | freqMod :: (C a, C a, C b, C sig) => T a b -> T a -> sig a -> sig b |  |  |  | phaseMod :: (C a, C a, C b, C sig) => T a b -> a -> sig a -> sig b |  |  |  | shapeMod :: (C a, C a, C b, C c, C sig) => (c -> T a b) -> T a -> a -> sig c -> sig b |  |  |  | phaseFreqMod :: (C a, C a, C b, C sig) => T a b -> sig a -> sig a -> sig b |  |  |  | shapeFreqMod :: (C a, C a, C b, C c, C sig) => (c -> T a b) -> T a -> sig c -> sig a -> sig b |  |  |  | staticSample :: (C a, C a, C b, C sig) => T sig a b -> [b] -> T a -> a -> sig b |  |  |  | freqModSample :: (C a, C a, C b, C sig) => T sig a b -> [b] -> T a -> sig a -> sig b |  |  |  | staticSine :: (C a, C a, C a, C sig) => T a -> a -> sig a |  |  |  | freqModSine :: (C a, C a, C a, C sig) => T a -> sig a -> sig a |  |  |  | phaseModSine :: (C a, C a, C a, C sig) => a -> sig a -> sig a |  |  |  | staticSaw :: (C a, C a, C sig) => T a -> a -> sig a |  |  |  | freqModSaw :: (C a, C a, C sig) => T a -> sig a -> sig a | 
 | 
|  | 
|  | 
| Oscillators with arbitrary but constant waveforms | 
|  | 
| | freqToPhase :: (C a, C a, C sig) => T a -> sig a -> sig (T a) | Source | 
 | 
|  | 
| | static :: (C a, C a, C b, C sig) => T a b -> T a -> a -> sig b | Source | 
 | 
| oscillator with constant frequency | 
|  | 
| | freqMod :: (C a, C a, C b, C sig) => T a b -> T a -> sig a -> sig b | Source | 
 | 
| oscillator with modulated frequency | 
|  | 
| | phaseMod :: (C a, C a, C b, C sig) => T a b -> a -> sig a -> sig b | Source | 
 | 
| oscillator with modulated phase | 
|  | 
| | shapeMod :: (C a, C a, C b, C c, C sig) => (c -> T a b) -> T a -> a -> sig c -> sig b | Source | 
 | 
| oscillator with modulated shape | 
|  | 
| | phaseFreqMod :: (C a, C a, C b, C sig) => T a b -> sig a -> sig a -> sig b | Source | 
 | 
| oscillator with both phase and frequency modulation | 
|  | 
| | shapeFreqMod :: (C a, C a, C b, C c, C sig) => (c -> T a b) -> T a -> sig c -> sig a -> sig b | Source | 
 | 
| oscillator with both shape and frequency modulation | 
|  | 
| | staticSample :: (C a, C a, C b, C sig) => T sig a b -> [b] -> T a -> a -> sig b | Source | 
 | 
| oscillator with a sampled waveform with constant frequency
     This is essentially an interpolation with cyclic padding. | 
|  | 
| | freqModSample :: (C a, C a, C b, C sig) => T sig a b -> [b] -> T a -> sig a -> sig b | Source | 
 | 
| oscillator with a sampled waveform with modulated frequency
     Should behave homogenously for different types of interpolation. | 
|  | 
| Oscillators with specific waveforms | 
|  | 
| | staticSine :: (C a, C a, C a, C sig) => T a -> a -> sig a | Source | 
 | 
| sine oscillator with static frequency | 
|  | 
| | freqModSine :: (C a, C a, C a, C sig) => T a -> sig a -> sig a | Source | 
 | 
| sine oscillator with modulated frequency | 
|  | 
| | phaseModSine :: (C a, C a, C a, C sig) => a -> sig a -> sig a | Source | 
 | 
| sine oscillator with modulated phase, useful for FM synthesis | 
|  | 
| | staticSaw :: (C a, C a, C sig) => T a -> a -> sig a | Source | 
 | 
| saw tooth oscillator with modulated frequency | 
|  | 
| | freqModSaw :: (C a, C a, C sig) => T a -> sig a -> sig a | Source | 
 | 
| saw tooth oscillator with modulated frequency | 
|  | 
| Produced by Haddock version 2.3.0 |