lorisampsplit
lorisampsplit Split partials of a Loris analysis into two sets of partials based on time-varying partial amplitudes.
Syntax
lorisampsplit isrcidx, istoreidx1, istoreidx2, kLowAmp, kHighAmp [, iRollOff ]
Description
Partials with amplitudes between kLowAmp and kHighAmp are placed in istoreidx1 while the remaining partials are placed in istoreidx2. iRollOff allows the user to specify a crossfade range between the boundaries of istoreidx1 and istoreidx2. This is useful for preventing clicks if kLowAmp and kHighAmp are time-varying.Initialization
isrcidx is an integer label that identifies the stored set of SDIF partials that are used. Use lorisread to import partials from an SDIF file, store them in memory and assign a label.
istoreidx1, istoreidx2 are integer labels where the partial data resulting from this opcode will be stored. These labels may be subsequently used with any other loris opcode for further transformation or resynthesis with lorisplay. if istoreidx1/istoreidx2 and isrcidx are identical then the original set of partial data is overwritten.
iRollOff specifies the size of the raw-amplitude crossfade between partials of istoreidx1 and istoreidx2. See illustration. iRollOff cannot be greater than (kHighAmp-kLowAmp)/2.
Performance
kLowAmp is the partial amplitude which forms the lower boundary of istoreidx1.
kHighAmp is the partial amplitude which forms the upper boundary of istoreidx1.
Credits
The Loris unit generators were written by Kelly Fitz (loris@cerlsoundgroup.org). It is patterned after a prototype implementation of the lorisplay unit generator written by Corbin Champion, and based on the method of Bandwidth-Enhanced Additive Synthesis and on the sound morphing algorithms implemented in the Loris library for sound modeling and manipulation. The opcodes were further adapted as a plugin for Csound 5 by Michael Gogins. Ben Hackbarth (hackbarth@ucsd.edu) wrote the Extended Loris Opcodes.