Use Non-Frames Version Previous Page Next Page
Signal Modifiers: Specialized Filters

pareq

  ar      pareq      asig, kc, iv, iq, imode

Description

Implementation of Zoelzer's parametric equalizer filters, with some modifications by the author.

The formula for the low shelf filter is:

	omega = 2*pi*f/sr
	K     = tan(omega/2)
	
	b0    = 1 + sqrt(2*V)*K + V*K^2
	b1    = 2*(V*K^2 - 1)
	b2    = 1 - sqrt(2*V)*K + V*K^2
	
	a0    = 1 + K/Q + K^2
	a1    = 2*(K^2 - 1)
	a2    = 1 - K/Q + K^2

The formula for the high shelf filter is:

	omega = 2*pi*f/sr
	K     = tan((pi-omega)/2)
	
	b0    = 1 + sqrt(2*V)*K + V*K^2
	b1    = -2*(V*K^2 - 1)
	b1    = 1 - sqrt(2*V)*K + V*K^2
	
	a0    = 1 + K/Q + K^2
	a1    = -2*(K^2 - 1)
	a2    = 1 - K/Q + K^2

The formula for the peaking filter is:

	omega = 2*pi*f/sr
	K     = tan(omega/2)
	
	b0 =  1 + V*K/2 + K^2
	b1 =  2*(K^2 - 1)
	b2 =  1 - V*K/2 + K^2
	
	a0 =  1 + K/Q + K^2
	a1 =  2*(K^2 - 1)
	a2 =  1 - K/Q + K^2

Initialization

iv – amount of boost or cut. If iv > 1, gain of kc is increased. If iv <1, gain of kc is decreased. If iv = 1, there is no gain change at kc.

iq – Q of the filter (sqrt(.5) is no resonance)

imode – operating mode

Performance

kc - center frequency in peaking mode, corner frequency in shelving mode.

asig – the incoming signal

Example

instr 15
  ifc     =       p4                       ; Center / Shelf
  iq      =       p5                       ; Quality factor sqrt(.5) is no resonance
  iv      =       ampdb(p6)                ; Volume Boost/Cut
  imode   =       p7                       ; Mode 0=Peaking EQ, 1=Low Shelf, 2=High Shelf
  kfc     linseg  ifc*2, p3, ifc/2
  asig    rand    5000                     ; Random number source for testing
  aout    pareq   asig, kfc, iv, iq, imode ; Parmetric equalization
          outs    aout, aout               ; Output the results
endin

; SCORE:
  ;   Sta  Dur  Fcenter  Q        Boost/Cut(dB)  Mode
  i15 0    1    10000   .2          12             1
  i15 +    .    5000    .2          12             1
  i15 .    .    1000    .707       -12             2
  i15 .    .    5000    .1         -12             0
  e

Author

Hans Mikelson
December, 1998 (New in Csound version 3.50)


Use Non-Frames Version Previous Page Next Page
Signal Modifiers: Specialized Filters