resonk

resonk — A second-order resonant filter.

Description

A second-order resonant filter.

Syntax

kres resonk ksig, kcf, kbw [, iscl] [, iskip]

Initialization

iscl (optional, default=0) -- coded scaling factor for resonators. A value of 1 signifies a peak response factor of 1, i.e. all frequencies other than kcf are attenuated in accordance with the (normalized) response curve. A value of 2 raises the response factor so that its overall RMS value equals 1. (This intended equalization of input and output power assumes all frequencies are physically present; hence it is most applicable to white noise.) A zero value signifies no scaling of the signal, leaving that to some later adjustment (see balance). The default value is 0.

iskip (optional, default=0) -- initial disposition of internal data space. Since filtering incorporates a feedback loop of previous output, the initial status of the storage space used is significant. A zero value will clear the space; a non-zero value will allow previous information to remain. The default value is 0.

Performance

kres -- the output signal at control-rate.

ksig -- the input signal at control-rate.

kcf -- the center frequency of the filter, or frequency position of the peak response.

kbw -- bandwidth of the filter (the Hz difference between the upper and lower half-power points).

resonk is like reson except its output is at control-rate rather than audio rate.

Examples

Here is an example of the resonk opcode. It uses the file resonk.csd.

Example 899. Example of the resonk opcode.

See the sections Real-time Audio and Command Line Flags for more information on using command line flags.

<CsoundSynthesizer>
<CsOptions>
; Select audio/midi flags here according to platform
-odac      ;;;realtime audio out
;-iadc    ;;;uncomment -iadc if realtime audio input is needed too
; For Non-realtime ouput leave only the line below:
; -o resonk.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>
sr = 44100
ksmps = 32
nchnls = 2
0dbfs  = 1

gisin ftgen 0, 0, 2^10, 10, 1

instr 1

ksig	randomh	400, 1800, 150
aout	poscil	.2, 1000+ksig, gisin
	outs	aout, aout
endin

instr 2

ksig	randomh	400, 1800, 150
khp	line	1, p3, 400	;vary high-pass
ksig	resonk	ksig, khp, 50
aout	poscil	.2, 1000+ksig, gisin
	outs	aout, aout
endin

</CsInstruments>
<CsScore>
i 1 0 5
i 2 5.5 5
e
</CsScore>
</CsoundSynthesizer>


See Also

areson, aresonk, atone, atonek, port, portk, reson, tone, tonek

Credits

Author: Robin Whittle
Australia
May 1997