<div dir="ltr"><div>There's already a WIP about a threaded soundfiler:</div><div><a href="https://github.com/pure-data/pure-data/pull/655">https://github.com/pure-data/pure-data/pull/655</a></div><div><br></div><div>with a complement, dispensing to rebuild the whole DSP tree after loading a soundfile:</div><div><a href="https://github.com/pure-data/pure-data/pull/667">https://github.com/pure-data/pure-data/pull/667</a></div><div><br></div><div>The latter has some impact on CPU load: it significantly lightens normal [tabread]/[tabwrite] usage (no more need to reacquire the array each time), but adds a bit of load for setting it to another table. It also adds a bit of load for DSP-table objects at each DPS-block beginning (to check the table pointer is still valid). I had started to gprof the change, but I didn't go through with it...</div><div><br></div><div><div><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><font face="arial, helvetica, sans-serif"> Antoine Rousseau </font></div><div dir="ltr"><font face="arial, helvetica, sans-serif">  <a href="http://metalu.net" target="_blank">http://www.metalu.net</a> __ <a href="http://www.metaluachahuter.com/compagnies/al1-ant1/" target="_blank">http://www.metaluachahuter.com/</a><br><br></font></div></div></div></div></div></div><br></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Le ven. 1 nov. 2019 à 14:31, Christof Ressi <<a href="mailto:christof.ressi@gmx.at">christof.ressi@gmx.at</a>> a écrit :<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">another trick is to use [readsf~] in an upsampled subpatch. <br>
<br>
BTW, I have ideas for adding a worker thread to Pd (similar to Supercollider), which would help solving a lot of Pd's realtime-safety issues. I want to do that in the next couple of weeks when I have more time.<br>
<br>
Chrisotf<br>
<br>
> Gesendet: Freitag, 01. November 2019 um 14:21 Uhr<br>
> Von: "oliver" <<a href="mailto:oliver@klingt.org" target="_blank">oliver@klingt.org</a>><br>
> An: Pd-List <<a href="mailto:pd-list@lists.iem.at" target="_blank">pd-list@lists.iem.at</a>><br>
> Betreff: Re: [PD] Raspberry Pi: Loading Samples RAM problem<br>
><br>
> Hi,<br>
> <br>
> try to use "soundfiler" to read only chunks of your files. so it's <br>
> actually more a "harddisk"-streaming method.<br>
> <br>
> have some example patches here:<br>
> <br>
> mind, that this will be obviously limited by the read-speed of your SD-card.<br>
> <br>
> <br>
> best<br>
> <br>
> oliver<br>
> <br>
> <br>
> <br>
> <br>
> Jakob Laue wrote:<br>
> > Dear list,<br>
> > i have a little problem with my raspberry pi..<br>
> > I have built an eight-track sample player patch that runs on a raspberry pi.<br>
> > When the patch loads, it initially loads all the samples it finds in <br>
> > /home/pi/SamplePacks/SamplePack1, SamplePack2 etc..<br>
> > into RAM using the standard approach:<br>
> > - create two tables for each sample<br>
> > - read data into tables with [read -resize table1 table2(<br>
> > Afterwards I use [soundfiler] and calculate the frequency for [phasor] <br>
> > and so on and so forth.<br>
> > The patch works when I load a total amount of 500 gb into RAM.<br>
> > Today I tested to load 9 GB of samples and the result (obviously) is the <br>
> > pi crashing.<br>
> > I have tested on a raspberry pi 2 and a raspberry pi 3. Both pis only <br>
> > have 1 GB of RAM so it's obvious that problems arise trying to load 9 GB <br>
> > of samples.<br>
> > Do you have any hints or ideas how I could solve this problem? Loading <br>
> > from disk while performing is not an option (I think) because of audio pops.<br>
> > Do you know any ways to extend the RAM of the pi?<br>
> > Maybe you know of some other small boards like beagle or so that have <br>
> > more RAM than a pi.<br>
> > Thank you very much! Jakob<br>
> > <br>
> > <br>
> > _______________________________________________<br>
> > <a href="mailto:Pd-list@lists.iem.at" target="_blank">Pd-list@lists.iem.at</a> mailing list<br>
> > UNSUBSCRIBE and account-management -> <a href="https://lists.puredata.info/listinfo/pd-list" rel="noreferrer" target="_blank">https://lists.puredata.info/listinfo/pd-list</a><br>
> > <br>
> <br>
> <br>
> -- <br>
> \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\<br>
> /////////////// <a href="http://pendler.klingt.org" rel="noreferrer" target="_blank">http://pendler.klingt.org</a> //////////////<br>
> \\\\\\\\\\\\\\\ <a href="http://oliver.klingt.org" rel="noreferrer" target="_blank">http://oliver.klingt.org</a>  \\\\\\\\\\\\\\<br>
> ////////////////////////////////////////////////////////<br>
> _______________________________________________<br>
> <a href="mailto:Pd-list@lists.iem.at" target="_blank">Pd-list@lists.iem.at</a> mailing list<br>
> UNSUBSCRIBE and account-management -> <a href="https://lists.puredata.info/listinfo/pd-list" rel="noreferrer" target="_blank">https://lists.puredata.info/listinfo/pd-list</a><br>
><br>
<br>
<br>
<br>
_______________________________________________<br>
<a href="mailto:Pd-list@lists.iem.at" target="_blank">Pd-list@lists.iem.at</a> mailing list<br>
UNSUBSCRIBE and account-management -> <a href="https://lists.puredata.info/listinfo/pd-list" rel="noreferrer" target="_blank">https://lists.puredata.info/listinfo/pd-list</a><br>
</blockquote></div>