[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [sc-users] Scope question



Sorry should have given a more explicit example. Reading my mail in reverse order. :-)

Something like:

s = Server.internal;

{ SinOsc.ar(440, 0, 0.2) }.play(s); // This could be any code creating output.

s.scope;

Basically you can just Server.scope at any time to see the output. You can add nodes before or after.

S.

On Tuesday, December 30, 2003, at 04:20 PM, ccos wrote:

the scope method is no longer implemented, you
need to use an SCScope view. btw, you probably
already know, but you can just change 'scope' to 'play' in those
examples to just hear them w/ no image.

this is jmc's post on the subject from a little while back.
i don't think there is a helpfile yet for the view.

The SCScope view 'style' property supports 3 styles:

0 = separate waveform plots
1 = overlapping waveform plots
2 = x,y plots of 2 channel pairs.

(
// create a window with a scope view
var f, s;
w = SCWindow("scope test", Rect(128, 64, 512, 512));

n = SCScope(w, Rect(10,10,480,480));
n.bufnum = 0;
n.background = Color.black;
n.resize = 5;
n.style = 2;
n.waveColors = [Color.yellow, Color.blue(1.2), Color.red, Color.green];
w.front;
)

// boot internal server
s = Server.internal;
s.boot;

// allocate a 2 channel buffer
s.sendMsg(\b_alloc, 0, 2048, 2);

// play a 2 channel sound into that buffer using ScopeOut.
(
z = {
var m, f;
f = SampleRate.ir / 64;
m = SinOsc.kr(0.001, 0, 0.8, 1).round(1/60);
ScopeOut.ar([SinOsc.ar(f + 0.01), SinOsc.ar(f * m)], 0)
}.play(s);
)

z.free;

(
z = {
var in, f;
f = MouseX.kr(40,8000,1);
in = {RLPF.ar(BrownNoise.ar(0.5), f, 0.3) }.dup;
ScopeOut.ar(in, 0);
Out.ar(0, in);
}.play(s);
)

z.free;


(
z = {
var in, f, pw;
f = MouseX.kr(40,8000,1);
pw = MouseY.kr(0.01,0.99);
in = RLPF.ar(Pulse.ar([100,100.2],pw,0.5), f, 0.1).softclip;
ScopeOut.ar(in, 0);
Out.ar(0, in);
}.play(s);
)

z.free;

(
z = {
var in, f;
f = MouseX.kr(40,8000,1);
in = RLPF.ar(Saw.ar([100,100.2],0.5), f, 0.1).softclip;
ScopeOut.ar(in, 0);
Out.ar(0, in);
}.play(s);
)

z.free;



// allocate a 4 channel buffer
s.sendMsg(\b_alloc, 0, 2048, 4);


(
z = {
var in, f, pw;
f = MouseX.kr(40,8000,1);
pw = MouseY.kr(0.01,0.99);
in = RLPF.ar(Pulse.ar([120,120.12, 200, 200.1],pw,0.5), f, 0.1).softclip;
ScopeOut.ar(in, 0);
Out.ar(0, Mix(in.clump(2)) * 0.5);
}.play(s);
)

z.free;

n.style = 0;
n.style = 1;
n.style = 2;



--
--- james mccartney james@xxxxxxxxxxxxxx <http://www.audiosynth.com>
SuperCollider - a real time audio synthesis programming language

_______________________________________________
sc-users mailing list
sc-users@xxxxxxxxxxxxxxx
http://www.create.ucsb.edu/mailman/listinfo/sc-users


On Wednesday, December 31, 2003, at 08:14 AM, Umiachi wrote:

I'm using the 12/03/03 binary build.

I know scope has been implimented in the internal
server, but I take it the syntax is now quite
different, no?

I'm attempting to learn SC3 from David Cottle's
Digital Synthesis, Computer Assisted Composition
With SuperCollider txt. I've not had a problem running
any of the Synth.play examples, but many involve the
scope and are formatted like:

Synth.scope(
{
RLPF.ar(
LFSaw.ar([8, 12], 0.2),
LFNoise1.ar([2, 3].choose, 1500, 1600),
0.05
)
}, 0.05
)

or

Synth.scope({SinOsc.ar(200, 0, 0.3)}, 0.1);

How would I format these examples with the SC3 scope?
I've tried these on the internal server, but they
didn't seem to work.





=====
"Freedom is a hallucination created by a pathological lack of Paranoia"

__________________________________
Do you Yahoo!?
Find out what made the Top Yahoo! Searches of 2003
http://search.yahoo.com/top2003
_______________________________________________
sc-users mailing list
sc-users@xxxxxxxxxxxxxxx
http://www.create.ucsb.edu/mailman/listinfo/sc-users

_______________________________________________
sc-users mailing list
sc-users@xxxxxxxxxxxxxxx
http://www.create.ucsb.edu/mailman/listinfo/sc-users