[PD] Is asynchronous but fast loading possible?

Matteo Sisti Sette matteo.sistisette at email.it
Tue Mar 6 16:30:50 CET 2007


Hi all,

This is not related to the "reading big sound files" thread, although that 
made me remember of this question I have been wanting to ask for a long 
time.

I know two ways of reading sound files in PD.
One is loading them into a table with [soundfiler], and the other is playing 
them realtime from disk with [readsf].

Readsf is ok for playing big files in realtime without loading the whole of 
them into ram, and also, it does not block dsp processing while loading. The 
problem is you can't jump to any point of the file in an instant: you have 
to allow for a few millisecond to fill the buffer or you'll hear clicks; not 
to mention you can't do much more than just playing, or if you want to read 
a chunk of file into a table, you will have to do it at "1x" speed.

Soundfiler, if you don't load huuuuuge files and/or have sufficient ram, is 
ok...
...as far as you don't need to use it during performance!!
Being synchronous, it will block dsp processing for the time necessary to 
read the whole file, so you have to pre-load all waves before you start 
performing...

So my question is. Is there an asynchronous, non-blocking way to load a wave 
file into a table, but faster than real-time playing?
I mean, something that loads the file as fast as it can but without blocking 
dsp execution, and for example bangs when load is complete?

Thanks in advance
M.





More information about the Pd-list mailing list