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

Re: [Sc-devel] PsyCollider 3.1 - Server side scheduling fixed



Hi Chris,

Oh... I'm really sorry to have to do this to you. It works somewhat
better, but the timestamps are still off.

An example like this should produce blips exactly evenly spaced --
since the timestamp should be the logical time (which, on successive
events, should always be 0.125 seconds since the last one) + latency.
With a 64-sample block size, timing errors from the Out UGen rounding
to the next block boundary are undetectable.

SynthDef("sine", { Out.ar(0, (SinOsc.ar(440, 0, 0.2) *
EnvGen.kr(Env.perc(0.01, 0.05), doneAction: 2)) ! 2) }).send(s);

a = Synth.basicNew("sine", s, -1).newMsg;
r = fork {
	loop {
		s.sendBundle(0.2, a);
		0.125.wait;
	}
};

r.stop;

I thought, maybe the block size is higher than on the Mac because of
some windows driver requirement. So I tried OffsetOut instead of Out
in the SynthDef and scsynth.exe promptly crashed. :(

Or, are you perhaps measuring the latency from the time scsynth
received the message? That isn't reliable.

It's better, but I'm afraid there's still some work to do...
hjh

On Dec 13, 2007 12:38 PM, Christopher Frauenberger <frauenberger@xxxxxx> wrote:
> Hello,
>
> I fixed the server side scheduling of events, which means that


-- 
James Harkins /// dewdrop world
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