hsc3-0.15.1: Haskell SuperCollider

Safe HaskellNone
LanguageHaskell98

Sound.SC3.UGen.Bindings.Composite

Contents

Description

Common unit generator graphs.

Synopsis

Documentation

asLocalBuf :: ID i => i -> [UGen] -> UGen Source

Generate a localBuf and use setBuf to initialise it.

bLowPassCoef :: Floating a => a -> a -> a -> (a, a, a, a, a) Source

Calculate coefficients for bi-quad low pass filter.

bufRdN :: Int -> Rate -> UGen -> UGen -> Loop -> UGen Source

Buffer reader (no interpolation).

bufRdL :: Int -> Rate -> UGen -> UGen -> Loop -> UGen Source

Buffer reader (linear interpolation).

bufRdC :: Int -> Rate -> UGen -> UGen -> Loop -> UGen Source

Buffer reader (cubic interpolation).

changed :: UGen -> UGen -> UGen Source

Triggers when a value changes

choose :: ID m => m -> UGen -> UGen Source

mce variant of lchoose.

dcons :: ID m => (m, m, m) -> UGen -> UGen -> UGen Source

Demand rate (:) function.

dconsM :: UId m => UGen -> UGen -> m UGen Source

Demand rate (:) function.

dynKlang :: Rate -> UGen -> UGen -> UGen -> UGen Source

Dynamic klang, dynamic sine oscillator bank

dynKlank :: UGen -> UGen -> UGen -> UGen -> UGen -> UGen Source

Dynamic klank, set of non-fixed resonating filters.

fft' :: UGen -> UGen -> UGen Source

Variant FFT constructor with default values for hop size (0.5), window type (0), active status (1) and window size (0).

ffta :: ID i => i -> UGen -> UGen -> UGen -> UGen -> UGen -> UGen -> UGen Source

fft variant that allocates localBuf.

let c = ffta 'α' 2048 (soundIn 0) 0.5 0 1 0
in audition (out 0 (ifft c 0 0))

freqShift_hilbert :: UGen -> UGen -> UGen -> UGen Source

Frequency shifter, in terms of hilbert (see also freqShift).

ifft' :: UGen -> UGen Source

Variant ifft with default value for window type.

klangSpec :: [UGen] -> [UGen] -> [UGen] -> UGen Source

Format frequency, amplitude and phase data as required for klang.

klangSpec' :: Real n => [n] -> [n] -> [n] -> UGen Source

Variant of klangSpec for non-UGen inputs.

klangSpec_mce :: UGen -> UGen -> UGen -> UGen Source

Variant of klangSpec for MCE inputs.

klankSpec :: [UGen] -> [UGen] -> [UGen] -> UGen Source

Format frequency, amplitude and decay time data as required for klank.

klankSpec' :: Real n => [n] -> [n] -> [n] -> UGen Source

Variant for non-UGen inputs.

klankSpec_mce :: UGen -> UGen -> UGen -> UGen Source

Variant of klankSpec for MCE inputs.

lchoose :: ID m => m -> [UGen] -> UGen Source

Randomly select one of a list of UGens (initialiastion rate).

linExp_b :: UGen -> UGen -> UGen -> UGen Source

linExp of (-1,1).

linExp_u :: UGen -> UGen -> UGen -> UGen Source

linExp of (0,1).

linLin :: UGen -> UGen -> UGen -> UGen -> UGen -> UGen Source

Map from one linear range to another linear range.

linLin_u :: UGen -> UGen -> UGen -> UGen Source

linLin where source is (0,1).

linLin_b :: UGen -> UGen -> UGen -> UGen Source

linLin where source is (-1,1).

localIn' :: Int -> Rate -> UGen Source

Variant with defaults of zero.

makeFadeEnv :: Double -> UGen Source

Generate an envGen UGen with fadeTime and gate controls.

import Sound.SC3
audition (out 0 (makeFadeEnv 1 * sinOsc AR 440 0 * 0.1))
withSC3 (send (n_set1 (-1) "gate" 0))

mceN :: UGen -> UGen Source

Count mce channels.

mix :: UGen -> UGen Source

Collapse possible mce by summing.

mixN :: Int -> UGen -> UGen Source

Mix variant, sum to n channels.

mixFill :: Integral n => Int -> (n -> UGen) -> UGen Source

Construct and sum a set of UGens.

mixFillM :: (Integral n, Monad m) => Int -> (n -> m UGen) -> m UGen Source

Monad variant on mixFill.

mouseButton' :: Rate -> UGen -> UGen -> UGen -> UGen Source

Variant that is randomly pressed.

mouseR :: ID a => a -> Rate -> UGen -> UGen -> Warp -> UGen -> UGen Source

Randomised mouse UGen (see also mouseX' and mouseY').

mouseX' :: Rate -> UGen -> UGen -> Warp -> UGen -> UGen Source

Variant that randomly traverses the mouseX space.

mouseY' :: Rate -> UGen -> UGen -> Warp -> UGen -> UGen Source

Variant that randomly traverses the mouseY space.

onsetType :: Num a => String -> a Source

Translate onset type string to constant UGen value.

onsets' :: UGen -> UGen -> UGen -> UGen Source

Onset detector with default values for minor parameters.

packFFTSpec :: [UGen] -> [UGen] -> UGen Source

Format magnitude and phase data data as required for packFFT.

pc_calcAccumSize :: Int -> Int -> Int Source

Calculate size of accumulation buffer given FFT and IR sizes.

pmOsc :: Rate -> UGen -> UGen -> UGen -> UGen -> UGen Source

PM oscillator.

poll' :: UGen -> UGen -> UGen -> UGen -> UGen Source

Variant of poll that generates an mrg value with the input signal at left, and that allows a constant frequency input in place of a trigger.

privateIn :: Int -> Rate -> UGen -> UGen Source

Variant of in' offset so zero if the first private bus.

privateOut :: UGen -> UGen -> UGen Source

Variant of out offset so zero if the first private bus.

pvcollect :: UGen -> UGen -> (UGen -> UGen -> UGen -> (UGen, UGen)) -> UGen -> UGen -> UGen -> UGen Source

Apply function f to each bin of an FFT chain, f receives magnitude, phase and index and returns a (magnitude,phase).

runningSumRMS :: UGen -> UGen -> UGen Source

RMS variant of runningSum.

selectX :: UGen -> UGen -> UGen Source

Mix one output from many sources

setBuf' :: UGen -> [UGen] -> UGen -> UGen Source

Set local buffer values.

silent :: Int -> UGen Source

Silence.

soundIn :: UGen -> UGen Source

Zero indexed audio input buses.

splay :: UGen -> UGen -> UGen -> UGen -> Bool -> UGen Source

Pan a set of channels across the stereo field.

sum_opt :: [UGen] -> UGen Source

Optimised sum function.

tap :: Int -> UGen -> UGen -> UGen Source

Single tap into a delayline

tChoose :: ID m => m -> UGen -> UGen -> UGen Source

Randomly select one of several inputs on trigger.

tChooseM :: UId m => UGen -> UGen -> m UGen Source

Randomly select one of several inputs.

tWChoose :: ID m => m -> UGen -> UGen -> UGen -> UGen -> UGen Source

Randomly select one of several inputs on trigger (weighted).

tWChooseM :: UId m => UGen -> UGen -> UGen -> UGen -> m UGen Source

Randomly select one of several inputs (weighted).

unpackFFT :: UGen -> UGen -> UGen -> UGen -> UGen -> [UGen] Source

Unpack an FFT chain into separate demand-rate FFT bin streams.

wrapOut :: Maybe Double -> UGen -> UGen Source

If z isn't a sink node route to an out node writing to bus. If fadeTime is given multiply by makeFadeEnv.

import Sound.SC3
audition (wrapOut (sinOsc AR 440 0 * 0.1) 1)
withSC3 (send (n_set1 (-1) "gate" 0))

wslib

playBufCF :: Int -> UGen -> UGen -> UGen -> UGen -> Loop -> UGen -> Int -> UGen Source

adc

osc1 :: Rate -> UGen -> UGen -> DoneAction -> UGen Source

An oscillator that reads through a table once.