On Sat, Mar 01, 2003 at 05:05:28PM +0000, Dave Griffiths wrote:
In ssm I sort the network each time a connection is
made/destroyed,
and generate a ordered list of modules to process from the root up
to the leaves. It has to cope with circular sections, which
unavoidably introduce latency, but it works. It also automatically
means unconnected modules don't get processed, which is nice.
how does ssm find out the latency it should impose ?
and at which position does it impose latency ?
It doesn't impose latency, if there are no circular paths there is no
internal latency (er, well there shouldn't be anyway ;)) as the data
i was talking about circular sections.
from a buffer of input audio will hit the output in
the same tick. If
there are circular sections, they will fall behind by one buffer. In
practise this is not really a problem, as you only tend to loop back
connections with things like delay effects.
yes.. but the graph orderer must therefor break the cycle.
and it must do that where the delay is.
and isnt that fallback buffer secretly added to the delay time ?
i will try to testdrive something like this on galan...
but because i split all processing between the events
it will probably segfault or do while(1) ;
--
torben Hohn
http://galan.sourceforge.net -- The graphical Audio language