Table of Contents:


What is a phase shift?

All Pass Filters

$$ H(s) = \frac{a+bs^{-1}}{1 + as^{-1}} $$

$$ y_n=-ay_{n-1}+x_n+ax_{n-1} $$

Vst::Sample32* AllPassFilter( Vst::Sample32* INChannelBuffer, Vst::Sample32* OUTChannelBuffer, float a, int numSamples ) {
		
		OUTChannelBuffer[0] = INChannelBuffer[0];
		
		for (int i = 1; i < numSamples; i++) {
				
				OUTChannelBuffer[i] = -a * OUTChannelBuffer[i - 1] + INChannelBuffer[i] + a * INChannelBuffer[i - 1];
			
		}
		
		return OUTChannelBuffer;
}

image.png

Cascading Filters