Module

WAGS.Graph.AudioUnit

Package
purescript-wags
Repository
mikesol/purescript-wags

#Allpass Source

data Allpass frequency q

Term-level constructor for an allpass filter.

  • frequency - the frequency where the phase transition occurs.
  • q - the width of the filter.

Constructors

Instances

#Bandpass Source

data Bandpass frequency q

Term-level constructor for a bandpass filter.

  • frequency - the frequency of the isolated band.
  • q - the width of the filter.

Constructors

Instances

#Constant Source

data Constant onOff offset

Term-level constructor for a constant value, aka DC offset.

  • onOff - whether the generator is on or off.
  • offset - the amount of DC offset.

Constructors

Instances

#Convolver Source

data Convolver (buffer :: Symbol)

Term-level constructor for a convolver, aka reverb.

  • buffer - the buffer of the impulse response of the space.

Constructors

Instances

#Delay Source

data Delay delay

Term-level constructor for a delay unit.

  • delay - the delay to apply.

Constructors

Instances

#DynamicsCompressor Source

data DynamicsCompressor threshold knee ratio attack release

Term-level constructor for a compressor.

  • threshold - The threshold under which compression kicks in.
  • knee - The kink of the compression.
  • ratio - The amount of compression to apply.
  • attack - How far we look ahead. Longer attacks will lead to more crisp compression at the expense of an audible delay.
  • release - How long the release time of compression should be.

Constructors

Instances

#Gain Source

data Gain volume

Term-level constructor for a gain unit.

  • volume - the volume of the gain from 0 to 1.

Constructors

Instances

#Highpass Source

data Highpass frequency q

Term-level constructor for a highpass filter.

  • frequency - the frequency below which we start to filter.
  • q - the width of the filter.

Constructors

Instances

#Highshelf Source

data Highshelf frequency gain

Term-level constructor for a highshelf filter.

  • frequency - the frequency above which we start to filter.
  • gain - the boost or the amount of attenuation to apply.

Constructors

Instances

#LoopBuf Source

data LoopBuf buffer onOff playbackRate loopStart loopEnd

Term-level constructor for a looping buffer.

  • buffer - a string representing the buffer to use. Note that this string, when reset, will only reset the buffer when it is stopped.
  • onOff - whether or not the generator is on or off.
  • playbackRate - the playback rate.
  • loopStart - where in the file the loop should start.
  • loopEnd - where in the file the loop should end. A value of 0.0 or less means play to the end of the buffer.

Constructors

  • LoopBuf buffer onOff playbackRate loopStart loopEnd

Instances

#Lowpass Source

data Lowpass frequency q

Term-level constructor for a lowpass filter.

  • frequency - the frequency above which we start to filter.
  • q - the width of the filter.

Constructors

Instances

#Lowshelf Source

data Lowshelf frequency gain

Term-level constructor for a lowshelf filter.

  • frequency - the frequency below which we start to filter.
  • q - the width of the filter.

Constructors

Instances

#Microphone Source

data Microphone

Term-level constructor for a microphone

Constructors

Instances

#Notch Source

data Notch frequency q

Term-level constructor for a notch (aka band-reject) filter.

  • frequency - the frequency we are rejecting.
  • q - the width of the filter.

Constructors

Instances

#Peaking Source

data Peaking frequency q gain

Term-level constructor for a peaking filter. A peaking filter is a combination of bandpass and notch where the gain parameter modulates whether we are reinforcing or attenuating a frequency.

  • frequency - the frequency we are emphasizing or rejecting.
  • q - the width of the filter.
  • gain - if positive, we are emphasizing the frequency. If negative, we are rejecting it.

Constructors

Instances

#PeriodicOsc Source

data PeriodicOsc periodicOsc onOff frequency

Term-level constructor for a periodic oscillator.

  • periodicOsc - the name of the wave table we'll be using. Note that, for a chance to take effect, the periodic oscillator must be stopped.
  • onOff - whether the generator is on or off.
  • frequency - the frequency of the oscillator.

Constructors

Instances

#PlayBuf Source

data PlayBuf buffer offset onOff playbackRate

Term-level constructor for a playback buffer.

  • buffer - a string representing the buffer to use. Note that this string, when reset, will only reset the buffer when it is stopped.
  • offset - where in the file the playback should start.
  • onOff - whether or not the generator is on or off.
  • playbackRate - the playback rate.

Constructors

  • PlayBuf buffer offset onOff playbackRate

Instances

#Recorder Source

data Recorder (recorder :: Symbol)

Term-level constructor for a recorder.

  • recorder - the recorder to which we write data.

Constructors

Instances

#SawtoothOsc Source

data SawtoothOsc onOff frequency

Term-level constructor for a sawtooth oscillator.

  • onOff - whether the generator is on or off.
  • frequency - the frequency of the oscillator.

Constructors

Instances

#SinOsc Source

data SinOsc onOff frequency

Term-level constructor for a sine-wave oscillator.

  • onOff - whether the generator is on or off.
  • frequency - the frequency of the oscillator.

Constructors

Instances

#Speaker Source

data Speaker

Term-level constructor for a loudspeaker.

Constructors

Instances

#SquareOsc Source

data SquareOsc onOff frequency

Term-level constructor for a square-wave oscillator.

  • onOff - whether the generator is on or off.
  • frequency - the frequency of the oscillator.

Constructors

Instances

#StereoPanner Source

data StereoPanner pan

Term-level constructor for a stereo panner.

  • pan - the amount of pan to apply, where -1.0 is fully to the left and 1.0 is fully to the right.

Constructors

Instances

#TriangleOsc Source

data TriangleOsc onOff frequency

Term-level constructor for a triangle oscillator.

  • onOff - whether the generator is on or off.
  • frequency - the frequency of the oscillator.

Constructors

Instances

#WaveShaper Source

data WaveShaper (floatArray :: Symbol) oversample

Term-level constructor for a WaveShaper, aka distortion.

  • floatArray - the shape of the distortion.
  • oversample - how much to oversample - none, 2x or 4x. Once set, this cannot change without destroying and remaking the audio unit.

Constructors

Instances

#OnOff Source

data OnOff

Term-level constructor for a generator being on or off

Constructors

Instances

#OversampleNone Source

data OversampleNone

Type-level oversample none for a wave shaper. This is at the type-level and not the term-level via an ADT because we need make sure to construct an entirely new wave shaper if the value changes.

Constructors

Instances

#OversampleTwoX Source

data OversampleTwoX

Type-level oversample 2x for a wave shaper. This is at the type-level and not the term-level via an ADT because we need make sure to construct an entirely new wave shaper if the value changes.

Constructors

Instances

#OversampleFourX Source

data OversampleFourX

Type-level oversample 4x for a wave shaper. This is at the type-level and not the term-level via an ADT because we need make sure to construct an entirely new wave shaper if the value changes.

Constructors

Instances

#TAllpass Source

data TAllpass

Type-level constructor for an allpass filter.

Constructors

Instances

#TBandpass Source

data TBandpass

Type-level constructor for a bandpass filter.

Constructors

Instances

#TConstant Source

data TConstant

Type-level constructor for a constant value.

Constructors

Instances

#TConvolver Source

data TConvolver (sym :: Symbol)

Type-level constructor for a convolver, aka reverb.

Constructors

Instances

#TDelay Source

data TDelay

Type-level constructor for a delay unit.

Constructors

Instances

#TDynamicsCompressor Source

#TGain Source

data TGain

Type-level constructor for a gain unit.

Constructors

Instances

#THighpass Source

data THighpass

Type-level constructor for a highpass filter.

Constructors

Instances

#THighshelf Source

data THighshelf

Type-level constructor for a highshelf filter.

Constructors

Instances

#TLoopBuf Source

data TLoopBuf

Type-level constructor for a looping buffer.

Constructors

Instances

#TLowpass Source

data TLowpass

Type-level constructor for a lowpass filter.

Constructors

Instances

#TLowshelf Source

data TLowshelf

Type-level constructor for a lowshelf filter.

Constructors

Instances

#TMicrophone Source

data TMicrophone

Type-level constructor for a microphone.

Constructors

Instances

#TNotch Source

data TNotch

Type-level constructor for a notch filter.

Constructors

Instances

#TPeaking Source

data TPeaking

Type-level constructor for a peaking filter.

Constructors

Instances

#TPeriodicOsc Source

data TPeriodicOsc

Type-level constructor for a periodic oscillator.

Constructors

Instances

#TPlayBuf Source

data TPlayBuf

Type-level constructor for playback from a buffer.

Constructors

Instances

#TRecorder Source

data TRecorder (sym :: Symbol)

Type-level constructor for a recorder.

Constructors

Instances

#TSawtoothOsc Source

data TSawtoothOsc

Type-level constructor for a sawtooth oscillator.

Constructors

Instances

#TSinOsc Source

data TSinOsc

Type-level constructor for a sine-wave oscillator.

Constructors

Instances

#TSpeaker Source

data TSpeaker

Type-level constructor for a loudspeaker.

Constructors

Instances

#TSquareOsc Source

data TSquareOsc

Type-level constructor for a square-wave oscillator.

Constructors

Instances

#TStereoPanner Source

data TStereoPanner

Type-level constructor for a stereo panner.

Constructors

Instances

#TTriangleOsc Source

data TTriangleOsc

Type-level constructor for a triangle oscillator.

Constructors

Instances

#TWaveShaper Source

data TWaveShaper (sym :: Symbol) (oversample :: Type)

Type-level constructor for a wave shaper.

Constructors

Instances

#Obliterate Source

data Obliterate

Constructors

Instances

#ReifyAUFoldingWithIndex Source

data ReifyAUFoldingWithIndex

Constructors

Instances

#ReifyAUs Source

type ReifyAUs r = forall rr. HFoldlWithIndex ReifyAUFoldingWithIndex (Record ()) r rr => rr

#reifyAUs Source

reifyAUs :: forall r rr. HFoldlWithIndex ReifyAUFoldingWithIndex (Record ()) r rr => r -> rr

Reify many audio units.