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

Re: [sc-users] [sc-dev] Re: Binary Release [test] of ScGraph



There is a thread in this lost where marije already impemented and posted a GServer…
IMHO We should just use that one.

Btw. what do you guys think of putting the sclang-part of scgraph into the quarks repository? To my understanding, g-server and language-classes are pretty well- separated from each other. Another option would be to add a quarks-directory to the scgraph package that can be used as an alternative quarks directory.
(yes, this is possible, Quarks is no singleton… :-)

2c
	Till

On 14.12.2008, at 17:03, Dan Stowell wrote:

Well this would kind of be changing the meaning of things. Why not
subclass Server as (e.g.) GraphServer with its own value of .program?
Then the path wouldn't need to be manually set on every invocation.

Dan


2008/12/14, James Harkins <jamshark70@xxxxxxxxx>:

Julian's idea to tell a server whether or not it's allowed to boot is a good
one, I think.

But I just noticed something crappy - Server does have a classvar, program, for the executable to run when booting. But it's a classvar! So you can't
change it per server. Grrr....

Maybe it would be better to change it to an instance variable, so you could
do:

d = Server(...);
d.program = "cd scgraph/path && ./scgraph -options...";
d.boot;

hjh



On Dec 14, 2008, at 7:10 AM, Florian Schmidt wrote:

On Saturday 13 December 2008, James Harkins wrote:
When you create a synth, you can say which target to use. The target
(often a Group) implies the desired server.

If you don't give a target, it uses Server.default's default group.

So, e.g., you could do:

d = Server(\scgraph, NetAddr("127.0.0.1", whatever_port));
d.boot;

a = { ... audio ugens ... }.play;

g = { ... 3d ugens ... }.play(d);

It's the same as specifying a synth to play in a given group. No big
secrets here.

Well, all of this is totally clear [at least to me]. The problem i suspected
was a different one (see below)..

I'm curious how this is documented so badly that it becomes
confusing? If it's this much of a problem, the documentation should
be improved.

d = Server.new(\scgraph, NetAddr("80.12.31.13", 37291));
d.boot

SCLang output:

You will have to manually boot remote server.
scgraph

This is what we want.

But if you use [SuperCollider seems to assume, that if the NetAddr is not a really remote one, that the server is local and it can just run scsynth]:

// with "localhost" it's the same
d = Server(\scgraph, NetAddr("127.0.0.1", 37291));
d.boot;

SClang output [it boots scsynth]:

booting 37291
scgraph
Using vector unit: yes
exception in GrafDef_Load: UGen 'GLight' not installed.
while reading file
'/home/tapas/share/SuperCollider/synthdefs/light.scsyndef'
exception in GrafDef_Load: UGen 'GRectangle' not installed.
while reading file
'/home/tapas/share/SuperCollider/synthdefs/foo.scsyndef'
exception in GrafDef_Load: UGen 'GBlending' not installed.
while reading file
'/home/tapas/share/SuperCollider/synthdefs/defaultRenderer.scsyndef'
JACK compiled with System V SHM support.
jackd 0.109.2
Copyright 2001-2005 Paul Davis and others.
jackd comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details

loading driver ..
apparent rate = 44100
creating alsa driver ...
hw:1|hw:1|2048|2|44100|0|0|nomon|swmeter|-|32bit
control device hw:1
configuring for 44100Hz, period = 2048 frames (46.4 ms), buffer = 2 periods
ALSA: final selected sample format for capture: 32bit little-endian
ALSA: use 2 periods for capture
ALSA: final selected sample format for playback: 32bit little-endian
ALSA: use 2 periods for playback
JackDriver: client name is 'SuperCollider'
JackDriver: connected alsa_pcm:capture_1 to SuperCollider:in_1
JackDriver: connected alsa_pcm:capture_2 to SuperCollider:in_2
JackDriver: max output latency 46.4 ms
JackDriver: connected SuperCollider:out_1 to alsa_pcm:playback_1
JackDriver: max output latency 46.4 ms
JackDriver: connected SuperCollider:out_2 to alsa_pcm:playback_2
Zeroconf: failed to create client: Daemon not running
SuperCollider 3 server ready..
notification is on

So my question was: How to tell the Server class to treat the graphics server as remote one even though the network address is local. I.e.: Do not
boot scsynth..

Personnaly i used several workarounds like

- looking up the public address
- not using the boot method ;)

This is not satisfactory though and users seem to stumble over this. I
looked through the documentation and didn't find a mention of this
behaviour. Maybe i'm just struck with blindness though..

Regards,
Flo

--
Palimm Palimm!
http://tapas.affenbande.org


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

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



--
http://www.mcld.co.uk

_______________________________________________
sc-dev mailing list

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


_______________________________________________
sc-dev mailing list

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