Isn't the way to solve this problem to preallocate some space and have sndfiler read into that, then swap the pointer?
On Mon, 02 Oct 2006 18:19:36 +0200 Tim Blechmann tim@klingt.org wrote:
On Mon, 2006-10-02 at 17:53 +0200, Davide Morelli wrote:
there's 2 externals in cvs called: tb/sndfiler grh/threadlib
yeah, I use them, but I'm still having xruns problems, and I wonder if it is normal or not..
do you get xruns loading a "normally" large soundfile (let' say a 16 seconds stereo wav file) while playing?
I suspect that the sndfiler thread is still too high (i start pd with the -rt flag).. i didn't mess with priorities or NICE levels, I only installed the ccrma rdt kernel and start jackd with -R and pd with -rt
i doubt, it's related to the soundfiler thread ... but rather to pd's need to recompile the dsp chain, when the location of an array in memory changes ... so, when loading a soundfile, it will be read to memory in the helper thread, but the recompilation of the dsp chain still needs to be synchronous ... so there you have the dropouts ... so either "you don't want to load soundfiles during the performance" or "you don't want to use soundfiles in your performance, use synthesis instead" or "use miller's upsampling hack" ...
the only advantage of the sndfiler is, that it's able to read more file formats, since it's using libsndfile ...
for the dropouts, blame pd, not sndfiler ...
cheers ... tim
-- tim@klingt.org ICQ: 96771783 http://www.mokabar.tk
Nothing exists until or unless it is observed. An artist is making something exist by observing it. And his hope for other people is that they will also make it exist by observing it. I call it 'creative observation.' Creative viewing. William S. Burroughs