Hi all,
I've a pd system that involves the playing back of sequences and patterns.
I store the pattern data in lots of separate text files which the system reads on the fly once the next pattern is called upon.
My problem is that I get audio dropouts when changing some patterns, usually ones that call on a lot of text files. (I've put all the graphic-heavy stuff into a subpatch which remains closed during live playback as my initial feeling was the glitches were caused by graphical stuff as is usual with pd. But surely once in a subpatch and closed there's no overhead?)
I suppose what I'm asking is, would I get better performance if I wasn't constantly calling upon text files on the hard disk?
Say, saving the strings of numbers to lists or arrays?
What would the best way to go about that if so?
The reason I went for the text file route was that it was simple to re-order the sequences via a file manager and just generally easier to track down problems by inspecting the files rather than poking around in lists and arrays. But audio always has final say!
Thanks in advance as always,
John.
I solved this problem by copying the files in RAM, on a virtual disk, prior to playing from the patch.
On Linux, I have a shell script that copies to /dev/shm then symlink
to the folder where the patch resides, then start pd and it runs smoothly.
As long as your files dont take up much space in memory, it's fine. Otherwise, they shouldn't sum up more than half the total RAM of your machine, otherwise it swaps.
I have no idea how to use this technique with Win/Mac. ++ O.
saint wrote:
Hi all,
I've a pd system that involves the playing back of sequences and patterns.
I store the pattern data in lots of separate text files which the system reads on the fly once the next pattern is called upon.
My problem is that I get audio dropouts when changing some patterns, usually ones that call on a lot of text files. (I've put all the graphic-heavy stuff into a subpatch which remains closed during live playback as my initial feeling was the glitches were caused by graphical stuff as is usual with pd. But surely once in a subpatch and closed there's no overhead?)
I suppose what I'm asking is, would I get better performance if I wasn't constantly calling upon text files on the hard disk?
Say, saving the strings of numbers to lists or arrays?
What would the best way to go about that if so?
The reason I went for the text file route was that it was simple to re-order the sequences via a file manager and just generally easier to track down problems by inspecting the files rather than poking around in lists and arrays. But audio always has final say!
Thanks in advance as always,
John.
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Hallo, saint hat gesagt: // saint wrote:
I suppose what I'm asking is, would I get better performance if I wasn't constantly calling upon text files on the hard disk?
Yes. Hard disk access is a real latency killer and it's only save if done in a separate thread like readsf~ does it.
So either use some kind of memory "disk" as suggested here as well, or load files into memory in whatever fashion suits you.
Frank