Emulates a stack of filters using the atone opcode.
atonex is equivalent to a filter consisting of more layers of atone with the same arguments, serially connected. Using a stack of a larger number of filters allows a sharper cutoff. They are faster than using a larger number instances in a Csound orchestra of the old opcodes, because only one initialization and k- cycle are needed at time and the audio loop falls entirely inside the cache memory of processor.
inumlayer (optional) -- number of elements in the filter stack. Default value is 4.
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
asig -- input signal
khp/ahp -- the response curve's half-power point. Half power is defined as peak power / root 2.
Examples
Here is an example of the atonex opcode. It uses the file atonex-modern.csd.
<CsoundSynthesizer><CsOptions>; Select audio/midi flags here according to platform-odac ;;;RT audio out;-iadc ;;;uncomment -iadc if RT audio input is needed too; For Non-realtime ouput leave only the line below:; -o atonex.wav -W ;;; for file output any platform</CsOptions><CsInstruments>sr=44100ksmps=32nchnls=20dbfs=1instr1; unfiltered noisesig:a=rand(0.7); white noiseouts(sig,sig)endininstr2; filtered noisesig:a=rand(0.7); white noisehp:k=line(100,p3,3000)filt:a=atonex(sig,hp,32); Clip the filtered signal's amplitude to 85 dB.a1=clip(filt,2,ampdb(85))outs(a1,a1)endin</CsInstruments><CsScore>i102i222e</CsScore></CsoundSynthesizer>
Here is an example of the atonex opcode. It uses the file atonex.csd.
<CsoundSynthesizer><CsOptions>; Select audio/midi flags here according to platform-odac ;;;RT audio out;-iadc ;;;uncomment -iadc if RT audio input is needed too; For Non-realtime ouput leave only the line below:; -o atonex.wav -W ;;; for file output any platform</CsOptions><CsInstruments>sr=44100ksmps=32nchnls=20dbfs=1instr1; unfiltered noiseasigrand0.7; white noiseoutsasig,asigendininstr2; filtered noiseasigrand0.7khpline100,p3,3000afiltatonexasig,khp,32; Clip the filtered signal's amplitude to 85 dB.a1clipafilt,2,ampdb(85)outsa1,a1endin</CsInstruments><CsScore>i102i222e</CsScore></CsoundSynthesizer>