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.
On Tue, 2007-03-06 at 16:30 +0100, Matteo Sisti Sette wrote:
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?
short answer: "no" long answer: it's a bit better with my sndfiler, but the answer is still "no"
cheers ... tim
-- tim@klingt.org ICQ: 96771783 http://tim.klingt.org
There's no such entity as "most people". These are generalities. All generalities are meaningless. You've got to pin it down to a specific person doing a specific thing at a specific time and space. William S. Burroughs
Hmm, what would it take to change/fix this? This is part of the reason I can only use PD in the studio, and not live... Sounds like there is a need for some kind of better cross-platform soundfile player external. This might be PD's biggest weakness for audio use!
Maybe Georg's [sndfile] would help but his post didn't give any info on what it does.
~D
On 3/6/07, Tim Blechmann tim@klingt.org wrote:
On Tue, 2007-03-06 at 16:30 +0100, Matteo Sisti Sette wrote:
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?
short answer: "no" long answer: it's a bit better with my sndfiler, but the answer is still "no"
Hallo!
Maybe Georg's [sndfile] would help but his post didn't give any info on what it does.
it's not by me ...
And the problem with it is, that altough the reading of the soundfile is threaded, the dsp chain needs to be recompiled, which can cause audio dropouts when you have big patches ...
LG Georg
On Tue, 2007-03-06 at 17:18 -0600, David Powers wrote:
Hmm, what would it take to change/fix this? This is part of the reason I can only use PD in the studio, and not live... Sounds like there is a need for some kind of better cross-platform soundfile player external. This might be PD's biggest weakness for audio use!
you can search the archive for the technical problems ... i've posted them several times ...
but imho, the problems are less technical. it would require the pd developers to distinguish between a "solution", a "workaround" and a "bad hack". my sndfiler is just a "bad hack". however if "bad hacks" or "workarounds" are praised as a "solution" there will never be real solutions!
personally, i only use the sndfiler, because it uses libsndfile and thus supports more file formats. it's not clickfree with my performance patch, as the used pd api is not scalable ...
luckily, there will be other options soon (http://tim.klingt.org/pnpd)
cheers ... tim
-- tim@klingt.org ICQ: 96771783 http://tim.klingt.org
Most of the trouble in this world has been caused by folks who can't mind their own business, because they have no business of their own to mind, any more than a smallpox virus has. William S. Burroughs