Creating my own custom Audio Processing stream plugin

birdwes
Posts: 2
Joined: Thu Mar 26, 2020 9:58 pm

Creating my own custom Audio Processing stream plugin

Postby birdwes » Thu Mar 26, 2020 10:14 pm

I realise that there are Audio Processing plugins which exist such as "Downmix" and "Equalizer".

Is there a reference anywhere as to how to create my own custom Audio Processor. I already have my code for the processing part. I just need an indication as to how to integrate it with the I2s streams coming in and going out.

If I could find the source code to the "Equalizer" plugin (not the API example), it would point me in the right direction. Is it publicly available?

If not, a simple demo plugin such as a "null" or "phase invert" demo would do, as long as it has the plumbing.

birdwes
Posts: 2
Joined: Thu Mar 26, 2020 9:58 pm

Re: Creating my own custom Audio Processing stream plugin

Postby birdwes » Sat Mar 28, 2020 7:22 pm

OK, I've figured most of it out now.

it turns out that components/esp-adf-libs/esp_codec/equalizer.c IS the glue code.

I've successfully managed to take it and creat a NULL plugin, ready for my insertion of a replacement for the call to esp_equalizer_process, for my transform.

The only thing left for me to take into consideration is to queue the stream bytes into blocks, as my transform expects a fixed block size. I will use a sliding window to mask the block boundaries.

My hardware setup which is PCM1808 ADC->ESP32->PCM5102A is producing stream messages of length 100. What is that? 32+32 bit words times 100?

Who is online

Users browsing this forum: No registered users and 15 guests