View Single Post
Old 05-09-2019, 02:56 AM   #64
sai'ke
Human being with feelings
 
sai'ke's Avatar
 
Join Date: Aug 2009
Location: NL
Posts: 1,457
Default

Quote:
Originally Posted by nitsuj View Post
I already looked at it (and the original) Don't sweat it though, you've got a good result. ReEQ was my first foray and I'm steadily tidying up and refactoring as I go.
It's a lot cleaner than my first foray

Quote:
Originally Posted by nitsuj View Post
Great! Would be a boon for Reaper JSFX devs to have a good reference source of oversampling.

If you look at the ReEQ oversampling include file you'll see that I managed to create further optimisations due to zero padding but I think that's because the zero padding only advanced the state of the filters and could be decimated. I managed to get rid of one buffer shuffle too as a result, instead doing it twice in one go.
Actually, I've been using ReEq's firhalfband to check the code and coefficients that I generate. I will make sure to acknowledge it. It's nice to have a known-to-work reference

The polyphase one implicitly does advance history by two as it keeps a history 1/oversampling in size.

The symmetries I did not yet use though. I did add them yesterday, since they are still worth exploiting too.

I ran a few tests yesterday, but I don't fully null yet. I seem to be off by what seems to be half a sample from what I expect. I run the lowpass FIR twice, so I'd expect a ( 2 * (N-1)/2 ) / ratio delay.

I will have a closer look soon, but it was getting late yesterday and I had to go to bed, so I didn't push the new version yet
__________________
[Tracker Plugin: Thread|Github|Reapack] | [Routing Plugin: Thread|Reapack] | [More JSFX: Thread|Descriptions|Reapack]

Last edited by sai'ke; 05-09-2019 at 05:42 AM.
sai'ke is offline   Reply With Quote