converted all ugly paths to FluidFilesPath

nix
Ted Moore 4 years ago
parent 276422f257
commit f4d61c4462

@ -99,7 +99,7 @@ FluidBufOnsetSlice.process(s,~source_buf,indices:~source_indices_buf,metric:9,th
( (
// ============= 5. LOAD THE FILE =================== // ============= 5. LOAD THE FILE ===================
~target_path = File.realpath(FluidBufPitch.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"; ~target_path = FluidFilesPath("Nicol-LoopE-M.wav");
~target_buf = Buffer.read(s,~target_path); ~target_buf = Buffer.read(s,~target_path);
) )
@ -285,4 +285,4 @@ Routine{
}; };
}); });
}.play; }.play;
) )

@ -3,7 +3,7 @@
s.waitForBoot{ s.waitForBoot{
Task{ Task{
var buf = Buffer.read(s,File.realpath(FluidBufPitch.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); var buf = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
var slicepoints = Buffer(s); // FluidBufAmpSlice will write into this buffer the samples at which slices are detected. var slicepoints = Buffer(s); // FluidBufAmpSlice will write into this buffer the samples at which slices are detected.
var features_buf = Buffer(s); // a buffer for writing the analysis from FluidSpectralShape into var features_buf = Buffer(s); // a buffer for writing the analysis from FluidSpectralShape into
var stats_buf = Buffer(s); // a buffer for writing the statistic analyses into var stats_buf = Buffer(s); // a buffer for writing the statistic analyses into
@ -130,4 +130,4 @@ s.waitForBoot{
}); });
}.play(AppClock); }.play(AppClock);
} }
) )

@ -5,7 +5,7 @@ Useful for separating the stable, pitched components of a sound from the rest.
*/ */
// sines in L, residual in R // sines in L, residual in R
~buf = Buffer.read(s,File.realpath(FluidSines.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-SynthTwoVoices-M.wav"); ~buf = Buffer.read(s,FluidFilesPath("Tremblay-AaS-SynthTwoVoices-M.wav"));
( (
y = { y = {
@ -17,7 +17,7 @@ y = {
) )
// isolate just sines or residual; // isolate just sines or residual;
~song = Buffer.readChannel(s,File.realpath(FluidSines.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-beatRemember.wav",channels:[0]); ~song = Buffer.readChannel(s,FluidFilesPath("Tremblay-beatRemember.wav"),channels:[0]);
( (
y = { y = {
@ -37,7 +37,7 @@ y.set(\mix,0);
y.set(\mix,1); y.set(\mix,1);
// a stereo example // a stereo example
~song = Buffer.read(s,File.realpath(FluidSines.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-beatRemember.wav"); ~song = Buffer.read(s,FluidFilesPath("Tremblay-beatRemember.wav"));
( (
y = { y = {
@ -85,7 +85,7 @@ FluidHPSS separates a sound into "harmonic" and "percussive" components. This ca
*/ */
//load a soundfile to play //load a soundfile to play
~buf = Buffer.readChannel(s,File.realpath(FluidSines.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-beatRemember.wav",channels:[0]); ~buf = Buffer.readChannel(s,FluidFilesPath("Tremblay-beatRemember.wav"),channels:[0]);
// run with basic parameters (left is harmonic, right is percussive) // run with basic parameters (left is harmonic, right is percussive)
{FluidHPSS.ar(PlayBuf.ar(1,~buf,loop:1))}.play {FluidHPSS.ar(PlayBuf.ar(1,~buf,loop:1))}.play
@ -99,7 +99,7 @@ FluidHPSS separates a sound into "harmonic" and "percussive" components. This ca
{FluidHPSS.ar(PlayBuf.ar(1,~buf,loop:1),maskingMode:2)[2].dup}.play {FluidHPSS.ar(PlayBuf.ar(1,~buf,loop:1),maskingMode:2)[2].dup}.play
// do the above again with another sound file // do the above again with another sound file
~buf = Buffer.read(s,File.realpath(FluidSines.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); ~buf = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
/* =================== FluidTransients ========================= /* =================== FluidTransients =========================
FluidTransients can separate out transient from residual material. Transient is quite a fuzzy term depending on who you are talking to. Producers might use it to talk about any sound that is bright, loud or percussive while an engineer could be referring to a short, full spectrum change in the signal. FluidTransients can separate out transient from residual material. Transient is quite a fuzzy term depending on who you are talking to. Producers might use it to talk about any sound that is bright, loud or percussive while an engineer could be referring to a short, full spectrum change in the signal.
@ -108,7 +108,7 @@ This algorithm is based on a "de-clicking" audio restoration approach.
*/ */
//load some buffer //load some buffer
~buf = Buffer.read(s,File.realpath(FluidTransients.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-SynthTwoVoices-M.wav"); ~buf = Buffer.read(s,FluidFilesPath("Tremblay-AaS-SynthTwoVoices-M.wav"));
// basic parameters // basic parameters
{FluidTransients.ar(PlayBuf.ar(1, ~buf, loop:1))}.play {FluidTransients.ar(PlayBuf.ar(1, ~buf, loop:1))}.play
@ -119,11 +119,11 @@ This algorithm is based on a "de-clicking" audio restoration approach.
// =================== Audio Transport ========================= // =================== Audio Transport =========================
//load 2 files //load 2 files
( (
b = Buffer.read(s,File.realpath(FluidAudioTransport.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-CEL-GlitchyMusicBoxMelo.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-CEL-GlitchyMusicBoxMelo.wav"));
c = Buffer.read(s,File.realpath(FluidAudioTransport.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-CF-ChurchBells.wav"); c = Buffer.read(s,FluidFilesPath("Tremblay-CF-ChurchBells.wav"));
) )
//listen to them //listen to them
b.play b.play
c.play c.play
//stereo cross! //stereo cross!
{FluidAudioTransport.ar(PlayBuf.ar(2,b,loop: 1),PlayBuf.ar(2,c,loop: 1),MouseX.kr())}.play; {FluidAudioTransport.ar(PlayBuf.ar(2,b,loop: 1),PlayBuf.ar(2,c,loop: 1),MouseX.kr())}.play;

@ -13,7 +13,7 @@
}); });
}; };
~load_folder.(File.realpath(FluidBufPitch.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/",{ ~load_folder.(FluidFilesPath(),{
arg buffer; arg buffer;
"mono buffer: %".format(buffer).postln; "mono buffer: %".format(buffer).postln;
~buffer = buffer; ~buffer = buffer;
@ -401,4 +401,4 @@ Routine{
}) })
}); });
}.play; }.play;
) )

@ -29,7 +29,7 @@ do the whole process in one go!
}; };
// this will load all the audio files that are included with the flucoma toolkit, but you can put your own path here: // this will load all the audio files that are included with the flucoma toolkit, but you can put your own path here:
~load_folder.(File.realpath(FluidBufPitch.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/",{ ~load_folder.(FluidFilesPath(),{
arg buffer; arg buffer;
"mono buffer: %".format(buffer).postln; "mono buffer: %".format(buffer).postln;
~buffer = buffer; // save the buffer to a global variable so we can use it later ~buffer = buffer; // save the buffer to a global variable so we can use it later
@ -274,7 +274,7 @@ FluidWaveform(~buffer,~indices); // it may also be way too many slices to see pr
// ============== do all of it in one go ======================= // ============== do all of it in one go =======================
( (
var path = File.realpath(FluidBufPitch.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/"; var path = FluidFilesPath();
~load_folder.(path,{ ~load_folder.(path,{
arg buffer0; arg buffer0;
~slice.(buffer0,{ ~slice.(buffer0,{
@ -292,4 +292,4 @@ var path = File.realpath(FluidBufPitch.class.filenameSymbol).dirname.withTrailin
}); });
}); });
}); });
) )

@ -5,7 +5,7 @@ s.options.device_("Fireface UC Mac (24006457)");
// decompose! // decompose!
s.waitForBoot{ s.waitForBoot{
Routine{ Routine{
var drums = Buffer.read(s,File.realpath(FluidBufNMF.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); var drums = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
var resynth = Buffer(s); var resynth = Buffer(s);
var n_components = 2; var n_components = 2;
FluidBufNMF.process(s,drums,resynth:resynth,components:n_components).wait; FluidBufNMF.process(s,drums,resynth:resynth,components:n_components).wait;
@ -42,7 +42,7 @@ s.waitForBoot{
( (
Routine{ Routine{
var n_components = 2; var n_components = 2;
var drums = Buffer.read(s,File.realpath(FluidBufNMF.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); var drums = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
~bases = Buffer(s); ~bases = Buffer(s);
~activations = Buffer(s); ~activations = Buffer(s);
~resynth = Buffer(s); ~resynth = Buffer(s);
@ -57,9 +57,9 @@ Routine{
// base as a filter // base as a filter
( (
Routine{ Routine{
var drums = Buffer.read(s,File.realpath(FluidBufNMF.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); var drums = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
var voice = Buffer.read(s,File.realpath(FluidBufNMF.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-VoiceQC-B2K-M.wav"); var voice = Buffer.read(s,FluidFilesPath("Tremblay-AaS-VoiceQC-B2K-M.wav"));
var song = Buffer.read(s,File.realpath(FluidBufNMF.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-beatRemember.wav"); var song = Buffer.read(s,FluidFilesPath("Tremblay-beatRemember.wav"));
s.sync; s.sync;
"drums through the drums bases as filters".postln; "drums through the drums bases as filters".postln;
@ -112,7 +112,7 @@ Routine{
( (
Task{ Task{
var dog = Buffer.readChannel(s,File.realpath(FluidBufNMF.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-BaB-SoundscapeGolcarWithDog.wav",channels:[0]); var dog = Buffer.readChannel(s,FluidFilesPath("Tremblay-BaB-SoundscapeGolcarWithDog.wav"),channels:[0]);
var bases = Buffer(s); var bases = Buffer(s);
var match = [0,0]; var match = [0,0];
var win = Window("FluidNMFMatch",Rect(0,0,200,400)); var win = Window("FluidNMFMatch",Rect(0,0,200,400));
@ -147,4 +147,4 @@ Task{
sig; sig;
}.play; }.play;
}.play(AppClock); }.play(AppClock);
) )

@ -8,7 +8,7 @@ load a part of a sound that has 3 clear components:
*/ */
( (
~src = Buffer.read(s,File.realpath(FluidBufPitch.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-ASWINE-ScratchySynth-M.wav");//,42250,44100); ~src = Buffer.read(s,FluidFilesPath("Tremblay-ASWINE-ScratchySynth-M.wav"));//,42250,44100);
) )
// listen // listen

@ -2,7 +2,7 @@
// load a stereo buffer and initialise the many destinations // load a stereo buffer and initialise the many destinations
( (
b = Buffer.read(s,File.realpath(FluidBufCompose.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-SA-UprightPianoPedalWide.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-SA-UprightPianoPedalWide.wav"));
c = Buffer.new(s); c = Buffer.new(s);
d = Buffer.new(s); d = Buffer.new(s);
e = Buffer.new(s); e = Buffer.new(s);
@ -68,4 +68,4 @@ FluidBufCompose.process(s,e, gain: -3.0.dbamp * -1.0, destination: f, destStartC
f.play; f.play;
// compare with the original // compare with the original
b.play; b.play;

@ -3,7 +3,7 @@
~low = Buffer.sendCollection(s, (Signal.sineFill(4410, Array.fill(3,0) ++ 1))); ~low = Buffer.sendCollection(s, (Signal.sineFill(4410, Array.fill(3,0) ++ 1)));
~mid = Buffer.sendCollection(s, (Signal.sineFill(4410, Array.fill(12,0) ++ 1))); ~mid = Buffer.sendCollection(s, (Signal.sineFill(4410, Array.fill(12,0) ++ 1)));
~high = Buffer.sendCollection(s, (Signal.sineFill(4410, Array.fill(48,0) ++ 1))); ~high = Buffer.sendCollection(s, (Signal.sineFill(4410, Array.fill(48,0) ++ 1)));
~piano = Buffer.read(s,File.realpath(FluidBufCompose.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-SA-UprightPianoPedalWide.wav",0,8820); ~piano = Buffer.read(s,FluidFilesPath("Tremblay-SA-UprightPianoPedalWide.wav"),0,8820);
) )
// draw the buffers to see what happened // draw the buffers to see what happened

@ -1,6 +1,6 @@
//load a part of a sound that has 3 clear components: a clear pitch component to start, a noisy pitchless ending and DC offset silence on both ends //load a part of a sound that has 3 clear components: a clear pitch component to start, a noisy pitchless ending and DC offset silence on both ends
( (
b = Buffer.read(s,File.realpath(FluidBufPitch.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-ASWINE-ScratchySynth-M.wav",42250,44100); b = Buffer.read(s,FluidFilesPath("Tremblay-ASWINE-ScratchySynth-M.wav"),42250,44100);
~pitches = Buffer(s); ~pitches = Buffer(s);
~stats = Buffer(s); ~stats = Buffer(s);
~loud = Buffer(s); ~loud = Buffer(s);

@ -4,7 +4,7 @@ s.reboot;
~raw = FluidDataSet(s); ~raw = FluidDataSet(s);
~norm = FluidDataSet(s); ~norm = FluidDataSet(s);
~retrieved = FluidDataSet(s); ~retrieved = FluidDataSet(s);
~audio = Buffer.read(s,File.realpath(FluidBufMelBands.class.filenameSymbol).dirname +/+ "../AudioFiles/Tremblay-ASWINE-ScratchySynth-M.wav"); ~audio = Buffer.read(s,FluidFilesPath("Tremblay-ASWINE-ScratchySynth-M.wav"));
~melfeatures = Buffer.new(s); ~melfeatures = Buffer.new(s);
~stats = Buffer.alloc(s, 7, 40); ~stats = Buffer.alloc(s, 7, 40);
~datapoint = Buffer.alloc(s, 40); ~datapoint = Buffer.alloc(s, 40);
@ -158,4 +158,4 @@ w.drawFunc = {
}; };
w.refresh; w.refresh;
w.front; w.front;
) )

@ -8,7 +8,7 @@ s.reboot
b = Buffer.alloc(s,s.sampleRate * 2); b = Buffer.alloc(s,s.sampleRate * 2);
c = Buffer.new(s,0,3); c = Buffer.new(s,0,3);
d = Buffer.new(s,0,3); d = Buffer.new(s,0,3);
e = Buffer.read(s,File.realpath(FluidBufNMF.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); e = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
g = Bus.audio(s,1); g = Bus.audio(s,1);
h = Buffer.loadCollection(s, Signal.rectWindow(22491).fade(0,440).fade(22049,22489,1,0).put(22490,0)); h = Buffer.loadCollection(s, Signal.rectWindow(22491).fade(0,440).fade(22049,22489,1,0).put(22490,0));

@ -2,7 +2,7 @@
//set some buffers //set some buffers
( (
b = Buffer.read(s,File.realpath(FluidNMFMatch.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-BaB-SoundscapeGolcarWithDog.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-BaB-SoundscapeGolcarWithDog.wav"));
c = Buffer.new(s); c = Buffer.new(s);
x = Buffer.new(s); x = Buffer.new(s);
e = Buffer.new(s); e = Buffer.new(s);
@ -71,4 +71,4 @@ e.plot;
birds = SinOsc.ar(1000,0,Lag.kr(blips[1],0.05,0.05)); birds = SinOsc.ar(1000,0,Lag.kr(blips[1],0.05,0.05));
[dogs, birds] + source; [dogs, birds] + source;
}.play; }.play;
) )

@ -2,8 +2,8 @@
//load in the sound in and a pretrained basis //load in the sound in and a pretrained basis
( (
b = Buffer.read(s,File.realpath(FluidNMFMatch.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-SA-UprightPianoPedalWide.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-SA-UprightPianoPedalWide.wav"));
c = Buffer.read(s,File.realpath(FluidNMFMatch.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/filters/piano-dicts.wav"); c = Buffer.read(s,FluidFilesPath("filters/piano-dicts.wav"));
) )
b.play b.play
c.query c.query
@ -48,4 +48,4 @@ c.query
// removes the silent and spits out the indicies as midinote number // removes the silent and spits out the indicies as midinote number
data.collect({arg item, i; if (item > 0.01, {i + 21})}).reject({arg item; item.isNil}).postln; data.collect({arg item, i; if (item > 0.01, {i + 21})}).reject({arg item; item.isNil}).postln;
}, '/activations'); }, '/activations');
) )

@ -1,5 +1,5 @@
( (
b = Buffer.read(s,File.realpath(FluidBufNoveltySlice.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); b = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
c = Buffer.new(s); c = Buffer.new(s);
) )
@ -61,4 +61,4 @@ Routine{
} }
); );
}.play }.play
) )

@ -125,7 +125,7 @@ code::
) )
//drum slicing, many ways //drum slicing, many ways
//load a buffer //load a buffer
b = Buffer.read(s,File.realpath(FluidAmpGate.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); b = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
//have fun with a gate (explore lookahead and lookback, but correct for latency, which will be the greatest of the lookahead and lookback) //have fun with a gate (explore lookahead and lookback, but correct for latency, which will be the greatest of the lookahead and lookback)
( (
{var env, source = PlayBuf.ar(1,b); {var env, source = PlayBuf.ar(1,b);

@ -76,7 +76,7 @@ code::
) )
//quick drum onsets //quick drum onsets
//load a buffer //load a buffer
b = Buffer.read(s,File.realpath(FluidAmpSlice.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); b = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
( (
{var env, source = PlayBuf.ar(1,b); {var env, source = PlayBuf.ar(1,b);
env = FluidAmpSlice.ar(source,fastRampUp: 10,fastRampDown: 2205,slowRampUp: 4410,slowRampDown: 4410,onThreshold: 10,offThreshold: 5,floor: -40,minSliceLength: 4410,highPassFreq: 20); env = FluidAmpSlice.ar(source,fastRampUp: 10,fastRampDown: 2205,slowRampUp: 4410,slowRampDown: 4410,onThreshold: 10,offThreshold: 5,floor: -40,minSliceLength: 4410,highPassFreq: 20);

@ -56,8 +56,8 @@ code::
//richer with complex spectra //richer with complex spectra
//load 2 files //load 2 files
( (
b = Buffer.read(s,File.realpath(FluidAudioTransport.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-CEL-GlitchyMusicBoxMelo.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-CEL-GlitchyMusicBoxMelo.wav"));
c = Buffer.read(s,File.realpath(FluidAudioTransport.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-CF-ChurchBells.wav"); c = Buffer.read(s,FluidFilesPath("Tremblay-CF-ChurchBells.wav"));
) )
//listen to them //listen to them
b.play b.play

@ -141,7 +141,7 @@ STRONG::A musical example.::
CODE:: CODE::
//load a buffer //load a buffer
( (
b = Buffer.read(s, File.realpath(FluidBufAmpGate.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); b = Buffer.read(s, FluidFilesPath("Nicol-LoopE-M.wav"));
c = Buffer.new(s); c = Buffer.new(s);
) )

@ -108,7 +108,7 @@ STRONG::A musical example.::
CODE:: CODE::
//load a buffer //load a buffer
( (
b = Buffer.read(s,File.realpath(FluidBufAmpSlice.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); b = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
c = Buffer.new(s); c = Buffer.new(s);
) )

@ -95,8 +95,8 @@ d.play
// more interesting sources: two cardboard bowing gestures // more interesting sources: two cardboard bowing gestures
( (
b = Buffer.read(s,File.realpath(FluidBufAudioTransport.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Green-Box641.wav"); b = Buffer.read(s,FluidFilesPath("Green-Box641.wav"));
c = Buffer.read(s,File.realpath(FluidBufAudioTransport.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Green-Box639.wav"); c = Buffer.read(s,FluidFilesPath("Green-Box639.wav"));
d = Buffer.new d = Buffer.new
) )

@ -328,7 +328,7 @@ EXAMPLES::
code:: code::
// create some buffers // create some buffers
( (
b = Buffer.read(s,File.realpath(FluidBufChroma.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-SlideChoirAdd-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-SlideChoirAdd-M.wav"));
c = Buffer.new(s); c = Buffer.new(s);
) )
@ -351,8 +351,8 @@ CODE::
// load two very different files // load two very different files
( (
b = Buffer.read(s,File.realpath(FluidBufChroma.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-SA-UprightPianoPedalWide.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-SA-UprightPianoPedalWide.wav"));
c = Buffer.read(s,File.realpath(FluidBufChroma.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-AcousticStrums-M.wav"); c = Buffer.read(s,FluidFilesPath("Tremblay-AaS-AcousticStrums-M.wav"));
) )
// composite one on left one on right as test signals // composite one on left one on right as test signals

@ -64,8 +64,8 @@ EXAMPLES::
code:: code::
// load some buffers // load some buffers
( (
b = Buffer.read(s,File.realpath(FluidBufCompose.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-SynthTwoVoices-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-AaS-SynthTwoVoices-M.wav"));
c = Buffer.read(s,File.realpath(FluidBufCompose.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-SA-UprightPianoPedalWide.wav"); c = Buffer.read(s,FluidFilesPath("Tremblay-SA-UprightPianoPedalWide.wav"));
d = Buffer.new(s); d = Buffer.new(s);
) )

@ -71,7 +71,7 @@ code::
//FluidBufPitch is useful to illustrate the effect of this, because the pitch and confidence values are easily distinguishable //FluidBufPitch is useful to illustrate the effect of this, because the pitch and confidence values are easily distinguishable
( (
~path = File.realpath(FluidLoadFolder.class.filenameSymbol).dirname +/+ "../AudioFiles"; ~path = FluidFilesPath();
~randomsoundfile = SoundFile.collect(~path +/+ '*').choose; ~randomsoundfile = SoundFile.collect(~path +/+ '*').choose;
b = Buffer.read(s,~randomsoundfile.path,action:{"Sound Loaded".postln}); b = Buffer.read(s,~randomsoundfile.path,action:{"Sound Loaded".postln});
~pitchdata = Buffer.new; ~pitchdata = Buffer.new;

@ -120,7 +120,7 @@ EXAMPLES::
code:: code::
//load buffers //load buffers
( (
b = Buffer.read(s,File.realpath(FluidBufHPSS.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-SynthTwoVoices-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-AaS-SynthTwoVoices-M.wav"));
c = Buffer.new(s); c = Buffer.new(s);
d = Buffer.new(s); d = Buffer.new(s);
e = Buffer.new(s); e = Buffer.new(s);
@ -170,8 +170,8 @@ CODE::
// load two very different files // load two very different files
( (
b = Buffer.read(s,File.realpath(FluidBufHPSS.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-SA-UprightPianoPedalWide.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-SA-UprightPianoPedalWide.wav"));
c = Buffer.read(s,File.realpath(FluidBufHPSS.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-AcousticStrums-M.wav"); c = Buffer.read(s,FluidFilesPath("Tremblay-AaS-AcousticStrums-M.wav"));
) )
// composite one on left one on right as test signals // composite one on left one on right as test signals

@ -99,8 +99,8 @@ CODE::
// load two very different files // load two very different files
( (
b = Buffer.read(s,File.realpath(FluidBufLoudness.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-SA-UprightPianoPedalWide.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-SA-UprightPianoPedalWide.wav"));
c = Buffer.read(s,File.realpath(FluidBufLoudness.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-AcousticStrums-M.wav"); c = Buffer.read(s,FluidFilesPath("Tremblay-AaS-AcousticStrums-M.wav"));
) )
// composite one on left one on right as test signals // composite one on left one on right as test signals

@ -78,7 +78,7 @@ EXAMPLES::
code:: code::
// create some buffers // create some buffers
( (
b = Buffer.read(s,File.realpath(FluidBufMFCC.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); b = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
c = Buffer.new(s); c = Buffer.new(s);
) )
@ -101,8 +101,8 @@ CODE::
// load two very different files // load two very different files
( (
b = Buffer.read(s,File.realpath(FluidBufMFCC.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-SA-UprightPianoPedalWide.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-SA-UprightPianoPedalWide.wav"));
c = Buffer.read(s,File.realpath(FluidBufMFCC.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-AcousticStrums-M.wav"); c = Buffer.read(s,FluidFilesPath("Tremblay-AaS-AcousticStrums-M.wav"));
) )
// composite one on left one on right as test signals // composite one on left one on right as test signals

@ -79,7 +79,7 @@ EXAMPLES::
code:: code::
// create some buffers // create some buffers
( (
b = Buffer.read(s,File.realpath(FluidBufMelBands.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); b = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
c = Buffer.new(s); c = Buffer.new(s);
) )
@ -102,8 +102,8 @@ CODE::
// load two very different files // load two very different files
( (
b = Buffer.read(s,File.realpath(FluidBufMelBands.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-SA-UprightPianoPedalWide.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-SA-UprightPianoPedalWide.wav"));
c = Buffer.read(s,File.realpath(FluidBufMelBands.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-AcousticStrums-M.wav"); c = Buffer.read(s,FluidFilesPath("Tremblay-AaS-AcousticStrums-M.wav"));
) )
// composite one on left one on right as test signals // composite one on left one on right as test signals

@ -472,7 +472,7 @@ CODE::
//set some buffers //set some buffers
( (
b = Buffer.read(s,File.realpath(FluidBufNMF.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-AcousticStrums-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-AaS-AcousticStrums-M.wav"));
~originalNMF = Buffer.new(s); ~originalNMF = Buffer.new(s);
~bases = Buffer.new(s); ~bases = Buffer.new(s);

@ -67,7 +67,7 @@ EXAMPLES::
code:: code::
~path = File.realpath(FluidBufNMFCross.class.filenameSymbol).dirname.withTrailingSlash +/+ "../AudioFiles/" ~path = FluidFilesPath();
b = Buffer.read(s,~path+/+"Nicol-LoopE-M.wav") b = Buffer.read(s,~path+/+"Nicol-LoopE-M.wav")
t = Buffer.read(s,~path+/+"Tremblay-SA-UprightPianoPedalWide.wav") t = Buffer.read(s,~path+/+"Tremblay-SA-UprightPianoPedalWide.wav")
o = Buffer.new o = Buffer.new
@ -91,4 +91,3 @@ Routine{
) )
o.play o.play
:: ::

@ -70,7 +70,7 @@ EXAMPLES::
code:: code::
( (
b = Buffer.read(s,File.realpath(FluidBufNNDSVD.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); b = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
~bases = Buffer.new(s); ~bases = Buffer.new(s);
~activations = Buffer.new(s); ~activations = Buffer.new(s);
~resynth = Buffer.new(s); ~resynth = Buffer.new(s);

@ -82,7 +82,7 @@ EXAMPLES::
code:: code::
// load some buffers // load some buffers
( (
b = Buffer.read(s,File.realpath(FluidBufNoveltySlice.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-AcousticStrums-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-AaS-AcousticStrums-M.wav"));
c = Buffer.new(s); c = Buffer.new(s);
) )
@ -118,7 +118,7 @@ STRONG::Examples of the impact of the filterSize::
CODE:: CODE::
// load some buffers // load some buffers
( (
b = Buffer.read(s,File.realpath(FluidBufNoveltySlice.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-AcousticStrums-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-AaS-AcousticStrums-M.wav"));
c = Buffer.new(s); c = Buffer.new(s);
) )

@ -87,7 +87,7 @@ EXAMPLES::
CODE:: CODE::
( (
//prep some buffers //prep some buffers
b = Buffer.read(s,File.realpath(FluidBufOnsetSlice.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); b = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
c = Buffer.new(s); c = Buffer.new(s);
) )

@ -112,8 +112,8 @@ CODE::
// load two very different files // load two very different files
( (
b = Buffer.read(s,File.realpath(FluidBufPitch.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-SA-UprightPianoPedalWide.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-SA-UprightPianoPedalWide.wav"));
c = Buffer.read(s,File.realpath(FluidBufPitch.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-AcousticStrums-M.wav"); c = Buffer.read(s,FluidFilesPath("Tremblay-AaS-AcousticStrums-M.wav"));
) )
// composite one on left one on right as test signals // composite one on left one on right as test signals
@ -140,7 +140,7 @@ STRONG::A musical example.::
code:: code::
// create some buffers // create some buffers
( (
b = Buffer.read(s,File.realpath(FluidBufPitch.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-ASWINE-ScratchySynth-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-ASWINE-ScratchySynth-M.wav"));
c = Buffer.new(s); c = Buffer.new(s);
) )

@ -70,7 +70,7 @@ EXAMPLES::
code:: code::
s.reboot s.reboot
( (
b = Buffer.read(s,File.realpath(FluidBufSTFT.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); b = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
m = Buffer.new; m = Buffer.new;
p = Buffer.new; p = Buffer.new;
r = Buffer.new; r = Buffer.new;

@ -95,7 +95,7 @@ EXAMPLES::
code:: code::
// create some buffers // create some buffers
( (
b = Buffer.read(s,File.realpath(FluidBufSines.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-SynthTwoVoices-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-AaS-SynthTwoVoices-M.wav"));
c = Buffer.new(s); c = Buffer.new(s);
d = Buffer.new(s); d = Buffer.new(s);
) )
@ -122,8 +122,8 @@ CODE::
// load two very different files // load two very different files
( (
b = Buffer.read(s,File.realpath(FluidBufSines.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-SA-UprightPianoPedalWide.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-SA-UprightPianoPedalWide.wav"));
c = Buffer.read(s,File.realpath(FluidBufSines.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-AcousticStrums-M.wav"); c = Buffer.read(s,FluidFilesPath("Tremblay-AaS-AcousticStrums-M.wav"));
) )
// composite one on left one on right as test signals // composite one on left one on right as test signals

@ -94,7 +94,7 @@ EXAMPLES::
code:: code::
// create some buffers // create some buffers
( (
b = Buffer.read(s,File.realpath(FluidBufSpectralShape.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); b = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
c = Buffer.new(s); c = Buffer.new(s);
) )
@ -117,8 +117,8 @@ CODE::
// load two very different files // load two very different files
( (
b = Buffer.read(s,File.realpath(FluidBufSpectralShape.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-SA-UprightPianoPedalWide.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-SA-UprightPianoPedalWide.wav"));
c = Buffer.read(s,File.realpath(FluidBufSpectralShape.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-AcousticStrums-M.wav"); c = Buffer.read(s,FluidFilesPath("Tremblay-AaS-AcousticStrums-M.wav"));
) )
// composite one on left one on right as test signals // composite one on left one on right as test signals

@ -79,7 +79,7 @@ EXAMPLES::
code:: code::
// load some buffers // load some buffers
( (
b = Buffer.read(s,File.realpath(FluidBufTransientSlice.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-SynthTwoVoices-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-AaS-SynthTwoVoices-M.wav"));
c = Buffer.new(s); c = Buffer.new(s);
) )

@ -82,7 +82,7 @@ EXAMPLES::
code:: code::
( (
b = Buffer.read(s,File.realpath(FluidBufTransients.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-SynthTwoVoices-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-AaS-SynthTwoVoices-M.wav"));
c = Buffer.new(s); c = Buffer.new(s);
d = Buffer.new(s); d = Buffer.new(s);
) )
@ -123,8 +123,8 @@ CODE::
// load two very different files // load two very different files
( (
b = Buffer.read(s,File.realpath(FluidBufTransients.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-SynthTwoVoices-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-AaS-SynthTwoVoices-M.wav"));
c = Buffer.read(s,File.realpath(FluidBufTransients.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-AcousticStrums-M.wav"); c = Buffer.read(s,FluidFilesPath("Tremblay-AaS-AcousticStrums-M.wav"));
) )
// composite one on left one on right as test signals // composite one on left one on right as test signals

@ -174,7 +174,7 @@ x = {
x.free x.free
// load a more exciting one // load a more exciting one
c = Buffer.read(s,File.realpath(FluidChroma.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-SlideChoirAdd-M.wav"); c = Buffer.read(s,FluidFilesPath("Tremblay-SlideChoirAdd-M.wav"));
// analyse with parameters to be changed // analyse with parameters to be changed
( (

@ -93,7 +93,7 @@ EXAMPLES::
CODE:: CODE::
//load a soundfile to play //load a soundfile to play
b = Buffer.read(s,File.realpath(FluidHPSS.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-SynthTwoVoices-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-AaS-SynthTwoVoices-M.wav"));
// run with basic parameters (left is harmonic, right is percussive) // run with basic parameters (left is harmonic, right is percussive)
{FluidHPSS.ar(PlayBuf.ar(1,b,loop:1))}.play {FluidHPSS.ar(PlayBuf.ar(1,b,loop:1))}.play

@ -60,7 +60,7 @@ s.reboot;
( (
// We'll load all the Fluid Corpus Manipulation audio example files // We'll load all the Fluid Corpus Manipulation audio example files
~path = File.realpath(FluidLoadFolder.class.filenameSymbol).dirname +/+ "../AudioFiles"; ~path = FluidFilesPath();
~loader = FluidLoadFolder(~path); ~loader = FluidLoadFolder(~path);

@ -62,7 +62,7 @@ code::
//Preliminaries: we want some audio, a couple of FluidDataSets, some Buffers, a FluidStandardize and a FluidMDS //Preliminaries: we want some audio, a couple of FluidDataSets, some Buffers, a FluidStandardize and a FluidMDS
( (
~audiofile = File.realpath(FluidMDS.class.filenameSymbol).dirname +/+ "../AudioFiles/Tremblay-ASWINE-ScratchySynth-M.wav"; ~audiofile = FluidFilesPath("Tremblay-ASWINE-ScratchySynth-M.wav");
~raw = FluidDataSet(s); ~raw = FluidDataSet(s);
~standardized = FluidDataSet(s); ~standardized = FluidDataSet(s);
~reduced = FluidDataSet(s); ~reduced = FluidDataSet(s);

@ -190,7 +190,7 @@ x.set(\type, 0)
x.free x.free
// load a more exciting one // load a more exciting one
c = Buffer.read(s,File.realpath(FluidMFCC.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-SynthTwoVoices-M.wav"); c = Buffer.read(s,FluidFilesPath("Tremblay-AaS-SynthTwoVoices-M.wav"));
// analyse with parameters to be changed // analyse with parameters to be changed
( (
@ -277,8 +277,7 @@ sliders = List.newClear(0);
}; };
//look in the directory for all .wav files //look in the directory for all .wav files
paths = PathName(File.realpath(FluidMFCC.class.filenameSymbol) paths = PathName(FluidFilesPath())
.dirname.withTrailingSlash ++ "../AudioFiles/")
.files.select({arg item; item.fullPath.contains(".wav")}) .files.select({arg item; item.fullPath.contains(".wav")})
.collect({arg item; item.fullPath}); .collect({arg item; item.fullPath});

@ -93,7 +93,7 @@ x = {
x.free x.free
// load a more exciting one // load a more exciting one
c = Buffer.read(s,File.realpath(FluidMelBands.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-SynthTwoVoices-M.wav"); c = Buffer.read(s,FluidFilesPath("Tremblay-AaS-SynthTwoVoices-M.wav"));
// analyse with parameters to be changed // analyse with parameters to be changed
( (
@ -132,7 +132,7 @@ CODE::
//load a source and define control bus for the resynthesis cluster //load a source and define control bus for the resynthesis cluster
( (
b = Bus.control(s,40); b = Bus.control(s,40);
c = Buffer.read(s,File.realpath(FluidMelBands.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); c = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
d = Group.new; d = Group.new;
) )
@ -173,7 +173,7 @@ d.free; x.free; b.free; c.free;
// the bus, source and group // the bus, source and group
( (
b = Bus.control(s,40); b = Bus.control(s,40);
c = Buffer.read(s,File.realpath(FluidMelBands.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); c = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
d = Group.new; d = Group.new;
) )

@ -99,7 +99,7 @@ STRONG::A guitar processor::
CODE:: CODE::
//set some buffers //set some buffers
( (
b = Buffer.read(s,File.realpath(FluidNMFMatch.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-AcousticStrums-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-AaS-AcousticStrums-M.wav"));
c = Buffer.new(s); c = Buffer.new(s);
~bases = Buffer.new(s); ~bases = Buffer.new(s);
~spectralshapes = Buffer.new(s); ~spectralshapes = Buffer.new(s);
@ -176,7 +176,7 @@ STRONG::Strange Processor::
CODE:: CODE::
//set some buffers //set some buffers
( (
b = Buffer.read(s,File.realpath(FluidNMFMatch.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); b = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
c = Buffer.alloc(s,1025,3); c = Buffer.alloc(s,1025,3);
d = Buffer.alloc(s,44100); d = Buffer.alloc(s,44100);
) )

@ -100,7 +100,7 @@ STRONG::A pick compressor::
CODE:: CODE::
//set some buffers //set some buffers
( (
b = Buffer.read(s,File.realpath(FluidNMFMatch.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-AcousticStrums-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-AaS-AcousticStrums-M.wav"));
c = Buffer.new(s); c = Buffer.new(s);
~bases = Buffer.new(s); ~bases = Buffer.new(s);
~spectralshapes = Buffer.new(s); ~spectralshapes = Buffer.new(s);
@ -186,7 +186,7 @@ z.do({|chan| FluidBufCompose.process(s, ~bases, startChan:chan, numChans: 1, des
CODE:: CODE::
//load the source and declare buffers/arrays //load the source and declare buffers/arrays
( (
b = Buffer.read(s,File.realpath(FluidNMFMatch.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-AcousticStrums-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-AaS-AcousticStrums-M.wav"));
c = Buffer.new(s); c = Buffer.new(s);
~bases = Buffer.new(s); ~bases = Buffer.new(s);
~spectralshapes = Buffer.new(s); ~spectralshapes = Buffer.new(s);

@ -53,9 +53,8 @@ code::FluidNMFMorph:: relies on preexisting NMF analyses to generate variations
code:: code::
//read some audio //read some audio
( (
~audiopath = File.realpath(FluidNMFMorph.class.filenameSymbol).dirname; ~src1 = Buffer.readChannel(s,FluidFilesPath("Nicol-LoopE-M.wav"),channels:[0]); //some drums
~src1 = Buffer.readChannel(s,~audiopath +/+ "../AudioFiles/Nicol-LoopE-M.wav",channels:[0]); //some drums ~src2 = Buffer.readChannel(s,FluidFilesPath("Tremblay-SA-UprightPianoPedalWide.wav"),channels:[0]);//some piano
~src2 = Buffer.readChannel(s,~audiopath +/+ "../AudioFiles/Tremblay-SA-UprightPianoPedalWide.wav",channels:[0]);//some piano
~src1Bases = Buffer.new; ~src1Bases = Buffer.new;
~src2Bases = Buffer.new; ~src2Bases = Buffer.new;

@ -68,7 +68,7 @@ s.boot;
//Preliminaries: we want some audio, a couple of FluidDataSets, some Buffers and a FluidNormalize //Preliminaries: we want some audio, a couple of FluidDataSets, some Buffers and a FluidNormalize
// FluidNormalize.dumpAllMethods // FluidNormalize.dumpAllMethods
( (
~audiofile = File.realpath(FluidBufPitch.class.filenameSymbol).dirname +/+ "../AudioFiles/Tremblay-ASWINE-ScratchySynth-M.wav"; ~audiofile = FluidFilesPath("Tremblay-ASWINE-ScratchySynth-M.wav");
~raw = FluidDataSet(s); ~raw = FluidDataSet(s);
~norm = FluidDataSet(s); ~norm = FluidDataSet(s);
~pitch_feature = Buffer.new(s); ~pitch_feature = Buffer.new(s);

@ -63,7 +63,7 @@ EXAMPLES::
code:: code::
//load some sounds //load some sounds
b = Buffer.read(s,File.realpath(FluidNoveltySlice.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); b = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
// basic param (the process add a latency of windowSize samples // basic param (the process add a latency of windowSize samples
{var sig = PlayBuf.ar(1,b,loop:1); [FluidNoveltySlice.ar(sig,0,11,0.33) * 0.5, DelayN.ar(sig, 1, (512 * (((11 + 1) / 2).asInteger + ((1 + 1) / 2).asInteger + 1)) / s.sampleRate, 0.2)]}.play {var sig = PlayBuf.ar(1,b,loop:1); [FluidNoveltySlice.ar(sig,0,11,0.33) * 0.5, DelayN.ar(sig, 1, (512 * (((11 + 1) / 2).asInteger + ((1 + 1) / 2).asInteger + 1)) / s.sampleRate, 0.2)]}.play

@ -63,7 +63,7 @@ EXAMPLES::
code:: code::
//load some sounds //load some sounds
b = Buffer.read(s,File.realpath(FluidOnsetSlice.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); b = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
// basic param (the process add a latency of windowSize samples // basic param (the process add a latency of windowSize samples
{var sig = PlayBuf.ar(1,b,loop:1); [FluidOnsetSlice.ar(sig) * 0.5, DelayN.ar(sig, 1, 1024/ s.sampleRate)]}.play {var sig = PlayBuf.ar(1,b,loop:1); [FluidOnsetSlice.ar(sig) * 0.5, DelayN.ar(sig, 1, 1024/ s.sampleRate)]}.play

@ -62,7 +62,7 @@ code::
s.reboot; s.reboot;
//Preliminaries: we want some audio, a couple of FluidDataSets, some Buffers, a FluidStandardize and a FluidPCA //Preliminaries: we want some audio, a couple of FluidDataSets, some Buffers, a FluidStandardize and a FluidPCA
( (
~audiofile = File.realpath(FluidBufMFCC.class.filenameSymbol).dirname +/+ "../AudioFiles/Tremblay-ASWINE-ScratchySynth-M.wav"; ~audiofile = FluidFilesPath("Tremblay-ASWINE-ScratchySynth-M.wav");
~raw = FluidDataSet(s); ~raw = FluidDataSet(s);
~standardized = FluidDataSet(s); ~standardized = FluidDataSet(s);
~reduced = FluidDataSet(s); ~reduced = FluidDataSet(s);

@ -120,7 +120,7 @@ x.set(\noise, 0.05)
STRONG::a more musical example:: STRONG::a more musical example::
CODE:: CODE::
// play a noisy synth file // play a noisy synth file
b = Buffer.read(s,File.realpath(FluidPitch.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-ASWINE-ScratchySynth-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-ASWINE-ScratchySynth-M.wav"));
b.play(true); b.play(true);
//insert a selective reverb - sending only the material with very high pitch confidence //insert a selective reverb - sending only the material with very high pitch confidence

@ -87,7 +87,7 @@ s.reboot;
//Load all the Fluid Corpus Manipulation audio files //Load all the Fluid Corpus Manipulation audio files
( (
~path = File.realpath(FluidLoadFolder.class.filenameSymbol).dirname +/+ "../AudioFiles"; ~path = FluidFilesPath();
~loader = FluidLoadFolder(~path); ~loader = FluidLoadFolder(~path);
~loader.play(s,action:{ |dataDictionary| "Done loading".postln}); ~loader.play(s,action:{ |dataDictionary| "Done loading".postln});
~slicer = FluidSliceCorpus({ |src,start,num,dest| ~slicer = FluidSliceCorpus({ |src,start,num,dest|

@ -67,7 +67,7 @@ code::
s.boot; s.boot;
//Preliminaries: we want some audio, a couple of FluidDataSets, some Buffers and a FluidRobustScale //Preliminaries: we want some audio, a couple of FluidDataSets, some Buffers and a FluidRobustScale
( (
~audiofile = File.realpath(FluidBufPitch.class.filenameSymbol).dirname +/+ "../AudioFiles/Tremblay-ASWINE-ScratchySynth-M.wav"; ~audiofile = FluidFilesPath("Tremblay-ASWINE-ScratchySynth-M.wav");
~raw = FluidDataSet(s); ~raw = FluidDataSet(s);
~scaled = FluidDataSet(s); ~scaled = FluidDataSet(s);
~pitch_feature = Buffer.new(s); ~pitch_feature = Buffer.new(s);

@ -68,7 +68,7 @@ EXAMPLES::
CODE:: CODE::
// load some audio to play // load some audio to play
b = Buffer.read(s,File.realpath(FluidSines.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-SynthTwoVoices-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-AaS-SynthTwoVoices-M.wav"));
// run with large parameters - left is sinusoidal model, right is residual // run with large parameters - left is sinusoidal model, right is residual
{FluidSines.ar(PlayBuf.ar(1,b,loop:1),detectionThreshold: -40, minTrackLen: 2, windowSize: 2048, fftSize: 8192)}.play {FluidSines.ar(PlayBuf.ar(1,b,loop:1),detectionThreshold: -40, minTrackLen: 2, windowSize: 2048, fftSize: 8192)}.play

@ -87,7 +87,7 @@ code::
s.reboot s.reboot
( (
~path = File.realpath(FluidLoadFolder.class.filenameSymbol).dirname +/+ "../AudioFiles"; ~path = FluidFilesPath();
~loader = FluidLoadFolder(~path); ~loader = FluidLoadFolder(~path);
~loader.play(s,action:{ |dataDictionary| "Done loading".postln}); ~loader.play(s,action:{ |dataDictionary| "Done loading".postln});
) )

@ -283,7 +283,7 @@ CODE::
// An example of productive mapping between filters parameters and logarithmic centroid values allows to make a simple automatic subtractive noise resynthesis // An example of productive mapping between filters parameters and logarithmic centroid values allows to make a simple automatic subtractive noise resynthesis
// load a beat // load a beat
b = Buffer.read(s,File.realpath(FluidSpectralShape.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); b = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
//logcentroid version //logcentroid version
( (

@ -58,7 +58,7 @@ code::
s.boot; s.boot;
//Preliminaries: we want some audio, a couple of FluidDataSets, some Buffers and a FluidStandardize //Preliminaries: we want some audio, a couple of FluidDataSets, some Buffers and a FluidStandardize
( (
~audiofile = File.realpath(FluidBufPitch.class.filenameSymbol).dirname +/+ "../AudioFiles/Tremblay-ASWINE-ScratchySynth-M.wav"; ~audiofile = FluidFilesPath("Tremblay-ASWINE-ScratchySynth-M.wav");
~raw = FluidDataSet(s); ~raw = FluidDataSet(s);
~stand = FluidDataSet(s); ~stand = FluidDataSet(s);
~audio = Buffer.read(s,~audiofile); ~audio = Buffer.read(s,~audiofile);

@ -51,7 +51,7 @@ EXAMPLES::
CODE:: CODE::
//load some sounds //load some sounds
b = Buffer.read(s,File.realpath(FluidTransientSlice.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-SynthTwoVoices-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-AaS-SynthTwoVoices-M.wav"));
// basic param (the process add a latency of (blockSize + padSize - order) samples // basic param (the process add a latency of (blockSize + padSize - order) samples
{var sig = PlayBuf.ar(1,b,loop:1); [FluidTransientSlice.ar(sig) * 0.5, DelayN.ar(sig, 1, ((256 + 128 - 20)/ s.sampleRate))]}.play {var sig = PlayBuf.ar(1,b,loop:1); [FluidTransientSlice.ar(sig) * 0.5, DelayN.ar(sig, 1, ((256 + 128 - 20)/ s.sampleRate))]}.play

@ -52,7 +52,7 @@ EXAMPLES::
CODE:: CODE::
//load some buffer //load some buffer
b = Buffer.read(s,File.realpath(FluidTransients.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-SynthTwoVoices-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-AaS-SynthTwoVoices-M.wav"));
// basic parameters // basic parameters
{FluidTransients.ar(PlayBuf.ar(1, b, loop:1))}.play {FluidTransients.ar(PlayBuf.ar(1, b, loop:1))}.play

@ -108,7 +108,7 @@ To cancel a job setup in this way, we just free the synth and the background thr
CODE:: CODE::
// load a buffer, declare a destination, and make a control bus to monitor the work // load a buffer, declare a destination, and make a control bus to monitor the work
( (
b = Buffer.read(s,File.realpath(FluidBufNMF.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-SynthTwoVoices-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-AaS-SynthTwoVoices-M.wav"));
c = Buffer.new(s); c = Buffer.new(s);
d = Bus.control(s,1); d = Bus.control(s,1);
) )

@ -2,7 +2,7 @@ s.reboot;
//from Fixed NMF example: //from Fixed NMF example:
( (
b = Buffer.read(s,File.realpath(FluidBufNMF.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Tremblay-AaS-AcousticStrums-M.wav"); b = Buffer.read(s,FluidFilesPath("Tremblay-AaS-AcousticStrums-M.wav"));
c = Buffer.new(s); c = Buffer.new(s);
x = Buffer.new(s); x = Buffer.new(s);
e = Buffer.alloc(s,1,1); e = Buffer.alloc(s,1,1);
@ -38,4 +38,3 @@ Routine{
) )
{DelayN.ar(PlayBuf.ar(1,b.bufnum),0.1,1024/44100, FluidNMFMatch.kr(PlayBuf.ar(1,b.bufnum),e.bufnum,2))}.play {DelayN.ar(PlayBuf.ar(1,b.bufnum),0.1,1024/44100, FluidNMFMatch.kr(PlayBuf.ar(1,b.bufnum),e.bufnum,2))}.play

@ -4,7 +4,7 @@ a = {~messageTest = FluidMessageTest.kr}.play
~messageTest.testReturnNumbers(nil,a.nodeID,{|msg| msg.postln}); ~messageTest.testReturnNumbers(nil,a.nodeID,{|msg| msg.postln});
~messageTest.testReturnOneString(nil,a.nodeID,{|msg| msg.postln}); ~messageTest.testReturnOneString(nil,a.nodeID,{|msg| msg.postln});
~messageTest.testReturnOneNumber(nil,a.nodeID,{|msg| msg.postln}); ~messageTest.testReturnOneNumber(nil,a.nodeID,{|msg| msg.postln});
b = Buffer.read(s,File.realpath(FluidMessageTest.class.filenameSymbol).dirname.withTrailingSlash ++ "../AudioFiles/Nicol-LoopE-M.wav"); b = Buffer.read(s,FluidFilesPath("Nicol-LoopE-M.wav"));
~messageTest.testAccessBuffer(nil,a.nodeID,b,{|msg| msg.postln}); ~messageTest.testAccessBuffer(nil,a.nodeID,b,{|msg| msg.postln});
b.numFrames b.numFrames
~messageTest.testPassString(nil,a.nodeID,'hello, you big lovely server',1,2,3,{'testPassString Done'.postln}); ~messageTest.testPassString(nil,a.nodeID,'hello, you big lovely server',1,2,3,{'testPassString Done'.postln});
@ -13,4 +13,4 @@ b.numFrames
a.free a.free
// OSCFunc.trace(true) // OSCFunc.trace(true)
// OSCFunc.trace(false) // OSCFunc.trace(false)

Loading…
Cancel
Save