wguide2

wguide2 — A model of beaten plate consisting of two parallel delay-lines and two first-order lowpass filters.

Description

A model of beaten plate consisting of two parallel delay-lines and two first-order lowpass filters.

Syntax

ares wguide2 asig, xfreq1, xfreq2, kcutoff1, kcutoff2, \
      kfeedback1, kfeedback2

Performance

asig -- the input of excitation noise

xfreq1, xfreq2 -- the frequency (i.e. the inverse of delay time) Changed to x-rate in Csound version 3.59.

kcutoff1, kcutoff2 -- the filter cutoff frequency in Hz.

kfeedback1, kfeedback2 -- the feedback factor

wguide2 is a model of beaten plate consisting of two parallel delay-lines and two first-order lowpass filters. The two feedback lines are mixed and sent to the delay again each cycle.

Implementing waveguide algorithms as opcodes, instead of orc instruments, allows the user to set kr different than sr, allowing better performance particulary when using real-time.

wguide2.

wguide2.

[Note] Note

As a rule of thumb, to avoid making wguide2 unstable, the sum of the two feedback values should be below 0.5.

Examples

Here is an example of the wguide2 opcode. Play wguide2.csd

Example 1222. Example of the wguide2 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 RT audio input is needed too
; For Non-realtime ouput leave only the line below:
; -o wguide2.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

sr = 44100
ksmps = 32
nchnls = 2
0dbfs  = 1

instr	1

aout diskin2 "beats.wav", 1, 0, 1				;in signal
afreq1 line 100, p3, 2000						
afreq2 line 1200, p3, p4					;vary second frequency in the score	
kcutoff1   = 3000
kcutoff2   = 1500
kfeedback1 = 0.25						;the sum of the two feedback
kfeedback2 = 0.25						;values should not exceed  0.5
asig wguide2 aout, afreq1, afreq2, kcutoff1, kcutoff2, kfeedback1, kfeedback2
asig dcblock2 asig						;get rid of DC
      outs asig, asig 
      
endin
</CsInstruments>
<CsScore>
i 1 0 8 1200	;freqency of afreq2 remains the same
i 1 9 8 100	;freqency of afreq2 gets lower
e
</CsScore>
</CsoundSynthesizer>


See Also

wguide1

Credits

Author: Gabriel Maldonado
Italy
October 1998

New in Csound version 3.49