[PD] vanilla partitioned convolution abstraction

Lucas Cordiviola lucarda27 at hotmail.com
Tue Jan 8 18:23:01 CET 2019


It freezes my windows machine if opening on Pd-64bit.

On Pd-32bit I get the console spitting multiple:

pd: resizebytes() failed -- out of memory

:(

Are you sure [clone ./convpartition 688 church.wav 1007] is correct?


Mensaje telepatico asistido por maquinas.

On 1/8/2019 1:52 PM, Alexandre Torres Porres wrote:
oops, I hads uploaded the wrong file, here's the hopefully correct and last word on it

https://www.dropbox.com/s/05xl7ml171noyjq/convolution~.zip?dl=0

and my CPU load is actually at about 57%, not 50%

The last file I uploaded was using a compiled object to perform the complex multiplication and that helped a little with the efficiency. I'm gonna use it for my non vanilla abstraction that I'm bringing into my ELSE library.

cheers



Em ter, 8 de jan de 2019 às 14:13, Alexandre Torres Porres <porres at gmail.com<mailto:porres at gmail.com>> escreveu:
Ok, here's the new deal...

https://www.dropbox.com/s/l69gzv98g3th5d1/conv.rev~.zip?dl=0

there are two subpatches for testing, one is light with a relative big window partition (1024) and a short Impulse Response (2 secs).

The other is quite heavy, it's an 8 sec long IR with a window size of 512! This one takes just a bit over 50% of my CPU power, and I'm on a last generation macbook pro (2.6Ghz processor)... but I need to increase the Delay (msec) from 5 to 10 in the audio settings, otherwise I get terrible clicks!

William Brent's convolve is ridiculously much more efficient, the same parameters take about 14% of my CPU power and I can use a delay of 5 ms in the audio settings.

But anyway, this is useful for teaching and apps that implement a light convolution reverb (short IR/not too short window) need pure vanilla (libpd/camomille and stuff)

Cheers!

Em dom, 6 de jan de 2019 às 14:25, Alexandre Torres Porres <porres at gmail.com<mailto:porres at gmail.com>> escreveu:
Meanwhile, I deleted the original file so people can't get it anymore :)

Em dom, 6 de jan de 2019 às 14:16, Alexandre Torres Porres <porres at gmail.com<mailto:porres at gmail.com>> escreveu:
Hi, quick updates and developments over my weekend

On Thursday, 3 January 2019, 04:19:50 GMT, Alexandre Torres Porres <porres at gmail.com<mailto:porres at gmail.com>> wrote:

what you think, is it working?

So, the patch/algorithm was wrong and I've fixed

Both objects on the help file take about 40% of my CPU power, but I'm on a wild machine

I was able to do a few more things and make it much more efficient

I tried the idea of having each partition work with FFT saved on tables, so we wouldn't need to perform FFTs in different instances of clone, but that doesn't seem to be possible.

This is because things were wrong, like I said, now that I've fixed it, that was possible.

But my current version is not vanilla anymore, as I'm developing this object to include it in my "ELSE" library. Once I'm done I'll try to make another vanilla compatible abstraction and re share it!

Cheers



_______________________________________________
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

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20190108/fbbcdb1a/attachment.html>


More information about the Pd-list mailing list