Poor man graphic equalizer with adau1701
Hi guys,
i've been trying to implement a simple multiband graphic EQ where each band level can be easily controlled by aux ADC or DC blocks. Each band is made from 2nd order general lo-pass and hi-pass filters, gain and signal merger. It can go to +-12dB and you can set Q too.
Depending on configuration (more on this later) i guess you can have up to 15 bands, probably more.
Following is probe simulation compared to Parametric EQ cell. To boost/cut change value of gain cell: a 0 value will set it flat, a positive value will boost and a negative value will cut.
Q factor of each band is set by setting Q of each filter, it's not straightforward to set (it's poor man EQ for a reason...) and probably an A/B comparison with a reference equalizer cell is needed to understand better how it works. Maybe some of you will figure out the relationship better than me. In the example Q is set to 1.8 both for Parametric EQ than Graphic EQ:
Now if you replace the gain cell with a DC controlled Volume cell and add an interpolator, you can control the boost/cut with a DC block or aux ADC. In this configuration the minimum bands possible should be 15 as the interpolator itself takes up some memory space:
***Update***
After adding more bands to it i've found you don't need to merge the filtered signal with dry signal for each band, this saves a few memory! Only feed the dry signal to ADD cell. With all gain cells at 0 you get a perfectly flat curve from simulation:
graphicEQtest.zip
Let me know what you think about!
Hope someone will find it useful
Cheers!
Omar
Edit Notes
added file
[edited by: op-electronics at 10:02 AM (GMT -4) on 12 Oct 2020]
Audio Signal Processors
sigma studio
adau1701 graphic eq
SigmaDSP Audio Processors
adau1701
Hello Omar,
Looks good.
Here was my attempt at doing a graphic EQ with an ADAU1701 a while back. I think your program may be smaller. If you want more fine control in my example you have to have a lot of curves which will use a lot of memory. Yours is continuous.
Dave T
1780.ADAU1701 Graphic EQ Example.zip
Hello Dave, thank you!
Mine has issue with Q being not the same for boost/cut. Q factor of CUT is narrow than BOOST, probably i still have to play a bit with it. However it's always a lot of fun to experiment with SigmaDSP as one can achieve the same task in so many different ways (and with little efforts).
Unfortunately i'm having troubles with SigmaStudio crashing and corrupting files, lost a whole day of work yesterday
Omar
Hello Omar,
I assume you are using the most recent revision? You may be having system issues that are causing issues with SigmaStudio. I have never had this happen. It would be a good idea to create a backup copy of all your projects before you open them and start working on them. Then save every once in a while, close SigmaStudio then reopen the file. If it crashes you will hopefully not lose too much work.
Dave T
Hello Dave,
yes running version latest version, 4.5
Now i noticed that even the algorithm uploaded on this post crashes. Could you please verify if it crashes on your side too?
Thank you
Omar
Hi Omar,
On my end, SigmaStudio (both 3.17 and 4.5 versions) doesn't even try to open the project graphicEQtest.dspproj. Not even an error message, it just quits trying after about one second. Thus I must agree with Dave about backups. I try to remember to save off multiple versions of larger projects and make copies of them before re-opening them. You got to love the antique computer hardware in this video!
Hello Bob,
same behaviour as me, it doesn't open and subsequent actions on SigmaStudio make it crash.
Yesterday (not the song), i started to work from zero on a new graphic eq algorithm. All went well and saved it. Today i'm opening the file and to my surprise...it's not opening again!
I never had such issue so frequently. Well, sometimes SigmaStudio crashes and i had corrupted files in the past but not with such reiteration and on the same algorithm topology.
Now, or it's my installation/system that does have issue (but only with this particular algorithm project?!) or there's a bug somewhere in the software which doesn't like some combinations of cells or certain operations.
I will backup minor versions next time, but if the final version of the algorithm is corrupted the moment you hit the save button there's no backup that can save it
Now i'm going to build the algorithm once again and see if i can repeat the issue, going by exclusion and saving a new file each time i make a change.
This is some very unfortunate project! I would have to call it Cursed Graphic EQ.
That cover of Yesterday is funny as hell. It really depicts how you feel when data is lost...
Cheers!
Omar
Please log in to reply.
