So I am stuck with (multichannel) fading a Pdef…
I have a multichannel GrainBuf instrument which is controled by the following Pdef.
This Pdef should fade between the several buffer arrays (like stated in the Pxrand) so that a continous (generative and endless) drone is created.
I then unsuccessfully tried to achieve this with a loop inside a Tdef. There are always gaps inbetween… While reduced approaches do work like expected, I guess it has something to do with the multichanneling or do I even need a Pdef/the Pdef-Tdef-combination? I also made sure that every soundfile has no blank beginnings and ends to avoid the playback head moving through those…
The available posts in here didn’t helped me much, so I decided to start a new one…
Thank you!!
Pdef(\drone_pdef).play;
Pdef(\drone_pdef).fadeTime = 4; // has to be lower than ~pwhiteLo
(
~pwhiteLo = 7.0;
~pwhiteHi = 12.0;
// Tdef for endless fading
Tdef(\drone_tdef, {
loop({
Pdef(\drone_pdef, Pbind(
\instrument, \drone_synth,
\dur, Pwhite(~pwhiteLow, ~pwhiteHi, inf),
\envDur, Pwhite(~pwhiteLow, ~pwhiteHi, inf),
\sndbuf, Pxrand([
[~b1_a, ~b2_a, ~b3_a, ~b4_a, ~b5_a],
[~b1_e, ~b2_e, ~b3_e, ~b4_e, ~b5_e],
[~b1_i, ~b2_i, ~b3_i, ~b4_i, ~b5_i],
[~b1_o, ~b2_o, ~b3_o, ~b4_o, ~b5_o],
[~b1_u, ~b2_u, ~b3_u, ~b4_u, ~b5_u]
], inf),
\grainPosDur, Pwhite(~pwhiteLow, ~pwhiteHi, inf),
\amp, -12.dbamp
));
2.rrand(3.0).wait;
})
}).play;
)
// This here works...
(
Pdef(\a).play;
Pdef(\a).fadeTime = 1.5;
Tdef(\a_seq, {
loop({
Pdef(\a, Pbind(\dur, 0.2, \degree, Pxrand([Pseq([0], inf), Pseq([4], inf), Pseq([7], inf)], inf)));
3.wait;
})
}).play;
)