Implementation of second-order high-pass Butterworth filter. This opcode can also be written as buthp.
These filters are Butterworth second-order IIR filters. They are slightly slower than the original filters in Csound, but they offer an almost flat passband and very good precision and stopband attenuation.
asig -- Input signal to be filtered.
kfreq -- Cutoff or center frequency for each of the filters.
Here is an example of the butterhp opcode. It uses the files butterhp.orc and butterhp.sco.
Example 1. Example of the butterhp opcode.
/* butterhp.orc */
; Initialize the global variables.
sr = 22050
kr = 2205
ksmps = 10
nchnls = 1
; Instrument #1 - an unfiltered noise waveform.
instr 1
; White noise signal
asig rand 22050
out asig
endin
; Instrument #2 - a filtered noise waveform.
instr 2
; White noise signal
asig rand 22050
; Filter it, passing frequencies above 250 Hz.
ahp butterhp asig, 250
out ahp
endin
/* butterhp.orc */
/* butterhp.sco */
; Play Instrument #1 for two seconds.
i 1 0 2
; Play Instrument #2 for two seconds.
i 2 2 2
e
/* butterhp.sco */