zkw — Writes to a zk variable at k-rate without mixing.
ksig -- value to be written to the zk location.
kndx -- points to the zk or za location to which to write.
zkw writes ksig into the zk variable specified by kndx.
Here is an example of the zkw opcode. It uses the file zkw.csd.
Example 1078. Example of the zkw 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 No messages -odac -iadc -d ;;;RT audio I/O ; For Non-realtime ouput leave only the line below: ; -o zkw.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> ; Initialize the global variables. sr = 44100 kr = 4410 ksmps = 10 nchnls = 1 ; Initialize the ZAK space. ; Create 1 a-rate variable and 1 k-rate variable. zakinit 1, 1 ; Instrument #1 -- a simple waveform. instr 1 ; Linearly vary a k-rate signal from 100 to 1,000. kline line 100, p3, 1000 ; Add the linear signal to zk variable #1. zkw kline, 1 endin ; Instrument #2 -- generates audio output. instr 2 ; Read zk variable #1. kfreq zkr 1 ; Use the value of zk variable #1 to vary ; the frequency of a sine waveform. a1 oscil 20000, kfreq, 1 ; Generate the audio output. out a1 ; Clear the zk variables, get them ready for ; another pass. zkcl 0, 1 endin </CsInstruments> <CsScore> ; Table #1, a sine wave. f 1 0 16384 10 1 ; Play Instrument #1 for two seconds. i 1 0 2 ; Play Instrument #2 for two seconds. i 2 0 2 e </CsScore> </CsoundSynthesizer>