hsc3-0.11: Haskell SuperCollider

Sound.SC3.UGen.FFT

Contents

Description

Frequency domain unit generators.

Synopsis

Documentation

fft :: UGen -> UGen -> UGen -> UGen -> UGen -> UGen -> UGenSource

Fast fourier transform.

fft' :: UGen -> UGen -> UGenSource

Variant FFT constructor with default values for hop size, window | type, active status and window size.

fftTrigger :: UGen -> UGen -> UGen -> UGenSource

Outputs signal for FFT chains, without performing FFT.

ifft :: UGen -> UGen -> UGen -> UGenSource

Inverse Fast Fourier Transform.

ifft' :: UGen -> UGenSource

Variant ifft with default value for window type.

convolution :: UGen -> UGen -> UGen -> UGenSource

Strict convolution of two continuously changing inputs.

packFFT :: UGen -> UGen -> UGen -> UGen -> UGen -> UGen -> UGenSource

Pack demand-rate FFT bin streams into an FFT chain.

packFFTSpec :: [UGen] -> [UGen] -> UGenSource

Format magnitude and phase data data as required for packFFT.

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

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

pv_Add :: UGen -> UGen -> UGenSource

Complex addition.

pv_BinShift :: UGen -> UGen -> UGen -> UGenSource

Shift and scale the bin positions.

pv_BinWipe :: UGen -> UGen -> UGen -> UGenSource

Combine low and high bins from two inputs.

pv_BrickWall :: UGen -> UGen -> UGenSource

Clear bins above or below a cutoff point.

pv_ConformalMap :: UGen -> UGen -> UGen -> UGenSource

Complex plane attack.

pv_Copy :: UGen -> UGen -> UGenSource

Copies spectral frame.

pv_CopyPhase :: UGen -> UGen -> UGenSource

Copy magnitudes and phases.

pv_Diffuser :: UGen -> UGen -> UGenSource

Random phase shifting.

pv_HainsworthFoote :: UGen -> UGen -> UGen -> UGen -> UGen -> UGenSource

FFT onset detector.

pv_JensenAndersen :: UGen -> UGen -> UGen -> UGen -> UGen -> UGen -> UGen -> UGenSource

FFT feature detector for onset detection.

pv_LocalMax :: UGen -> UGen -> UGenSource

Pass bins which are a local maximum.

pv_MagAbove :: UGen -> UGen -> UGenSource

Pass bins above a threshold.

pv_MagBelow :: UGen -> UGen -> UGenSource

Pass bins below a threshold.

pv_MagClip :: UGen -> UGen -> UGenSource

Clip bins to a threshold.

pv_MagFreeze :: UGen -> UGen -> UGenSource

Freeze magnitudes.

pv_MagMul :: UGen -> UGen -> UGenSource

Multiply magnitudes.

pv_MagNoise :: UGen -> UGenSource

Multiply magnitudes by noise.

pv_MagShift :: UGen -> UGen -> UGen -> UGenSource

Shift and stretch magnitude bin position.

pv_MagSmear :: UGen -> UGen -> UGenSource

Average magnitudes across bins.

pv_MagSquared :: UGen -> UGenSource

Square magnitudes.

pv_Max :: UGen -> UGen -> UGenSource

Maximum magnitude.

pv_Min :: UGen -> UGen -> UGenSource

Minimum magnitude.

pv_Mul :: UGen -> UGen -> UGenSource

Complex multiply.

pv_PhaseShift270 :: UGen -> UGenSource

Shift phase by 270 degrees.

pv_PhaseShift90 :: UGen -> UGenSource

Shift phase by 90 degrees.

pv_PhaseShift :: UGen -> UGen -> UGenSource

Shift phase.

pv_RectComb2 :: UGen -> UGen -> UGen -> UGen -> UGen -> UGenSource

Make gaps in spectrum.

pv_RectComb :: UGen -> UGen -> UGen -> UGen -> UGenSource

Make gaps in spectrum.

unpack1FFT :: UGen -> UGen -> UGen -> UGen -> UGenSource

Unpack a single value (magnitude or phase) from an FFT chain

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

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

Partitioned convolution

pc_calcAccumSize :: Int -> Int -> IntSource

Calculate size of accumulation buffer given FFT and IR sizes.

pc_preparePartConv :: Int -> Int -> Int -> OSCSource

Generate accumulation buffer given time-domain IR buffer and FFT size.

partConv :: UGen -> UGen -> UGen -> UGenSource

Partitioned convolution.