- latency :: Time
- type Song = (String, T)
- play :: Song -> IO ()
- render :: Song -> IO ()
- glissandoStringsUGen :: UGen -> UGen -> UGen
- reverb :: UGen -> UGen -> UGen
- filterStrings :: Instrument
- glissando :: Song
- normalizeLevel :: Fractional a => a -> [a] -> [a]
- strings :: Instrument
- modulatedStrings :: Instrument
- brass :: Instrument
- sawPerc :: Instrument
- sawPercUGen :: UGen -> UGen -> UGen
- dynPerc :: UGen -> Instrument
- dynPercUGen :: UGen -> UGen -> UGen -> UGen
- fmBass :: UGen -> Instrument
- fmGuitar :: UGen -> Instrument
- xylophone :: Instrument
- harpsichord :: Instrument
- colorDust :: Double -> Instrument
- flangerSquare :: UGen -> UGen
- cubicSine :: UGen -> UGen
- cubicPhaserSaw :: UGen -> UGen
- midiInstrMap :: InstrumentTable Instr
- childSong :: Song
- bassMusic :: T
- bass :: Song
- bassFinite :: Song
- parabolaOsci :: UGen -> UGen -> UGen
- kantate147 :: Song
- pad :: UGen -> Instrument
- bridge :: UGen -> UGen -> UGen -> [UGen]
- seed :: Int
- hihat :: Drum
- bassdrum :: Drum
- bassdrumOnk :: Drum
- bassdrumPM :: Drum
- bassdrumNoisy :: Drum
- data Instrument
- data Drum
- instrMap :: InstrumentTableWithAttributes Instrument
- drumMap :: DrumTableWithAttributes Drum
- synthBassAttrsToInstr :: (Rational, Double) -> (Rational, Instrument)
- synthBassMelody :: T (Rational, Double)
- padAttrsToInstr :: Double -> (Rational, Instrument)
- padMelody :: T Double
- rhythm :: T Drum Instrument
- chillOutMusic :: T Drum Instrument
- chillOut :: Song
- chillOutFinite :: Song
- data InstrumentTriplet
- sawPercAssign :: InstrumentAssign InstrumentTriplet
- dynPercAssign :: InstrumentAssign InstrumentTriplet
- tripletsMusic :: T Drum InstrumentTriplet
- triplets :: Song
Documentation
glissandoStringsUGen :: UGen -> UGen -> UGenSource
normalizeLevel :: Fractional a => a -> [a] -> [a]Source
normalize a list of numbers, such that they have a specific average
sawPercUGen :: UGen -> UGen -> UGenSource
dynPerc :: UGen -> InstrumentSource
fmBass :: UGen -> InstrumentSource
fmGuitar :: UGen -> InstrumentSource
colorDust :: Double -> InstrumentSource
The dust
UGen as provided by SuperCollider has a problem:
The higher the sample rate, the more narrow are the impulses,
the less volume you obtain.
We work-around this by choosing a larger impulse.
(We could also use a fixed width for the impulses.)
flangerSquare :: UGen -> UGenSource
cubicPhaserSaw :: UGen -> UGenSource
:: UGen | Zero means a perfect parabola. The higher the absolute value, the closer is the waveform to a saw. |
-> UGen | frequency |
-> UGen |
Oscillator with the waveform of a parabola.
The parabola is created by moving a saw up or down, and squaring it.
That is we repeat the function x -> (x+s)^2
.
The crux is the subsequent normalization to zero DC offset. This boils down to a parabola plus a saw.
pad :: UGen -> InstrumentSource
synthBassAttrsToInstr :: (Rational, Double) -> (Rational, Instrument)Source
synthBassMelody :: T (Rational, Double)Source
padAttrsToInstr :: Double -> (Rational, Instrument)Source