I am working on some audio buffer manipulation tools and I am experiencing an issue when I use list-rev to reverse the content of a table.
I know I can use a phasor with negative values for playback speed and other ways, to play it back in reverse, but that's not the goal, the goal is to literally reverse the table content, not just playing it back in reverse. It's a step in a longer process, so has to be "hardcoded" to the table.
This is what I tried for now:
It works fine for smaller tables, like 64 or 258 samples, but when you get up to something bigger like 1 second of audio, 44.100 samples(even at 10.000 samples), PD gets seriously sluggish. It takes like 5-10 seconds and freezes PD for those 5-10 seconds.
I am confident it's the list-rev abs, I think it's because it actually has to create a list of 48000(n) indexes and then reverse them, which seems to be a bit much to handle for PD.
I tried doing this too, where I can control the speed of how fast it does the list creation, but if I set it to a speed where it work, it take a pretty long time to reverse just 1 second of audio:
Any suggestions for doing this in a way that doesn't strain PD/Cpu as much and does it at a reasonable speed?
Here is the patch: