Skip to content

lposcil3

Read sampled sound (mono or stereo) from a table, with looping, and high precision.

lposcil3 uses cubic interpolation.

Syntax

ares lposcil3 kamp, kfreqratio, kloop, kend, ifn [, iphs]

Initialization

ifn -- function table number

Performance

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)

lposcil3 (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.

Examples

Here is an example of the lposcil3 opcode. It uses the file lposcil3.csd.

Example of the lposcil3 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 lposcil3.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 line 45000, p3, 10000      ; vary loop end time (in samples)

asig lposcil3 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>

See also

Sample Playback

Credits

Author: Gabriel Maldonado
Italy

New in Csound version 3.52