custom graphic equalizer filter
play

Custom Graphic Equalizer Filter Carlos Rafael Gimenes das Neves - PowerPoint PPT Presentation

Custom Graphic Equalizer Filter Carlos Rafael Gimenes das Neves Allow me to start by telling a short story In the beginning there was Winamp! Cool! What kind of plugin can I create for it?! Hey, its equalizer doesnt follow ISO


  1. Custom Graphic Equalizer Filter Carlos Rafael Gimenes das Neves

  2. Allow me to start by telling a short story…

  3. In the beginning there was Winamp!

  4. Cool! What kind of plugin can I create for it?!

  5. Hey, its equalizer doesn’t follow ISO standards! 60 170 310 600 1k 3k 6k 14k 16k

  6. That’s it! I will create a new equalizer for Winamp!

  7. However… Hold on a second… Winamp already has plenty of good equalizer plugins!

  8. And most important… What are equalizers made of?!?!

  9. Considering those points… Why sticking to the idea…?

  10. Considering those points… Why sticking to the idea…? Any reason is a good reason to study and listen to some music!

  11. So, let’s get going! Straight to the studies! What could be so difficult, anyway?

  12. Better think again! Frequency domain Time domain

  13. A “while” later, I was at least able to understand what all that DSP jargon meant

  14. A “while” later, I was at least able to understand what all that DSP jargon meant

  15. Much later, an equalizer came out… …well, a sum of 10 isolated band-pass IIR filters, actually

  16. Going deeper into DSP, I was introduced to FIR filters, and the whole concept of convolution

  17. Which, in turn, led me to Fourier Transform

  18. That’s when an idea struck me If I’m already going to transform the audio into frequency domain, why not allowing the user to adjust more than 10 bands?

  19. That way the users would be given more power to fine tune their equalizer!

  20. It took a lot of time, and also a lot of studying, but the result finally came out a few years ago!

  21. Creating the filter Stipulate L, the Map those Obtain an array filter’s length (L amplitudes into of amplitudes must be a M + 1 complex from the user power of 2 for numbers the FFT to work) (M = L / 2) Apply the Apply the FFT Apply the desired window inverse FFT on on the samples function on the first M + 1 the complex to obtain the samples, zeroing out the numbers to filter’s response rest (to smooth the filter, obtain the in frequency improving the overlap-add filter’s response domain again! method) in time domain

  22. Creating the filter Stipulate L, the Map those Obtain an array filter’s length (L amplitudes into of amplitudes must be a M + 1 complex from the user power of 2 for numbers the FFT to work) (M = L / 2) Apply the Apply the FFT Apply the desired window inverse FFT on on the samples function on the first M + 1 the complex to obtain the samples, zeroing out the numbers to filter’s response rest (to smooth the filter, obtain the in frequency improving the overlap-add filter’s response domain again! method) in time domain

  23. Applying the filter Fill an array Apply the FFT Multiply the called DATA on DATA, which filter by the with M audio results in M + 1 M + 1 complex samples + M complex numbers zeroes numbers Apply the Add the M Copy the last M inverse FFT on samples from a samples from the complex secondary array, DATA into LAST, numbers, called LAST, to and repeat the obtaining a the first M whole process filtered version samples of as necessary! of DATA DATA

  24. Applying the filter Fill an array Apply the FFT Multiply the called DATA on DATA, which filter by the with M audio results in M + 1 M + 1 complex samples + M complex numbers zeroes numbers Apply the Add the M Copy the last M inverse FFT on samples from a samples from the complex secondary array, DATA into LAST, numbers, called LAST, to and repeat the obtaining a the first M whole process filtered version samples of as necessary! of DATA DATA

  25. Enough talk! Let’s cut to the demonstration!

  26. The source code is available at: https://github.com/ carlosrafaelgn/ GraphicalFilterEditor

  27. The project can be tested at: carlosrafaelgn.com.br/ GraphicalFilterEditor

  28. Thank you!!! Questions?! Suggestions?! Leather texture: fantasystock.deviantart.com/art/Cracked-Leather-Texture-1-66541079 Light waves: csys-279.deviantart.com/art/Light-Wave-Wallpaper-193489523

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend