Well, this is probably the largest item on my "dolist" -- but it's bigger than just arrays: in general, some kind of flow control mechanism is needed to protect against Pd flooding the GUI with updates.
In theory at least, the GUI process can handle large, atomic updates like redrawing an entire array without disrupting Pd; the main catch is that if Pd throws too many of these at the GUI then Pd itself can stall waiting for the GUI to catch up to it.
Then there's the question of how to draw very large (100,000+ points) arrays meaningfully without having to examine every single point. I'm leaning toward just doing a monte carlo hack for that: look at up to 10,000 points at pseudo-random somehow.
cheers Miller
On Mon, Jul 05, 2004 at 08:17:29PM +0200, Tim Blechmann wrote:
hi daniel, hi list...
As an example, if I have 3 one-second arrays on screen being redrawn every 500 ms, there is no noticeable glitching etc - but for 3 10-second arrays, there's a very clear interruption in the audio-stream when the redraws occur. So perhaps there would be some way to modify the array-drawing code to skip samples in the drawing process and only the minimum required to display the data?
there should be no problem to find an apropriate algorithm to improve the array drawing... but someone would have to do it ... therefor it would be needed to set up a todo list and to assign certain tasks to certain developers ...
as hcs wrote a short time ago, pd development is kind of "coordinated
disorganization"...there are some of these "nearly-bugs" in pd that should be solved (and not only by a workaround) ... probably it would be useful to install and use a bugtracker system (maybe the bugtracker on sourceforge), but it would have to be _used_ to be useful...
cheers... tim
-- mailto:TimBlechmann@gmx.de ICQ: 96771783
After one look at this planet any visitor from outer space would say "I want to see the manager." William S. Burroughs
PD-list mailing list PD-list@iem.at to manage your subscription (including un-subscription) see http://iem.at/cgi-bin/mailman/listinfo/pd-list