WIP adsp.biquad.filters - Printable Version +- Kodi Community Forum (https://forum.kodi.tv) +-- Forum: Development (https://forum.kodi.tv/forumdisplay.php?fid=32) +--- Forum: Add-ons (https://forum.kodi.tv/forumdisplay.php?fid=26) +---- Forum: Audio DSP (https://forum.kodi.tv/forumdisplay.php?fid=235) +---- Thread: WIP adsp.biquad.filters (/showthread.php?tid=218756) |
adsp.biquad.filters - AchimTuran - 2015-02-23 Hi community, today I will introduce my work on adsp.biquad.filters addon. With this addon we will finally have the so long awaited audio equalizer in Kodi, which is based on my signal processing library asplib. The addon and the library isn't finish, but I want to show some results and open a new thread for discussion. The filter is implemented in C/C++ and embedded in a DLL. This allows me to load the DLL with Matlab and then analyze the output signal. Really great work flow. So it was possible to measure the frequency response of a constant-Q 10 band equalizer: Matlab screenshot: Next steps are:
Short overview about technical details:
The first version of this addon will be really simple and you can only set the parameters for all channels. But in future versions I will add:
EDIT: Because a Biquad filter is very flexible (you can use it as low-, high-, bandpass filter or as notch filter), I renamed the addon to adsp.biquad.filters. I hope you guys like the new name. Some more news will follow. RE: adsp.parametric.eq - prubio - 2015-02-23 superb! I'll follow he threat to see the outcome. Looks promising. RE: adsp.parametric.eq - leonpierresusan - 2015-03-02 Awesome work! Thank you for this. RE: adsp.parametric.eq - jackyNIX - 2015-03-02 Nice! I've got an amp, but no eq. A mixer would be nice too. Downmixing 5.1 content to 2.0, well it's like a lot of explosions and no speech. More control over the channels would be nice. RE: adsp.parametric.eq - pike - 2015-03-02 nice Wisler! RE: adsp.parametric.eq - GEEMac - 2015-03-12 Excellent work Wisler, I subbed this thread with email notifications so I can watch your work as you go along. I have quite a few programs for my antenna and radio design work except Matlab. I tried the demo, but that was a bit limited. I'll have to start saving my pennies for a full copy of it since there is quite a few scripts written for it for antenna design and communications in general. As I mentioned in the other thread, that I am an Amateur Radio Operator. I have a major project going on now for EME work (Earth Moon Earth) work. There was even EVE communications (Earth Venus Earth) from a group in Germany back around 2009. I'll stick with the Moon for now. Just in the process of Parabolic dish feed design and your ideas of the audio filtering may come in handy once I get things up and running. I will be operating a 10 foot BUD with a set of designed feeds for communications ranging from 23cm to 3cm bands to bounce my signal off the Moon to other amateurs via voice or JT-65, WSPT and WSPR digital modes. There is a growing market for folks like yourself that can code for communications audio software. You may want to look into that. http://en.wikipedia.org/wiki/Earth%E2%80%93Moon%E2%80%93Earth_communication http://www.arrl.org/news/german-amsat-team-transmits-receives-signals-from-venus But I digressed... Getting back on track with the subject of DRS I'm looking forward to when you are able to have the add-on set for Kodi, Linux. Here are some other links and Papers written On DRS for you. You may already been to these links already, but I'll post for others that may have an interest. System Admins, if these below links are not acceptable, please excuse my ignorance in posting them and feel free to remove them without any hard feelings on my part. General information explaining DRS http://en.wikipedia.org/wiki/Dynamic_range_compression Showing some information using Linkwitz-Riley Crossover Filters and Simulink Version of the Multiband Dynamic Range Compression. http://www.mathworks.com/help/dsp/examples/multiband-dynamic-range-compression.html Tutorials/Dynamic Range Compression http://www.sciencemedianetwork.org/wiki/Tutorials/Dynamic_Range_Compression For the folks that really want your head to explode with information, this is Hardware and Software related. Digital Dynamic Range Compressor Design—A Tutorial and Analysis http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.260.1340&rep=rep1&type=pdf A category that I don't normally fall into. Effects of dynamic-range compression on the spatial attributes of sounds in normal-hearing listeners. http://www.ncbi.nlm.nih.gov/pubmed/22246139 And lastly... I found this for the video buffs which would be quite interesting if this type of video equalization could be added to Kodi. Gradient Domain High Dynamic Range Compression http://www.cs.huji.ac.il/~danix/hdr/hdrc.pdf RE: adsp.biquad.filters - AchimTuran - 2015-03-15 (2015-03-12, 23:25)GEEMac Wrote: Here are some other links and Papers written On DRS for you. Thanks for sharing this links. I really like the ones from mathwork. Quite a nice idea to do dynamic range compression on several frequency bands. I think this is a very good starting point for a new addon: adsp.dynamic.range.compression. But first let me finish the adsp.biquad.filters addon. RE: adsp.biquad.filters - AchimTuran - 2015-03-15 Thank you I'm glad to hear that you like my work. In this post I will share some of my ideas. I think this post will be more for audiophiles and developers. Here is the addon structure I try to implement: The new name and it's new structure will allow use to set up more than a equalizer with several frequency bands. Features that could be implemented as processing modes are:
Short introduction of each block:
A screenshot of the parametric EQ dialog follows in the next days. RE: adsp.biquad.filters - AchimTuran - 2015-03-21 Hi Guys, here is the promised screenshot: At the moment the dialog is very simple and you can control each frequency band with one slider for all audio channels. The final Version will contain more functionality. RE: adsp.biquad.filters - leonpierresusan - 2015-03-22 Thank you wisler! That looks fantastic. RE: adsp.biquad.filters - Lappskij - 2015-04-02 Finally!!! Nice work and kudos for taking the time to make this addon. This is a really great idea. Have been looking around for an EQ solution for a long time. Can't wait to try it out. 1 Q: Any chance you can implement an Automatic EQ scanner for old music files that needs to be adjusted up to todays standards ? - Lappskij RE: adsp.biquad.filters - AchimTuran - 2015-04-02 (2015-04-02, 15:06)Lappskij Wrote: Can't wait to try it out.If I have something stable, I will post this here (2015-04-02, 15:06)Lappskij Wrote: 1 Q: Any chance you can implement an Automatic EQ scanner for old music files that needs to be adjusted up to todays standards ?Nice idea. If we find a paper or an algorithm that can do this then this is possible. With AudioDSP and some work, everything is possible. RE: adsp.biquad.filters - Lappskij - 2015-04-04 (2015-04-02, 18:00)wisler Wrote:(2015-04-02, 15:06)Lappskij Wrote: Can't wait to try it out.If I have something stable, I will post this here Amazing !!!! Excellent!! Will be waiting in suspence for a solution It is People like you that make Kodi the best Entertainment center in the World!!!! RE: adsp.biquad.filters - AchimTuran - 2015-04-29 Hi community, I have some great news about adsp.biquad.filters. After many commits I have here a running parametric EQ with 10 frequency bands. Really cool to listen to it with my Bose headphones and boost up the low frequencies to get more bass in my music. Here is the current feature list:
I will freeze the work on adsp.biquad.filters through two reasons:
I know the features from adsp.biquad.filters are very basic and the GUI isn't very nice, but the underlying source code and software architecture is very flexible. This allows me to add features which aren't available in commercial products. Here is a short list about my ideas:
When I fixed my issues with CMake I will upload my pre-alpha version with Kodi and AudioDSP support for Windows. RE: adsp.biquad.filters - jerry3300 - 2015-05-01 Hello wisler, thank you very much for your great piece of work! I am running OSMC Kodi RC2 on RPi2. I would like to test your adsp.biquad.filters, just downloaded the adsp.biquad.filters-master.zip from GitHub. What is the correct way to install this addon, please? If I try to include this addon from this zip archive I just get the error message that the addon does not have a correct structure. Thank you a lot. |