How do I write oversampling into my EQ script?

Official support for: bluecataudio.com
Post Reply New Topic
RELATED
PRODUCTS

Post

Hello! I'm writing an EQ that copies a piece of analog gear I have, and the main issue I'm running into is cramping near nyquist. I've read that oversampling is the way to fix this since it moves nyquist up so cramping happens outside of the audible range. And to oversample you add zeroes between each incoming sample, lowpass at original nyquist, do all of the processing, lowpass at original nyquist again, and then remove all of the samples that started as zeroes.

I see the angelscript manual has this:
"void insertAt(uint index, const T& in value)
void insertAt(uint index, const array<T>& arr)
Inserts a new element, or another array of elements, into the array at the specified index."

and this

"void removeAt(uint index)
Removes the element at the specified index."

and those look like they might be useful for this, but I can't conceptualize of how to actually write an oversampling script.

Any ideas?

Thanks!

Post

Hi,

Sorry for the delay. Oversampling actually requires quite a bit more than adding/removing samples. You need to do extra filtering to avoid aliasing, there is a bit of math involved.

Post

I think you will have a very hard time doing oversampling in AngelScript, cause it will be too slow. It's doable in C++, but I suggest you learn how to visualize everything properly to see original and oversampled signals, too see if everything looks as expected, see phase/time shifts etc.
Not a starter's task imho!
Maybe BCA will add oversampling routines to Angelscript someday.

Post

you might be able to get free ai help... I have been having a heck of a time trying to compile to a language I have never used before but the tools seem to be amazing.

Post Reply

Return to “Blue Cat Audio”