A UGen which uses zero-crossings to divide an input signal into tiny segments. It simply discards a fraction of the segments (replacing them with silence).
The technique was described in a lecture by Trevor Wishart.
===Examples===
// sine plus noise
play {
val sig = (SinOsc.ar + PinkNoise.ar) * 0.5
val mode = MouseY.kr(1, 2).roundTo(1)
WaveLoss.ar(sig, drop = MouseX.kr(0, 40), chunk = 40, mode = mode) * 0.1
}
This is a third-party UGen (MCLDUGens).
- Companion
- class
Type members
Value members
Concrete methods
- Value Params
- chunk
the number of wave segments that are grouped, so that
drop
elements from it are removed.- drop
the number of wave segments to drop in each group of size
chunk
.- in
input signal to be distorted
- mode
1
for deterministic mode, in which always the firstdrop
segments within achunk
are dropped,2
for randomized mode, wheredrop
segments at random indices within achunk
are dropped.
- Value Params
- chunk
the number of wave segments that are grouped, so that
drop
elements from it are removed.- drop
the number of wave segments to drop in each group of size
chunk
.- in
input signal to be distorted
- mode
1
for deterministic mode, in which always the firstdrop
segments within achunk
are dropped,2
for randomized mode, wheredrop
segments at random indices within achunk
are dropped.