[PD] soundfiler alternative?
Christof Ressi
christof.ressi at gmx.at
Tue Feb 28 13:28:48 CET 2017
That's what I meant with:
> [soundfiler] will vomit at you in the Pd console but you can simply
ignore it by setting the log level to 0.
I know why it happens but it doesn't really matter. Despite its flashy
read appearance it's just a warning which can be safely ignored.
The patch itself should work. Tweek the amount of samples per DSP block
to find a setting which works for you without dropouts.
On 28.02.2017 12:54, José Rafael Subía Valdez wrote:
> Hey Christof and Jean-Yves Gratius
>
> Thanks, I am opening them up just now. Christof, your patch gives me
> these errors when I try it out:
>
> soundfiler_read: truncated to 44100 elements -> this one is repeated
> by the amount of blocks it will take to completely load the sound file
> resize failed
>
> any idea why?? (before I start dismantling it?)
>
> Cheers Guys, much appreciated.
>
>
> On Tue, Feb 28, 2017 at 11:35 AM, Christof Ressi
> <christof.ressi at gmx.at <mailto:christof.ressi at gmx.at>> wrote:
>
> José, I think I have a solution which might work for you. see my
> attached patch. it's not a clean abstraction but rather
> demonstrates the principle.
>
> basically, I spread the loading of the soundfile over several DSP
> blocks and you can adjust how many samples to load in one block.
> 44100 samples, for example, works fine for me (no dropouts), which
> means I can load 1 second of audio in 1.5 ms or 10 minutes in 900 ms!
>
> note that it needs soundfile_info from iemlib.
>
> [soundfiler] will vomit at you in the Pd console but you can
> simply ignore it by setting the log level to 0.
>
> Anyway, I'm really thinking of turning it into an external because
> there some inefficiencies I could get rid off. Most notably, I
> have to use an intermediate buffer plus |read -resize -maxsize
> ...( to prevent [soundfiler] from reading the file always till the
> end because it doesn't have -nframes as an read option (which is
> unfortunate).
>
> Hope that helps!
>
> Christof
>
> Gesendet: Dienstag, 28. Februar 2017 um 07:42 Uhr
> Von: "José Rafael Subía Valdez" <jsubiavaldez at gmail.com
> <mailto:jsubiavaldez at gmail.com>>
> An: Pd-List <pd-list at lists.iem.at <mailto:pd-list at lists.iem.at>>
> Betreff: Re: [PD] soundfiler alternative?
>
> Thank you all..
>
> but I am developing patches that are handed to performers and
> should work out of the box, I can't depend on the expensive
> machines and RAM-DISK settings because I can not tell my
> performers - you need to do all of this and invest in your
> computer first before you play my music. Why? because this is
> something I am doing for my PhD. Yes..saying "buy a fancy computer
> with lots of RAM" is easier in Europe or the US than in other
> places of the world and that is not my aim. I am trying to squeeze
> the best solutions on any type of machine and to provide people
> that are not necessary computer music users with the friendliest
> setup I can think of.
>
> the computer I am programming this is a iMac from 2007 with 4 gb
> of RAM. I have many processes including FFT, but thanks to switch~
> I am able to optimize the patch. I just have this problem that
> causes audio drops when loading each sample. So not really wanna
> discuss finances.
>
> Thanks again
>
>
> On Mon, Feb 27, 2017 at 11:35 PM, Christof Ressi
> <christof.ressi at gmx.at
> <mailto:christof.ressi at gmx.at>[mailto:christof.ressi at gmx.at
> <mailto:christof.ressi at gmx.at>]> wrote:> i keep forgetting of
> abominations like running a 32-bit Pd on a 64-bit OS.
>
> Actually, the average Windows user will have more 32-bit apps than
> 64-bit apps running on their 64-bit OS ;-).
> And most Pd users on 64-bit Windows will have a 32-bit Pd because
> Miller doesn't offer 64-bit binaries yet and building from source
> is still impossible (at least with MinGW).
>
> > decent OSs should be able to manage more than a total 4GB of RAM
> even
> > when the entire OS is 32bit (a single application will not be
> able to
> > address more than 2^32 bytes though; but it should get you closer to
> > really having 4GB, rather than 2GB)
>
> on 32-bit Windows you usually get 2 GB per process - or 3 GB with
> some tricks*. on 64-bit Windows it's 2 GB for 32-bit processes
> unless you compile with IMAGE_FILE_LARGE_ADDRESS_AWARE set, then
> you get 4 GB.
>
> here are the boring details:
> https://msdn.microsoft.com/en-us/library/aa366778(VS.85).aspx?ranMID=24542&ranEAID=TnL5HPStwNw&ranSiteID=TnL5HPStwNw-Z6NjEgcaJn8pbbYAema89g&tduid=(94e0b4bf83daa242de97c8bfb531e5d9)(256380)(2459594)(TnL5HPStwNw-Z6NjEgcaJn8pbbYAema89g)()[https://msdn.microsoft.com/en-us/library/aa366778(VS.85).aspx?ranMID=24542&ranEAID=TnL5HPStwNw&ranSiteID=TnL5HPStwNw-Z6NjEgcaJn8pbbYAema89g&tduid=(94e0b4bf83daa242de97c8bfb531e5d9)(256380)(2459594)(TnL5HPStwNw-Z6NjEgcaJn8pbbYAema89g)()]
> <https://msdn.microsoft.com/en-us/library/aa366778%28VS.85%29.aspx?ranMID=24542&ranEAID=TnL5HPStwNw&ranSiteID=TnL5HPStwNw-Z6NjEgcaJn8pbbYAema89g&tduid=%2894e0b4bf83daa242de97c8bfb531e5d9%29%28256380%29%282459594%29%28TnL5HPStwNw-Z6NjEgcaJn8pbbYAema89g%29%28%29[https://msdn.microsoft.com/en-us/library/aa366778%28VS.85%29.aspx?ranMID=24542&ranEAID=TnL5HPStwNw&ranSiteID=TnL5HPStwNw-Z6NjEgcaJn8pbbYAema89g&tduid=%2894e0b4bf83daa242de97c8bfb531e5d9%29%28256380%29%282459594%29%28TnL5HPStwNw-Z6NjEgcaJn8pbbYAema89g%29%28%29]>
>
>
> I actually I didn't know about IMAGE_FILE_LARGE_ADDRESS_AWARE
> until now. Miller could actually use it in his 32-bit Windows
> builds, which currently only allow 2 GB**. It won't do any harm on
> 32-bit systems and doubles the available memory on 64-bit systems.
>
> > fun fact: on linux, you can use 64bit Pd for >10 years with
> virtually
> > all external libraries working.
>
> :-o. time to finally get my dual boot. I weren't so lazy...
>
>
> Christof
>
>
> * IMAGE_FILE_LARGE_ADDRESS_AWARE set + 4GT enabled (risky)
> ** I tested this with latest vanilla 32-bit binaries on Windows 7
> 64-bit (with 16 GB of RAM installed). I get a warning when I try
> to exceed 2 GB.
>
>
>
> > Gesendet: Montag, 27. Februar 2017 um 22:58 Uhr
> > Von: "IOhannes m zmölnig" <zmoelnig at iem.at
> <mailto:zmoelnig at iem.at>[mailto:zmoelnig at iem.at
> <mailto:zmoelnig at iem.at>]>
> > An: pd-list at lists.iem.at
> <mailto:pd-list at lists.iem.at>[mailto:pd-list at lists.iem.at
> <mailto:pd-list at lists.iem.at>]
> > Betreff: Re: [PD] soundfiler alternative?
> >
>
> > On 02/27/2017 10:45 PM, Christof Ressi wrote:
> > >> well, [table] stores the samples as floating point (taking 4
> bytes per
> > >> sample; and 8 byte on 64bit systems),
> > > It depends on your Pd (32-bit or 64-bit), not on the system.
> >
> > well yes, true.
> > i keep forgetting of abominations like running a 32-bit Pd on a
> 64-bit OS.
> >
> > >
> > >> however, there is a simple solution at hand: get youself
> plenty of RAM
> > >> and pre-load everything into tables.
> > >> 32GB cost about 250,-€ and will allow you to load approx. 24h
> of raw
> > >> audio, which is probably enough.
> > > Unfortunately, this is only true for 64-bit processes. A
> single 32-bit process can't handle more than 2^32 bytes (~4 GB).
> In reality, it's even less, usually 2 GB, which is a bit more than
> 1,5 hours of stereo audio @44100 Hz. Pd will give you a warning
> when you try to exceed this limit ("pd: resizebytes() failed - out
> of memory").
> >
> > how much RAM does that machine have?
> > decent OSs should be able to manage more than a total 4GB of RAM
> even
> > when the entire OS is 32bit (a single application will not be
> able to
> > address more than 2^32 bytes though; but it should get you closer to
> > really having 4GB, rather than 2GB)
> >
> > but yes, in order to make use of 32GB of memory you need a
> native 64bit
> > application (running on a 64bit OS).
> >
> > fun fact: on linux, you can use 64bit Pd for >10 years with
> virtually
> > all external libraries working.
> >
> > gmsr
> > IOhannes
> >
> >
> >
>
> > _______________________________________________
> > Pd-list at lists.iem.at
> <mailto:Pd-list at lists.iem.at>[mailto:Pd-list at lists.iem.at
> <mailto:Pd-list at lists.iem.at>] mailing list
> > UNSUBSCRIBE and account-management ->
> https://lists.puredata.info/listinfo/pd-list[https://lists.puredata.info/listinfo/pd-list]
> <https://lists.puredata.info/listinfo/pd-list%5Bhttps://lists.puredata.info/listinfo/pd-list%5D>
> >
>
> _______________________________________________
> Pd-list at lists.iem.at
> <mailto:Pd-list at lists.iem.at>[mailto:Pd-list at lists.iem.at
> <mailto:Pd-list at lists.iem.at>] mailing list
> UNSUBSCRIBE and account-management ->
> https://lists.puredata.info/listinfo/pd-list[https://lists.puredata.info/listinfo/pd-list]
> <https://lists.puredata.info/listinfo/pd-list%5Bhttps://lists.puredata.info/listinfo/pd-list%5D>
>
> --
>
> José Rafael Subía Valdez
> www.jrsv.net <http://www.jrsv.net>[http://www.jrsv.net
> <http://www.jrsv.net>]
>
>
> _______________________________________________
> Pd-list at lists.iem.at <mailto:Pd-list at lists.iem.at> mailing list
> UNSUBSCRIBE and account-management ->
> https://lists.puredata.info/listinfo/pd-list[https://lists.puredata.info/listinfo/pd-list]
> <https://lists.puredata.info/listinfo/pd-list%5Bhttps://lists.puredata.info/listinfo/pd-list%5D>
>
>
>
>
> --
> José Rafael Subía Valdez
> www.jrsv.net <http://www.jrsv.net>
>
>
>
>
>
>
> _______________________________________________
> Pd-list at lists.iem.at mailing list
> UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
More information about the Pd-list
mailing list