Having fun with sclang buffers
This commit is contained in:
parent
2fece459f8
commit
472d6a606f
@ -541,3 +541,198 @@
|
|||||||
Group.findRespondingMethodFor('postln').postln;
|
Group.findRespondingMethodFor('postln').postln;
|
||||||
// Group.findHelpForMethod('postln');
|
// Group.findHelpForMethod('postln');
|
||||||
)
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
b = Buffer.alloc(s, 100, 2);
|
||||||
|
b.free;
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
b = Buffer.alloc(s, s.sampleRate * 8.0, 2);
|
||||||
|
b.free;
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
b = Buffer.read(s, Platform.resourceDir +/+ "sounds/a11wlk01.wav");
|
||||||
|
|
||||||
|
x = SynthDef(
|
||||||
|
"tutorial-PlayBuf",
|
||||||
|
{
|
||||||
|
|out = 0, bufnum|
|
||||||
|
Out.ar(out,
|
||||||
|
PlayBuf.ar(1, bufnum, BufRateScale.kr(bufnum))
|
||||||
|
)
|
||||||
|
}
|
||||||
|
).play(s, [\bufnum, b]);
|
||||||
|
|
||||||
|
// x.free;
|
||||||
|
// b.free;
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
SynthDef(
|
||||||
|
"tutorial-Buffer-cue",
|
||||||
|
{
|
||||||
|
|out = 0, bufnum|
|
||||||
|
Out.ar(out, DiskIn.ar(1, bufnum))
|
||||||
|
}
|
||||||
|
).add;
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
b = Buffer.cueSoundFile(
|
||||||
|
s,
|
||||||
|
Platform.resourceDir +/+ "sounds/a11wlk01-44_1.aiff",
|
||||||
|
0,
|
||||||
|
1
|
||||||
|
);
|
||||||
|
|
||||||
|
y = Synth.new("tutorial-Buffer-cue", [\bufnum, b], s);
|
||||||
|
|
||||||
|
b.free;
|
||||||
|
y.free;
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
b = Buffer.read(s, Platform.resourceDir +/+ "sounds/a11wlk01.wav");
|
||||||
|
b.bufnum.postln;
|
||||||
|
b.numFrames.postln;
|
||||||
|
b.numChannels.postln;
|
||||||
|
b.sampleRate.postln;
|
||||||
|
b.free.postln;
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
b = Buffer.read(s, Platform.resourceDir +/+ "sounds/a11wlk01.wav", action: { |buffer|
|
||||||
|
("numFrames after update:" + buffer.numFrames).postln;
|
||||||
|
x = {
|
||||||
|
PlayBuf.ar(1, buffer, BufRateScale.kr(buffer))
|
||||||
|
}.play;
|
||||||
|
});
|
||||||
|
|
||||||
|
("numFrames before update:" + b.numFrames).postln;
|
||||||
|
|
||||||
|
// x.free; b.free;
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
b = Buffer.alloc(s, s.sampleRate * 5, 1);
|
||||||
|
|
||||||
|
x = SynthDef(
|
||||||
|
"tutorial-RecordBuf",
|
||||||
|
{
|
||||||
|
|out = 0, bufnum = 0|
|
||||||
|
var noise;
|
||||||
|
noise = PinkNoise.ar(0.3);
|
||||||
|
RecordBuf.ar(noise, bufnum);
|
||||||
|
}
|
||||||
|
).play(s, [\out, 0, \bufnum, b]);
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
x.free;
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
SynthDef(
|
||||||
|
"tutorial-Playback",
|
||||||
|
{
|
||||||
|
|out = 0, bufnum = 0|
|
||||||
|
var playbuf;
|
||||||
|
playbuf = PlayBuf.ar(1, bufnum);
|
||||||
|
FreeSelfWhenDone.kr(playbuf);
|
||||||
|
Out.ar(out, playbuf);
|
||||||
|
}
|
||||||
|
).play(s, [\out, 0, \bufnum, b]);
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
b.free;
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
Date.getDate.postln;
|
||||||
|
b = Buffer.alloc(s, 8, 1);
|
||||||
|
b.updateInfo({
|
||||||
|
|buf|
|
||||||
|
buf.set(7, 0.5);
|
||||||
|
buf.get(7, { |msg| msg.postln });
|
||||||
|
});
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
b.free;
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
var nFrames = 16;
|
||||||
|
|
||||||
|
Buffer.alloc(s, nFrames).updateInfo({
|
||||||
|
|b|
|
||||||
|
Task.new({
|
||||||
|
0.01.wait;
|
||||||
|
b.setn(0, [1, 2, 3]);
|
||||||
|
b.getn(0, 3, { |msg| ("1: "+ msg).postln });
|
||||||
|
0.01.wait;
|
||||||
|
b.setn(0, Array.fill(nFrames, { 1.0.rand }));
|
||||||
|
b.getn(0, nFrames, {
|
||||||
|
|msg|
|
||||||
|
("2: " + msg).postln;
|
||||||
|
"3: buh bye".postln;
|
||||||
|
b.free
|
||||||
|
});
|
||||||
|
}).play;
|
||||||
|
});
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
v = FloatArray.fill(44100, { 1.0.rand2 });
|
||||||
|
b = Buffer.alloc(s, 44100);
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
b.loadCollection(v, action: {
|
||||||
|
|buf|
|
||||||
|
x = {
|
||||||
|
PlayBuf.ar(buf.numChannels, buf, BufRateScale.kr(buf), loop: 1) * 0.2;
|
||||||
|
}.play;
|
||||||
|
});
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
x.free;
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
b.loadToFloatArray(0, -1, { |floatArray| (floatArray == v).postln; });
|
||||||
|
b.free;
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
b.free;
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
b = Buffer.read(s, Platform.resourceDir +/+ "sounds/a11wlk01.wav");
|
||||||
|
b.updateInfo({
|
||||||
|
|b|
|
||||||
|
x = b.play(true);
|
||||||
|
SystemClock.sched(5, { x.free; b.free; });
|
||||||
|
});
|
||||||
|
// b.play;
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
b = Buffer.alloc(s, 512, 1);
|
||||||
|
b.cheby([1, 0, 1, 1, 0, 1]);
|
||||||
|
|
||||||
|
x = play({
|
||||||
|
Shaper.ar(
|
||||||
|
b,
|
||||||
|
SinOsc.ar(300, 0, Line.kr(0, 1, 6)),
|
||||||
|
0.5
|
||||||
|
)
|
||||||
|
});
|
||||||
|
|
||||||
|
SystemClock.sched(10, { x.free; b.free; });
|
||||||
|
)
|
||||||
|
Loading…
Reference in New Issue
Block a user