printk2 — Prints a new value every time a control variable changes.
inumspaces (optional, default=0) -- number of space characters printed before the value of kvar
kvar -- signal to be printed
Derived from Robin Whittle's printk, prints a new value of kvar each time kvar changes. Useful for monitoring MIDI control changes when using sliders.
|
Warning |
|---|---|
|
WARNING! Don't use this opcode with normal, continuously variant k-signals, because it can hang the computer, as the rate of printing is too fast. |
|
Here is an example of the printk2 opcode. It uses the file printk2.csd.
Example 293. Example of the printk2 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
; Audio out Audio in
-odac -iadc ;;;RT audio I/O
; For Non-realtime ouput leave only the line below:
; -o printk2.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>
; Initialize the global variables.
sr = 44100
kr = 44100
ksmps = 1
nchnls = 1
; Instrument #1.
instr 1
; Change a value linearly from 0 to 10,
; over the period defined by p3.
kval1 line 0, p3, 10
; If kval1 is greater than or equal to 5,
; then kval=2, else kval=1.
kval2 = (kval1 >= 5 ? 2 : 1)
; Print the value of kval2 when it changes.
printk2 kval2
endin
</CsInstruments>
<CsScore>
; Play Instrument #1 for 5 seconds.
i 1 0 5
e
</CsScore>
</CsoundSynthesizer>
Its output should include a line like this:
i1 1.00000
i1 2.00000