diff --git a/sclang-play/tutorial.sc b/sclang-play/tutorial.sc index 201b221..8508916 100644 --- a/sclang-play/tutorial.sc +++ b/sclang-play/tutorial.sc @@ -541,3 +541,198 @@ Group.findRespondingMethodFor('postln').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; }); +)