All Classes and Interfaces

Class
Description
Value object for Minim ADSR parameters.
Utility functions for ADSRParams.
The AffineTransformType enum defines the types of affine transformations that can be applied to bitmaps in the PixelAudio library using only rotation and reflection.
 
ArgosyMixer demonstrates use of the Argosy class to create and animate patterns and save them to video.
Abstract class for combining gesture data from PACurveMaker with audio synthesis parameters from GestureGranularConfig.Builder.
Generate JSON filenames for AudioBrush "session" format, with gesture and audio synth settings.
 
Read AudioBrush library JSON format.
 
 
Session manifest writer/reader for brush sets.
 
 
 
 
 
Read AudioBrush session data form JSON files.
 
 
 
Experimental helper class for PixelAudioMapper and other classes or methods that transcode audio and color values.
AudioScheduler: A sample-accurate scheduler for things that should occur at specific times in an audio stream.
Policy for point events whose sampleTime is already in the past when processed.
A one-shot event that occurs at an absolute sample index.
 
A duration event active on [startSample, endSample) where endSample is exclusive.
 
Utility conversions for audio.
 
Experimental real time performance application based on PixelAudio, with an editing GUI, Presets, and saving and loading JSON-format files for brushstroke and granular configuration data.
 
Simple container for a brush hit-test result.
 
 
Future Development: Barebones interface for "something that happens at a certain point", and then in AudioScheduler the time-when-something-happens gets connected to the-room-where-it-happens and the entire cast of Hamilton steps in, if you let them.
 
Presets are applied to each new brush at the moment drawing is completed by releasing the mouse button and calling makeBrush(), the bottleneck method for all brush creation.
 
BigWaveSynth shows how you can load a WaveSynth into the pixel array of a MultiGen.
BigWaveSynthAudio shows how you can load the color output of WaveSynth into the pixel array of a MultiGen and play the WaveSynth's audio output with a PASamplerInstrument.
Provides static methods for rotating and reflecting 2D integer arrays using index remapping.
BoustropheGen generates a signal path that starts at (0,0) and reads left-to-right to (width-1, 0).
A PixelMapGen that loads data from an external PixelMapGen.pixelMap, such as might be saved in a JSON file.
 
Simple container for a brush hit-test result.
 
 
Future Development: Barebones interface for "something that happens at a certain point", and then in AudioScheduler the time-when-something-happens gets connected to the-room-where-it-happens and the entire cast of Hamilton steps in, if you let them.
 
Presets are applied to each new brush at the moment drawing is completed by releasing the mouse button and calling makeBrush(), the bottleneck method for all brush creation.
 
 
Immutable, schedule-aligned per-event parameters for gesture playback where each event accepts a buffer sample index and optional pan, gain, and pitch modifiers.
 
Class for storing core parameters for both granular and sample synthesis engine events, used extensively in PixelAudio examples.
 
 
 
 
 
JSON read/write support for GestureGranularConfig.Builder.
 
 
 
Immutable core parameters for gesture-driven granular playback.
 
 
UI preset hint for timing.
 
Deprecated.
Data container for a PAGesture with immutable points and times and an optional start time (in milliseconds).
Build schedules for classes that implement PAGesture or use PAGesture implementers, for example to to build, interpolate, and warp time and point lists.
Stores optional affine-transform state for a gesture/curve.
AudioBrush subclass for PAGranularInstrument.
Generates coordinates and LUTs for a Hilbert curve over a square bitmap starting at (0,0) and ending at (width-1, 0).
Demo of how to set and save WaveSynth parameters from JSON files.
Implements a simple Lindenmeyer system (L-system), a so-called DOL-system: deterministic and context-free.
LoadAudioToImage shows how you can open audio files and transcode their image data to an image.
LoadImageToAudio shows how to load an image and turn it into an audio file that can be played by clicking on the image.
PixelAudio Core Concept: Mapping The LookupTables example shows how to map a 1D audio signal onto a 2D bitmap, using lookup tables (LUTs) to create a one-to-one correspondence between audio samples and RGB pixels.
Generates a Moore curve over a square bitmap starting at (width/2 - 1, 0) and ending at (width/2, 0).
A PixelMapGen child class that combines multiple PixelMapGen instances with a single signal path.
MultiGenDemo: How to Combine Gens into a MultiGen
The LookupTables example shows how a central element of PixelAudio, the lookup table, connects a 1D audio signal with a 2D bitmap, putting audio samples and RGB pixels in one-to-one correspondence within a single PixelMapGen instance such as a Hilbert, Moore, or DiagonalZigzag.
K.jpg's OpenSimplex 2, faster variant from https://github.com/KdotJPG/OpenSimplex2
OverlapUtil Small helper for computing overlap between a span [spanStart, spanEnd) and a block [blockStart, blockStart+blockSize).
 
Class to store a path composed of lines and Bezier curves, along with fill, stroke, weight and opacity values.
Provides storage for a cubic Bezier curves's control points and anchor point.
Boundary policy for mapping gesture points into a rectangular domain.
Provides descriptors for PABoundsPolicy: CLIP, WRAP, REFLECT, SKIP_TIME, KEEP_TIME.
Core class in the PAGranularInstrumentDirector granular synthesis processing chain, provides windowed granular synthesis with normalization.
Calling chain: PAGranularInstrumentDirector -> PAGranularInstrument -> PAGranularSampler -> PAGranularVoice,
with PABurstGranularSource handling the complexities of the granular synthesis sample by sample.
Minimal interface for interpolated curves.
PACurveMaker is a utility and storage class for gestures and curve modeling, with point reduction and drawing to on-screen PApplets or off-screen PGraphics.
Simple Processing-friendly callback interface.
JSON read/write support for PACurveMaker.
 
 
A class to maintain static versions of point reduction and curve-modeling methods.
PAFloatSource Minimal, library-agnostic "audio source" abstraction for PixelAudio voices.
PAGesture provides a definitional interface for "gestures": 1) a list of points and 2) a list of time offsets where 3) both lists have the same cardinality and 4) time offsets are monotonically non-dereasing.
Treats a gesture defined by (time, x, y) samples as a parametric curve.
Data storage class for PAGestureParametric.
Reduced set of Adobe Illustrator 3.0 (ancient but still useful) path operators for recording curves.
PAGranularInstrument High-level granular instrument wrapper.
The top-level entry point for Granular Synthesis in the PixelAudio library, PAGranularInstrumentDirector acts as a facade to PAGranularInstrument, calling PAGranularInstrument.play(...) with a PABurstGranularSource instance as a PASource and all necessary gesture and timing data.
PAGranularSampler UGen-based multi-voice granular sampler.
 
PAGranularVoice A single granular "voice" driven by a PASource.
PAIndexParametric Parametric view of an indexed offset list, typically into a float[] buffer (for example, an audio signal or lookup table).
Models piecewise-linear scalar control curve defined by keyframes.
Stores a line vertex consisting of a single point.
Interface for applications extending PApplet that use NetworkDelegate to send and receive UDP messages.
PAPathParametric Parametric view of a polyline path (e.g., polygonized Bezier).
Generic interface for anything that can be "played." Provides a minimal playback API plus backward-compatible overloads for sampler instruments and other PAPlayable classes.
Backend engine contract for sampler implementations.
PASamplerInstrument Represents a playable instrument that uses a PASampler instantiated as a PASharedBufferSampler to trigger audio playback from a shared buffer that is (currently) a Minim MultiChannelBuffer.
PASamplerInstrumentPool Manages a group of PASamplerInstruments sharing the same source buffer and audio output.
PASamplerInstrumentPoolMulti Manages multiple PASamplerInstrumentPool instances, each keyed by name.
Specialized playable interface for sample-based instruments.
PASamplerVoice — a single playback "voice" reading from a shared mono buffer.
UGen-based sampler that plays multiple PASamplerVoice instances from a single shared mono buffer (channel 0 of a MultiChannelBuffer) which is an array of floating point samples over (-1.0..1.0).
 
PASource A PAFloatSource with an additional pitch policy hint.
Interface for line and curve vertices.
PitchPolicy determines how PASamplerInstrument / PASamplerVoice should interpret their pitch parameter in combination with a given PASource.
 
PixelAudioMapper is designed to handle one-to-one mappings between 1D "signal" arrays formatted as floating point values in the range [-1.0, 1.0] and 2D "image" arrays formatted as RGBA integer pixel data.
List of available color channels, "L" for lightness, since "B" for brightness is taken.
 
Abstract class for handling coordinates and LUT generation for PixelAudioMapper.
Holds information about a triggered playback event.
Deprecated.
AudioBrush subclass for PASamplerInstrument.
Stores values used for SamplerBrush event staging, used in tutorial examples such as TutorialOne_03_Drawing.
A wrapper for OpenSimplex2, adapted from Christian Maher's code at https://cmaher.github.io/posts/working-with-simplex-noise/
SimpleADSR — software envelope generator with optional exponential curves.
 
This is the Starter example with animation added.
 
 
Used to schedule or track events that take place at specific coordinate locations.
TransformPImage demonstrates some of the commands available in the BitmapTransform class.
The first tutorial opens audio or image files and loads either file type to both the image display and the audio buffer.
This example sketch builds on TutorialOne_01_FileIO, which provided commands to open and display audio and image files, transcode image pixel data to audio samples, transcode audio samples to image pixel data, and save audio and image files.
NEW FEATURES
A light-weight version of the AudioBrush class for combining gestures and audio synthesis.
Defines the curve drawing model for a brush using PACurveMaker.
A class to store a hit-test result, recording an AudioBrushLite instance and its index in brush list.
 
 
 
NETWORKING WITH UDP
A light-weight version of the AudioBrush class for combining gestures and audio synthesis.
Defines the curve drawing model for a brush using PACurveMaker.
A class to store a hit-test result, recording an AudioBrushLite instance and its index in brush list.
 
 
 
GesturePlayground uses a GUI to provide a tour of curve drawing with an interface to the two audio synthesis engines available in PixelAudio: the Sampler synth and the Granular synth.
 
Simple container for a brush hit-test result.
 
Future Development: Barebones interface for "something that happens at a certain point", and then in AudioScheduler the time-when-something-happens gets connected to the-room-where-it-happens and the entire cast of Hamilton steps in, if you let them.
 
TutorialOne_06_WB_Retrofit A continuation of TutorialOne_03_Drawing that keeps the drawing, brush, sampler, granular, bounds, and envelope code from TutorialOne_03_Drawing, but changes the audio source model: - anthemSignal / anthemBuffer hold the entire loaded audio file.
TutorialOne_06_WindowBuffer
A light-weight version of the AudioBrush class for combining gestures and audio synthesis.
Defines the curve drawing model for a brush using PACurveMaker.
A class to store a hit-test result, recording an AudioBrushLite instance and its index in brush list.
 
 
 
Deprecated, for removal: This API element is subject to removal in a future version.
Data storage for WaveSynth operator data.
 
Implements a combination of color organ and additive audio synth.
Utilities for generating WaveSynth "instruments" and working with WaveSynth data.
Additive audio synthesis engine produces colorful animated patterns and electronic synth sounds.
Example sketch shows how to create an audio synth sequencer with the WaveSynth.
WindowCache Simple cache for windowFunction.generateCurve(length) results.
 
A windowed buffer class to permit loading large audio sources into memory and stepping through them.