I made a little port of WebAudio API Filters to Rust

Hello,

I made a little port of the WebAudio API filters that area implemented as parameterized coefficients of a 2º order BiQuad IIR filter.

Then I also added the notch filter that was lacking in the original code.

Normally the implementations of the code for the WebAudio API are in C++, but I ported from a Python version. It’s a very simple implementation, but it’s easy to follow, study and understand. I have also I excited the filters with a Dirac impulse and and plotted the impulse response of the filters. Gain(dB) vs frequency and Phase Shift vs frequency. All the plots are in the project page.

The list of implemented audio filters are:
-low-pass
-high-pass
-band-pass
-all-pass
-peak
-PeakEQ_constant_Q
-low-shelf
-high-shelf
-notch
-10 band parametric equalizer

Audio filters in Rust
https://github.com/joaocarvalhoopen/Audio_filters_in_Rust

In the project page you can find references to extensive resources on the subject.

Thank you,

Best regards,
João

Hello,

Yesterday I had a little free time and also implemented a 10 Band Parametric Equalizer with a new type of filter the PeakEQ_constant_Q, also over a 2º order IIR BiQuad filter, ten chained in a sequence. I updated the project page with an example of Equalizer settings and the corresponding frequency response, in terms of gain(dB) and phase shift. I also added extensive references about the subject so that others can also do the same journey that I did, and implement there first 10 band parametric equalizer in Rust.

Thanks,

Best regards,
João

This topic was automatically closed 90 days after the last reply. We invite you to open a new topic if you have further questions or comments.