lposcil — Read sampled sound from a table with looping and high precision.
kamp -- amplitude
kfreqratio -- multiply factor of table frequency (for example: 1 = original frequency, 1.5 = a fifth up , .5 = an octave down)
kloop -- start loop point (in samples)
kend -- end loop point (in samples)
lposcil (looping precise oscillator) allows varying at k-rate, the starting and ending point of a sample contained in a table (GEN01). This can be useful when reading a sampled loop of a wavetable, where repeat speed can be varied during the performance.
Here is an example of the lposcil opcode. It uses the file lposcil.csd.
Example 553. Example of the lposcil 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 lposcil.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> sr = 44100 ksmps = 32 nchnls = 2 0dbfs = 1 instr 1 kcps = 1.5 ; a fifth up kloop = 0 ; loop start time in samples kend = 45000 ; loop end time in samples asig lposcil 1, kcps, kloop, kend, 1 outs asig, asig endin </CsInstruments> <CsScore> ; Its table size is deferred, ; and format taken from the soundfile header. f 1 0 0 1 "drumsMlp.wav" 0 0 0 ; Play Instrument #1 for 6 seconds. ; This will loop the drum pattern several times. i 1 0 6 e </CsScore> </CsoundSynthesizer>