Juan A. Romero | 1 Feb 01:03
Picon
Gravatar

Re: Scaling in NdefGui

Hi!

You can define the Specs:

Spec.add(\sine, ControlSpec(...))

or:

Spec.add(\sine, [-20, 20 ...].asSpec)

Look at the Spec and ControlSpec helpfiles.

Cheers,
Juan

On 01.02.2012, at 00:39, yns wrote:

> Is there a way to determine the scaling of the sliders in a NdefGui with
> code?
> 
> When I use for instance use: SynthDescLib.global.[\sine].makeWindow; I can
> determine the scaling of the parameters by matching the SynthDef's argument
> names with Specs stored in the Spec IdentityDictionary or setting them in
> the SynthDef's metadata. This seems not to work with NdefGui. Is there
> another way?

_______________________________________________
sc-users mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
(Continue reading)

yns | 1 Feb 01:47
Picon

Re: Scaling in NdefGui

That would mean I would have to add a Spec for every single parameter in the
SynthDef posted below right? Isn't there an easier way?

SynthDef(\eq5, {
	arg 	in = 0, out = 0,
		freq1=100, q1=1, gain1=0,
		freq2=300, q2=1, gain2=0,
		freq3=900, q3=1, gain3=0,
		freq4=2700, q4=1, gain4=0,
		freq5=8100, q5=1, gain5=0,
		bypass=0;
	var 	insig,filtsig1,filtsig2,filtsig3,filtsig4,filtsig5,sig;
	
	insig	= In.ar(in,2);
	
	filtsig1	= BLowShelf.ar(insig,freq1,q1,gain1);
	filtsig2	= BPeakEQ.ar(filtsig1,freq2,q2,gain2);
	filtsig3	= BPeakEQ.ar(filtsig2,freq3,q3,gain3);
	filtsig4	= BPeakEQ.ar(filtsig3,freq4,q4,gain4);
	filtsig5	= BHiShelf.ar(filtsig4,freq5,q5,gain5);
	
	sig		= Select.ar(bypass, [insig, filtsig5]);
	
	Out.ar(out,sig);
}, metadata: (specs: (
			freq1:\freq, q1:\rq, gain1:\gain,
			freq2:\freq, q2:\rq, gain2:\gain,
			freq3:\freq, q3:\rq, gain3:\gain,
			freq4:\freq, q4:\rq, gain4:\gain,
			freq5:\freq, q5:\rq, gain5:\gain,
(Continue reading)

Juan A. Romero | 1 Feb 01:51
Picon
Gravatar

Re: Re: Scaling in NdefGui

Hm, can't think of an elegant solution right now, but I've done this like:

5.do{ |i| Spec.add(("freq"++(i+1)).asSymbol, [...].asSpec) };
5.do{ |i| Spec.add(("gain"++(i+1)).asSymbol, [...].asSpec) };
5.do{ |i| Spec.add(("filtsig"++(i+1)).asSymbol, [...].asSpec) };

and so on....=

You can also use for example:

\freq.asSpec to get the frequency specs (20-20000 Hz) and reuse it like:

Spec.add(\myfreq, \freq.asSpec)

Cheers,
Juan

On 01.02.2012, at 01:47, yns wrote:

> That would mean I would have to add a Spec for every single parameter in the
> SynthDef posted below right? Isn't there an easier way?
> 
> SynthDef(\eq5, {
> 	arg 	in = 0, out = 0,
> 		freq1=100, q1=1, gain1=0,
> 		freq2=300, q2=1, gain2=0,
> 		freq3=900, q3=1, gain3=0,
> 		freq4=2700, q4=1, gain4=0,
> 		freq5=8100, q5=1, gain5=0,
> 		bypass=0;
(Continue reading)

Picon

localhost window missing

Hi, is there a reason that in the open up of SC the localhost window is
missing?
Does this consists of the new changes?

I am in 3.5.3

Best
\K.

--

-- 
bla...bla http://konstantinos-vasilakos.blogspot.com/

_______________________________________________
sc-users mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
search: http://www.listarc.bham.ac.uk/lists/sc-users/search/

aucotsi | 1 Feb 01:54
Picon
Favicon

Re: SC in puredyne linux (newb)

you can also setup s.options.memSize, for me it has by default 55876, so I
put it as a power of two 

s.options.memSize_(2**16) 

Also may I ask where is the /SCClassLibrary folder? Or the app's folder?

-----
http://soundcloud.com/aucotsi/sets
--
View this message in context: http://new-supercollider-mailing-lists-forums-use-these.2681727.n2.nabble.com/SC-in-puredyne-linux-newb-tp7227542p7241779.html
Sent from the SuperCollider Users New (Use this!!!!) mailing list archive at Nabble.com.

_______________________________________________
sc-users mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
search: http://www.listarc.bham.ac.uk/lists/sc-users/search/

Picon

Re: localhost window missing

Sorry I have switching in different start up files.
Best
\K.
> Hi, is there a reason that in the open up of SC the localhost window is
> missing?
> Does this consists of the new changes?
>
> I am in 3.5.3
>
> Best
> \K.
>
>
> --
> bla...bla http://konstantinos-vasilakos.blogspot.com/
>
>
>
> _______________________________________________
> sc-users mailing list
>
> info (subscription, etc.):
> http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
> archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
> search: http://www.listarc.bham.ac.uk/lists/sc-users/search/
>

--

-- 
bla...bla http://konstantinos-vasilakos.blogspot.com/

(Continue reading)

James Harkins | 1 Feb 02:40
Picon

Re: Re: Scaling in NdefGui

At Wed, 1 Feb 2012 01:51:02 +0100,
Juan A. Romero wrote:
> On 01.02.2012, at 01:47, yns wrote:
> 
> > That would mean I would have to add a Spec for every single parameter in the
> > SynthDef posted below right? Isn't there an easier way?
> 
> Hm, can't think of an elegant solution right now, but I've done this like:
> 
> 5.do{ |i| Spec.add(("freq"++(i+1)).asSymbol, [...].asSpec) };
> 5.do{ |i| Spec.add(("gain"++(i+1)).asSymbol, [...].asSpec) };
> 5.do{ |i| Spec.add(("filtsig"++(i+1)).asSymbol, [...].asSpec) };
> 
> and so on....=

Ugh. I guess the easiest would be if NdefGui looked in the SynthDef's metadata for a control name's spec,
before going to the global specs dictionary? (Or, is it supposed to do that already?)

hjh

--
James Harkins /// dewdrop world
jamshark70@...
http://www.dewdrop-world.net

"Come said the Muse,
Sing me a song no poet has yet chanted,
Sing me the universal."  -- Whitman

blog: http://www.dewdrop-world.net/words
(Continue reading)

James Harkins | 1 Feb 02:44
Picon

Re: formatting OSC msgs from external apps sending to SC

At Tue, 31 Jan 2012 13:34:49 -0600,
JD Pirtle wrote:
> 
> Thanks, Fredrik.  I was sending to port 57110 instead of 57120 from Processing.  Now everything works great.

"FAILURE /sageWinMove Command not found"

FAILURE comes from the server, so (for future reference) that's the best clue that the message was going to
the server instead of the language.

If you send an OSC message to the language and no responder is configured for it, then there's no error --
just, nothing happens.

(Also, just to clarify one earlier point -- OSCresponder and its subclasses are not deprecated in 3.5.
OSCFunc is a new option that's much better in a lot of ways, but nobody will be forced to use it in 3.5.)

hjh

--
James Harkins /// dewdrop world
jamshark70@...
http://www.dewdrop-world.net

"Come said the Muse,
Sing me a song no poet has yet chanted,
Sing me the universal."  -- Whitman

blog: http://www.dewdrop-world.net/words
audio clips: http://www.dewdrop-world.net/audio
more audio: http://soundcloud.com/dewdrop_world/tracks
(Continue reading)

Nicholas Starke | 1 Feb 03:25
Picon
Favicon

Tasks and inf.do

Hello,
I'm building a step sequencer.  I want a task to fire off when a OSC message == 1, and then that same task to stop when the OSC message != 1.

The code I have is as follows.  It doesn't seem to stop the task when I call stop.  I have tried using a routine instead, and using play instead of start for both a task and a routine.  Could someone tell me what I am doing wrong, or if there is a better way of doing this?  Thanks!

var loop;
(msg[1] == 1).if({
loop = Task({
inf.do({ arg col;
//do work, son!
}).start;
},{
loop.stop;
//do more work
});
James Harkins | 1 Feb 04:09
Picon

Re: Tasks and inf.do

At Tue, 31 Jan 2012 18:25:08 -0800 (PST),
Nicholas Starke wrote:
> Hello,
> I'm building a step sequencer.  I want a task to fire off when a OSC message == 1, and then that
> same task to stop when the OSC message != 1.
> 
> The code I have is as follows.  It doesn't seem to stop the task when I call stop.  I have tried
> using a routine instead, and using play instead of start for both a task and a routine.  Could
> someone tell me what I am doing wrong, or if there is a better way of doing this?  Thanks!
> 
> var loop;
> (msg[1] == 1).if({
> loop = Task({
> inf.do({ arg col;
> //do work, son!
> }).start;
> },{
> loop.stop;
> //do more work
> });

Probably your "loop" variable is local to the responder function. If so, you have a new "loop" variable
every time the message comes in. So, when you switch it on, you put a task into "loop" that belongs to one
invocation of the function. Then, when you switch it off, "loop.stop" operates on "loop" that belongs to a
different invocation -- since nothing was put into this second "loop" variable, it's nil and nil.stop
does nothing.

The variable needs to be declared outside the responder.

hjh

--
James Harkins /// dewdrop world
jamshark70@...
http://www.dewdrop-world.net

"Come said the Muse,
Sing me a song no poet has yet chanted,
Sing me the universal."  -- Whitman

blog: http://www.dewdrop-world.net/words
audio clips: http://www.dewdrop-world.net/audio
more audio: http://soundcloud.com/dewdrop_world/tracks

_______________________________________________
sc-users mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
search: http://www.listarc.bham.ac.uk/lists/sc-users/search/


Gmane