valpass — Variably reverberates an input signal with a flat frequency response.
imaxlpt -- maximum loop time for klpt
iskip (optional, default=0) -- initial disposition of delay-loop data space (cf. reson). The default value is 0.
insmps (optional, default=0) -- delay amount, as a number of samples.
krvt -- the reverberation time (defined as the time in seconds for a signal to decay to 1/1000, or 60dB down from its original amplitude).
xlpt -- variable loop time in seconds, same as ilpt in comb. Loop time can be as large as imaxlpt.
This filter reiterates input with an echo density determined by loop time xlpt. The attenuation rate is independent and is determined by krvt, the reverberation time (defined as the time in seconds for a signal to decay to 1/1000, or 60dB down from its original amplitude). Its output will begin to appear immediately.
Here is an example of the valpass opcode. Play valpass.csd
Example 1148. Example of the valpass 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 valpass.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> sr = 44100 ksmps = 32 nchnls = 2 0dbfs = 1 instr 1 krvt = 1.5 klpt line p4, p3, p5 imaxlpt = .1 a1 diskin2 "fox.wav", 1 a1 valpass a1, krvt, klpt, imaxlpt a2 valpass a1, krvt, klpt*.5, imaxlpt outs a1, a2 endin </CsInstruments> <CsScore> i 1 0 5 .01 .2 e </CsScore> </CsoundSynthesizer>
Here is another example of the valpass opcode. Play valpass-2.csd
Example 1149. Second example of the valpass opcode.
<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 valpass-2.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> sr = 44100 ksmps = 32 nchnls = 2 0dbfs = 1 giSine ftgen 0, 0, 65536, 10, 1 ;sine wave instr 1 asig diskin2 "beats.wav", 1, 0, 1 krvt line 0.01, p3, p3 ;reverb time adepth = p4 ;sine depth krate = 0.3 ;sine rate (speed) adel oscil 0.5, krate, giSine ;delay time oscillator (LFO) adel = ((adel+0.5)*adepth) ;scale and offset LFO aout valpass asig, krvt, adel*0.01, 0.5 outs aout, aout endin </CsInstruments> <CsScore> i1 0 10 1 i1 11 10 5 e </CsScore> </CsoundSynthesizer>