Resynthesizes information from an ATS file, with transformations.
atsbuffer |
The buffer number that contains the AtsFile information. |
numPartials |
The number of partials to synthesize. |
partialStart |
The partial in the analysis to start the synthesis on. Partial 0 is the first partial. |
partialSkip |
An integer that indicates the increment from partialStart of which partials to synthesize. |
filePointer |
A value (between 0 and 1) that indicates which part of the file to synthesize. Accepts ugens or a static value. |
sinePct |
A scaler on the sinusoidal portion of the resynthesis. |
noisePct |
A scaler on the noise portion of the resynthesis. |
freqMul |
A multiplier on the sinusoidal frequency information. |
freqAdd |
A value to add to frequency information. |
numBands |
The number of critical bands (noise) to synthesize. There are 25 critical bands. |
bandStart |
The critical band to start resynthesis on. Partial 0 is the first band. |
bandSkip |
An integer that indicates the increment from bandStart of which bands to synthesize. |
mul | |
add |
s.boot;
// see the entry on AtsFile to learn how to create an ats file
a = AtsFile.new("path/to/file.ats").load;
( //play just the resynth, with LFSaw pointing into the file
{
AtsNoiSynth.ar(a.bufnum, a.numPartials, 1, 1,
filePointer: LFSaw.kr(a.sndDur.reciprocal, 1, 0.5, 0.5), noisePct: 1, mul: 1)
}.play(s);
);
( //play noise only, don't resynthesize sine info
{
AtsNoiSynth.ar(a.bufnum, 0, 0, 1, filePointer: LFSaw.kr(a.sndDur.reciprocal, 1, 0.5, 0.5), mul: 1)
}.play(s);
);
( //resynthesize every other noise band
{
AtsNoiSynth.ar(a.bufnum, 0, 0, 1, filePointer: LFSaw.kr(a.sndDur.reciprocal, 1, 0.5, 0.5),
numBands: 12, bandStart: 1, bandSkip: 2, mul: 10)
}.play(s);
);
( //resynthesize only the upper bands of noise
{
AtsNoiSynth.ar(a.bufnum, 0, 0, 1, filePointer: LFSaw.kr(a.sndDur.reciprocal, 1, 0.5, 0.5),
numBands: 12, bandStart: 12, bandSkip: 1, mul: 10)
}.play(s);
)