audiolab
AudioLab is a library of high-level Pure Data abstractions focused on electroacoustic composition, live electronics, and sound design.
- Repository Source code
- Issues Report or browse issues
Contributors
People who contribute to this project.
Objects
- pp.adsr~
pp.adsr~is a non-linear ADSR/ADR envelope generator that provides both an audio-rate envelope and a float envelope at a 64-sample rate. - pp.amp-st~
pp.amp-st~amplifies an input signal, serving as a convenient signal multiplier. - pp.amp~
pp.amp~amplifies an input signal, serving as a convenient signal multiplier, and outputs the amplified signal. - pp.butterkreuz3-st~
pp.butterkreuz3-st~is a stereo three-band crossover filter with a relatively flat magnitude response, producing low-, mid-, and high-band signal outputs for the left and right channels. - pp.butterkreuz3~
pp.butterkreuz3~is a three-band crossover filter that splits an input signal into low, mid, and high bands with a relatively flat magnitude response. - pp.clop-st~
pp.clop-st~is the stereo version ofpp.clop~, described as an experimental comb–low-pass ladder filter that outputs filtered left and right signals. - pp.clop~
pp.clop~is an experimental comb–low-pass ladder filter that processes an input signal and outputs the filtered signal. - pp.distort-st~
pp.distort-st~is a stereo distortion/saturation processor whose squeeze control drives the signal into a tanh soft clipper, while squash and squish add odd and even harmonics, respectively. - pp.distort~
pp.distort~provides distortion/saturation using a tanh soft clipper: squeeze drives the clipper, while squash and squish add odd and even harmonics respectively. - pp.dopplerxy~
pp.dopplerxy~processes an input signal to produce a Doppler-transposed signal plus separate X and Y trajectory signals for pan modulation. - pp.doppler~
pp.doppler~emulates the pitch, amplitude, and high-frequency attenuation changes that occur when a sound source moves relative to an observer. - pp.dynamics-st~
pp.dynamics-st~is the stereo version ofpp.dynamics~, providing compression and expansion with adjustable thresholds, attack/release, makeup gain, dry/wet mix, lookahead, envelope detection, and optional feedback compression. - pp.dynamics~
pp.dynamics~is a compressor/expander for processing an audio signal, with a second signal inlet for sidechain input and a message inlet for control. - pp.dystort-st~
pp.dystort-st~provides stereo dynamic distortion and saturation, using an internal envelope follower to keep saturation consistent across different input intensities. - pp.dystort~
pp.dystort~provides dynamic distortion and saturation, using an internal envelope follower to keep the saturation level consistent across different input intensities. - pp.echo~
pp.echo~is a stereo analog-style delay with independently controllable left and right delay times, feedback, filtering, modulation, reverb, distortion, and dry/wet mix. - pp.env-st~
pp.env-st~is a stereo envelope follower that analyzes left and right input signals and outputs a separate envelope signal for each channel. - pp.env~
pp.env~is a simple envelope follower that detects the amplitude of an input signal and outputs an envelope signal, with a second outlet for messages. - pp.eqfilter-st~
pp.eqfilter-st~is the stereo version ofpp.eqfilter~, filtering left and right input signals with selectable lowpass, highpass, resonant, bandpass, notch, peaking, allpass, lowshelf, or highshelf responses. - pp.eqfilter~
pp.eqfilter~filters an incoming signal using selectable lowpass, highpass, resonant, bandpass, notch, peaking, allpass, lowshelf, or highshelf modes, with coefficients based on Robert Bristow-Johnson’s Audio EQ Cookbook. - pp.fft-block-st~
pp.fft-block-st~is the stereo version ofpp.fft-block~, passing left and right signal inputs to corresponding delayed signal outputs for FFT-block latency compensation. - pp.fft-block~
pp.fft-block~delays an incoming signal to provide block-delay compensation for FFT processing. - pp.fft-freeze-st~
pp.fft-freeze-st~freezes an incoming signal when it receives a bang and outputs the frozen signal. - pp.fft-freeze~
pp.fft-freeze~freezes an incoming audio signal when it receives a bang and outputs the frozen signal. - pp.fft-gate-st~
pp.fft-gate-st~is the stereo version ofpp.fft-gate~, processing left and right signals with an FFT noise gate and providing separate denoised and noisy-part stereo outputs. - pp.fft-gate~
pp.fft-gate~is a spectral gate for reducing noise in an input signal, with separate signal outlets for the denoised and noisy parts. - pp.fft-partconv-st~
pp.fft-partconv-st~is the stereo version ofpp.fft-partconv~, convolving stereo input with stereo impulse responses and outputting left and right convolved signals. - pp.fft-partconv-st~.s
pp.fft-partconv-st~.sperforms stereo partitioned FFT convolution and runs its CPU-heavy DSP in apd~subprocess. - pp.fft-partconv~
pp.fft-partconv~performs partitioned impulse-response convolution, outputting both the convolved signal and a dry/wet signal. - pp.fft-partconv~.s
pp.fft-partconv~.sperforms partitioned impulse-response convolution and runs its CPU-heavy DSP in a subprocess usingpd~. - pp.fft-pitchshift-st~
pp.fft-pitchshift-st~is the stereo version ofpp.fft-pitchshift~, using Pd’s phase-vocoder implementation to transpose left and right input signals by a value in cents. - pp.fft-pitchshift~
pp.fft-pitchshift~uses a phase-vocoder implementation to transpose an input signal by a specified number of cents, outputting the transposed signal. - pp.fft-profile-st~
pp.fft-profile-st~is a stereo spectral denoiser/vocoder that filters left and right input signals using a mask retrieved from a second stereo signal pair. - pp.fft-profile~
pp.fft-profile~is an esoteric spectral denoiser/vocoder that filters one signal using a spectral mask retrieved from a second signal, outputting both the masked signal and the residual. - pp.fft-split-st~
pp.fft-split-st~is the stereo version ofpp.fft-split~, splitting left and right input signals at a specified frequency into separate low-pass and high-pass stereo outputs. - pp.fft-split~
pp.fft-split~splits an input signal at a specified frequency in Hz, outputting low-pass- and high-pass-filtered signals. - pp.fft-stretch~
pp.fft-stretch~is a stereo phase-vocoder abstraction for time-stretching buffered or recorded audio, with independent playback-speed and transposition controls. - pp.fft-timbre-st~
pp.fft-timbre-st~is the stereo version ofpp.fft-timbre~, processing left and right signals with a configurable FFT bin-reordering function. - pp.fft-timbre~
pp.fft-timbre~processes an input signal using an FFT-based bin-reordering function, with controls including shift, rotation, curves, breakpoints, makeup gain, and dry/wet mix. - pp.freqshift-st~
pp.freqshift-st~is the stereo version ofpp.freqshift~, shifting input signals in frequency by a specified number of hertz using single-sideband modulation and a quadrature transform. - pp.freqshift~
pp.freqshift~is a single-sideband modulation frequency shifter that shifts an input signal by a frequency specified in hertz. - pp.graindelay~
pp.graindelay~is a granular delay that processes a signal input into stereo output, with controls for grain size, pitch, envelope, filtering, panorama, delay, feedback, and dry/wet balance. - pp.grainer-mc~
pp.grainer-mc~is a granular sampler that loads or records audio into a buffer and sends each grain stream to an individual channel for multichannel playback or separate processing. - pp.grainer~
pp.grainer~is a granular sampler for mono sound files that produces stereo audio and can also record into its buffer. - pp.grainrev~
pp.grainrev~is a stereo granular delay/reverb that processes a signal using triggered grains, with controls for grain size, delay, pitch, envelope, panning, feedback, and randomization. - pp.in~
pp.in~provides a microphone input signal, with its creation argument selecting the input channel. - pp.ladder-st~
pp.ladder-st~is a CPU-heavy stereo “Moog” fourth-order ladder filter that can operate as a low-pass, high-pass, band-pass, or resonant filter. - pp.ladder~
pp.ladder~is a CPU-heavy fourth-order “Moog” ladder filter that processes an input signal as low-pass, high-pass, band-pass, or resonant filtering. - pp.lfnoise~
pp.lfnoise~is a low-frequency noise generator that outputs a random signal in the range −1 to 1. - pp.limit-st~
pp.limit-st~limits a stereo input signal to the range −1 to 1, providing separate limited left and right signal outputs. - pp.limit~
pp.limit~limits an incoming signal to the range −1 to 1, providing a limited signal at its signal outlet. - pp.loop.play~
pp.loop.play~reads audio from the circular buffer defined bypp.loop.rec~, with signal-rate control of playback speed and playhead position. - pp.loop.rec~
pp.loop.rec~records incoming audio into a variable-length circular buffer for playback bypp.loop.play~. - pp.midside~
pp.midside~is a mid-side mixer that processes left and right input signals and outputs a stereo left/right pair. - pp.out-4~
pp.out-4~provides four-channel speaker output and recording to a WAV sound file. - pp.out-8~
pp.out-8~provides eight-channel speaker output and records the eight signal channels to a WAV sound file. - pp.out~
pp.out~provides stereo speaker output and records the audio to a WAV sound file. - pp.pantd~
pp.pantd~pans an input signal to left and right outputs using both amplitude and time differences. - pp.pan~
pp.pan~performs constant-power panning of an input signal to left and right signal outputs, with panorama ranging from -1 (left) to 1 (right). - pp.parameq-st~
pp.parameq-st~is a stereo parametric equalizer using biquad filters, with signal inputs and filtered-signal outputs plus message control. - pp.parameq~
pp.parameq~is a six-filter parametric equalizer based on biquad filters, accepting a signal and outputting the filtered signal. - pp.phiverb~
pp.phiverb~is an algorithmic, feedback-delay-network-based reverb that processes stereo input and produces stereo output with configurable input filtering, early reflections, late reflections, damping, feedback, and dry/wet mix. - pp.pitchshift-st~
pp.pitchshift-st~is the stereo version ofpp.pitchshift~, transposing left and right input signals by a value in cents. - pp.pitchshift~
pp.pitchshift~is a simple rotating-head pitch shifter that transposes an input signal and outputs the transposed signal. - pp.rev~
pp.rev~is an extended,rev3~-based reverb abstraction with stereo-width processing and controls for early reflections, the reverb tail, damping, feedback, and dry/wet balance. - pp.sdel-st~
pp.sdel-st~is the stereo version ofpp.sdel~, providing samplewise delay for left and right input signals and outputting the corresponding delayed stereo signals. - pp.sdel~
pp.sdel~delays an incoming signal by a specified number of samples, producing the delayed signal at its signal outlet. - pp.sfplayer~
pp.sfplayer~provides clean variable-speed playback of extra-long sound files, with stereo recording into its buffer and WAV export. - pp.shepphaser-st~
pp.shepphaser-st~is the stereo version ofpp.shephaser~, producing a Shepard tone-like phaser using a quadrature transform and multiple allpass-filter stages. - pp.shepphaser~
pp.shepphaser~produces a Shepard tone-like phaser effect using an audio-rate phase shift, resonance, and a selectable number of active allpass-filter stages. - pp.shiftlfo~
pp.shiftlfo~is an LFO for generating irregular rhythmic patterns, with a signal output ranging from -1 to 1. - pp.spacer~
pp.spacer~combines functionality likepp.doppler~andpp.pan~to spatialize an input signal from X and Y trajectory signals, producing stereo dry and wet outputs. - pp.spat4~
pp.spat4~performs four-channel distance-based amplitude panning of an input signal using signal-rate x-position, y-position, and spatial-spread controls. - pp.spat8~
pp.spat8~performs distance-based amplitude panning of an input signal across eight output channels, using signal-rate x-position, y-position, and spatial-spread controls. - pp.spectrum~
pp.spectrum~is a spectrum analyser that accepts a signal in its single signal inlet. - pp.twisted-delays2-st~
pp.twisted-delays2-st~is the stereo version ofpp.twisted-delays2~, implementing a complex delay network with controllable delay times, rotation angles, feedback, damping, modulation, and dry/wet balance. - pp.twisted-delays2~
pp.twisted-delays2~is a multipurpose twisted delay network inspired by the power-conserving complex delay networks described in chapter 7.5 of Miller Puckette’s Theory and Techniques of Electronic Music. - pp.twisted-delays~
pp.twisted-delays~is a multipurpose twisted-delay effect that processes one signal into four signal outputs, with control over delay times, rotation angles, feedback, damping, crossover frequency, and dry/wet balance. - pp.vcfilter-st~
pp.vcfilter-st~is a stereo filter whose coefficients follow Robert Bristow-Johnson’s Audio EQ Cookbook, with low-pass, high-pass, resonant, and notch filter types. - pp.vcfilter~
pp.vcfilter~is a signal-controlled biquad filter whose frequency and Q/bandwidth can be controlled by signal inputs. - pp.waveform
pp.waveformdraws a waveform from a named source array, with configurable dimensions, Y range, color, thickness, and resolution. - pp.wfdisplay
pp.wfdisplaydisplays the waveform of a source array at a fixed width and height. - pp.xfade-st~
pp.xfade-st~crossfades between two stereo signals, using either a linear (lin) or equal-power (sqrt) curve. - pp.xfade~
pp.xfade~crossfades between two input signals and outputs the mixed signal, using either a linear (lin) or equal-power (sqrt) curve. - pp.xycurve
pp.xycurveprovides a GUI for creating and editing an x/y curve of up to 34 control points, with outputs for x, y, total curve length, and control-point coordinates. - pp.xypad
pp.xypadis an XY controller that outputs x and y floats and can record and play back pointer movements, sending a bang when playback finishes.