ASPiK SDK
Loading...
Searching...
No Matches
FX-Objects

The FX-Objects module contains specialized audio DSP C++ objects that are inlcuded with and documented in Will Pirkle's new plugin programming book. These objects will be available in May 2019 when the 2nd Edition of Designing Audio Effects Plugins in C++ is published and will be free to use in your projects, commercial or personal. More...

Classes

struct  ComplexNumber
 Structure to hold a complex value. More...
 
struct  BrickwallMagData
 Custom structure that holds magnitude information about a brickwall filter. More...
 
struct  TransitionBandData
 Custom structure that holds transition band information for FIR filter calculations. More...
 
struct  BiquadParameters
 Custom parameter structure for the Biquad object. Default version defines the biquad structure used in the calculation. More...
 
class  Biquad
 The Biquad object implements a first or second order H(z) transfer function using one of four standard structures: Direct, Canonical, Transpose Direct, Transpose Canonical. More...
 
struct  AudioFilterParameters
 Custom parameter structure for the AudioFilter object. More...
 
class  AudioFilter
 The AudioFilter object implements all filters in Designing Audio Effects Plugins in C++ 2nd Ed. by Will Pirkle. More...
 
struct  FilterBankOutput
 Custom output structure for filter bank objects that split the inptu into multiple frequency channels (bands) More...
 
struct  LRFilterBankParameters
 Custom parameter structure for the LRFilterBank object which splits the input signal into multiple bands. The stock obejct splits into low and high frequency bands so this structure only requires one split point - add more split frequencies to support more bands. More...
 
class  LRFilterBank
 The LRFilterBank object implements 2 Linkwitz-Riley Filters in a parallel filter bank to split the signal into two frequency bands. Note that one channel is inverted (see the FX book below for explanation). You can add more bands here as well. More...
 
struct  AudioDetectorParameters
 Custom parameter structure for the AudioDetector object. NOTE: this object uses constant defintions: More...
 
class  AudioDetector
 The AudioDetector object implements the audio detector defined in the book source below. NOTE: this detector can receive signals and transmit detection values that are both > 0dBFS. More...
 
struct  DynamicsProcessorParameters
 Custom parameter structure for the DynamicsProcessor object. Ths struct includes all information needed from GUI controls. More...
 
class  DynamicsProcessor
 The DynamicsProcessor object implements a dynamics processor suite: compressor, limiter, downward expander, gate. More...
 
class  LinearBuffer< T >
 The LinearBuffer object implements a linear buffer of type T. It allows easy wrapping of a smart pointer object. More...
 
class  CircularBuffer< T >
 The CircularBuffer object implements a simple circular buffer. It uses a wrap mask to wrap the read or write index quickly. More...
 
class  ImpulseConvolver
 The ImpulseConvolver object implements a linear conovlver. NOTE: compile in Release mode or you may experice stuttering, glitching or other sample-drop activity. More...
 
struct  AnalogFIRFilterParameters
 Custom parameter structure for the AnalogFIRFilter object. This is a somewhat silly object that implaments an analog magnitude response as a FIR filter. NOT DESIGNED to replace virtual analog; rather it is intended to show the frequency sampling method in an easy (and fun) way. More...
 
class  AnalogFIRFilter
 The AnalogFIRFilter object implements a somewhat silly algorithm that implaments an analog magnitude response as a FIR filter. NOT DESIGNED to replace virtual analog; rather it is intended to show the frequency sampling method in an easy (and fun) way. More...
 
struct  AudioDelayParameters
 Custom parameter structure for the AudioDelay object. More...
 
class  AudioDelay
 The AudioDelay object implements a stereo audio delay with multiple delay algorithms. More...
 
struct  OscillatorParameters
 Custom parameter structure for the LFO and DFOscillator objects. More...
 
class  LFO
 The LFO object implements a mathematically perfect LFO generator for modulation uses only. It should not be used for audio frequencies except for the sinusoidal output which, though an approximation, has very low TDH. More...
 
class  DFOscillator
 The DFOscillator object implements generates a very pure sinusoidal oscillator by placing poles direclty on the unit circle. Accuracy is excellent even at low frequencies. More...
 
struct  ModulatedDelayParameters
 Custom parameter structure for the ModulatedDelay object. More...
 
class  ModulatedDelay
 The ModulatedDelay object implements the three basic algorithms: flanger, chorus, vibrato. More...
 
struct  PhaseShifterParameters
 Custom parameter structure for the PhaseShifter object. More...
 
class  PhaseShifter
 The PhaseShifter object implements a six-stage phaser. More...
 
struct  SimpleLPFParameters
 Custom parameter structure for the SimpleLPFP object. Used for reverb algorithms in book. More...
 
class  SimpleLPF
 The SimpleLPF object implements a first order one-pole LPF using one coefficient "g" value. More...
 
struct  SimpleDelayParameters
 Custom parameter structure for the SimpleDelay object. Used for reverb algorithms in book. More...
 
class  SimpleDelay
 The SimpleDelay object implements a basic delay line without feedback. More...
 
struct  CombFilterParameters
 Custom parameter structure for the CombFilter object. Used for reverb algorithms in book. More...
 
class  CombFilter
 The CombFilter object implements a comb filter with optional LPF in feedback loop. Used for reverb algorithms in book. More...
 
struct  DelayAPFParameters
 Custom parameter structure for the DelayAPF object. Used for reverb algorithms in book. More...
 
class  DelayAPF
 The DelayAPF object implements a delaying APF with optional LPF and optional modulated delay time with LFO. More...
 
struct  NestedDelayAPFParameters
 Custom parameter structure for the NestedDelayAPF object. Used for reverb algorithms in book. More...
 
class  NestedDelayAPF
 The NestedDelayAPF object implements a pair of nested Delaying APF structures. These are labled the outer and inner APFs. The outer APF's LPF and LFO may be optionally enabled. You might want to extend this object to enable and use the inner LPF and LFO as well. More...
 
struct  TwoBandShelvingFilterParameters
 Custom parameter structure for the TwoBandShelvingFilter object. Used for reverb algorithms in book. More...
 
class  TwoBandShelvingFilter
 The TwoBandShelvingFilter object implements two shelving filters in series in the standard "Bass and Treble" configuration. More...
 
struct  ReverbTankParameters
 Custom parameter structure for the ReverbTank object. More...
 
class  ReverbTank
 The ReverbTank object implements the cyclic reverb tank in the FX book listed below. More...
 
class  PeakLimiter
 The PeakLimiter object implements a simple peak limiter; it is really a simplified and hard-wired versio of the DynamicsProcessor. More...
 
struct  ZVAFilterParameters
 Custom parameter structure for the ZVAFilter object. More...
 
class  ZVAFilter
 The ZVAFilter object implements multpile Zavalishin VA Filters. Audio I/O: More...
 
struct  EnvelopeFollowerParameters
 Custom parameter structure for the EnvelopeFollower object. More...
 
class  EnvelopeFollower
 The EnvelopeFollower object implements a traditional envelope follower effect modulating a LPR fc value using the strength of the detected input. More...
 
struct  TriodeClassAParameters
 Custom parameter structure for the TriodeClassA object. More...
 
class  TriodeClassA
 The TriodeClassA object simulates a triode in class A configuration. This is a very simple and basic simulation and a starting point for other designs; it is not intended to be a full-fledged triode simulator. More...
 
struct  ClassATubePreParameters
 Custom parameter structure for the ClassATubePre object. More...
 
class  ClassATubePre
 The ClassATubePre object implements a simple cascade of four (4) triode tube models. More...
 
struct  BitCrusherParameters
 Custom parameter structure for the BitCrusher object. More...
 
class  BitCrusher
 The BitCrusher object implements a quantizing bitcrusher algorithm. More...
 

Detailed Description

The FX-Objects module contains specialized audio DSP C++ objects that are inlcuded with and documented in Will Pirkle's new plugin programming book. These objects will be available in May 2019 when the 2nd Edition of Designing Audio Effects Plugins in C++ is published and will be free to use in your projects, commercial or personal.