SynthLab SDK
SynthLab::PluckPosFilter Class Reference

Comnination of three filters in one; note that the figure in the book does not show the variety of connection combinations and filter bypassing possible, nor the multiple output points. More...

#include <synthbase.h>

Public Member Functions

void clear ()
 
void reset (double _sampleRate, double minimumPitch=MIDI_NOTE_0_FREQ)
 reset the delay, calculate a new length based on sample rate and minimum pitch More...
 
void setDelayInSamples (double _delaySamples)
 set comb delay time - this will be based on virtual plucking position on string More...
 
double processAudioSample (double xn, PluckFilterType type)
 run the string of filters More...
 

Protected Attributes

DelayLine combDelay
 for pluck position
 
LP1PFilter bridgeIntegrator
 for bridge LPF
 
LP2Filter pickupFilter
 

Detailed Description

Comnination of three filters in one; note that the figure in the book does not show the variety of connection combinations and filter bypassing possible, nor the multiple output points.

  • filters all come from the FX book below
  • Pluck Position: a comb filter
  • Bridge Filter: a lossy integrator with very low fc
  • Pickup Filter: a 2nd order LPF whose parameters are adjusted differently for guitar vs. bass guitar pickups
Author
Will Pirkle http://www.willpirkle.com
Remarks
This object is included in Designing Audio Effects Plugins in C++ 2nd Ed. by Will Pirkle
Version
Revision : 1.0
Date
Date : 2018 / 09 / 7

Member Function Documentation

◆ clear()

void SynthLab::PluckPosFilter::clear ( )
inline

flush filter

◆ processAudioSample()

double SynthLab::PluckPosFilter::processAudioSample ( double  xn,
PluckFilterType  type 
)
inline

run the string of filters

  • the type argument specifies the ordering and output location
Parameters
xnthe input value
typethe type of combination of filters to run

◆ reset()

void SynthLab::PluckPosFilter::reset ( double  _sampleRate,
double  minimumPitch = MIDI_NOTE_0_FREQ 
)
inline

reset the delay, calculate a new length based on sample rate and minimum pitch

  • note how pickup and bridge filters are hard-coded for init
Parameters
_sampleRatefs
minimumPitchpitch in Hz of the lowest note that could fit into this delay line

◆ setDelayInSamples()

void SynthLab::PluckPosFilter::setDelayInSamples ( double  _delaySamples)
inline

set comb delay time - this will be based on virtual plucking position on string

Parameters
_delaySamplesdelay time in samples

The documentation for this class was generated from the following file: