Skip to main content

3.0 Work in Progress 14: Equalizer and Effects UI

Before I get into the new UIs, I want to mention some of the behind the scenes work that has been done since the WIP update.  I mentioned in the last blog post that I completely rewrote the DSP / Effects backend (everything besides whats in the audioengine).  Since then I also ended up replacing the theme engine with a library called Aesthetic.  It was pretty similar to the custom theme engine I had written before, but I felt it was better written and had other users maintaining it which is always a plus.  It also was backed by RxJava2 which is something I've been using throughout the 3.0 rewrite and it makes changing theme colors on the fly much easier than my custom theme engine.  I did a massive cleanup and restructuring of the gmmp project.  I removed all the legacy code that has been rewritten and have split up the project into 4 main modules (this is done for much faster compile times): common, data, playback, ui/main.

When I look at the breakdown of languages used on my gitlab we see these numbers

Java 67.93 %
Kotlin 31.72 %
RenderScript 0.35 %

So despite all the stuff I have rewritten, about 2/3rd of the non audioengine code has still not been touched (all the 3.0 work was done in kotlin).  I dont have any plans to rewrite everything but it just shows how large the project has become over the last 7 years


I decided to split the equalizer into its own view and have the other effects on a separate tab.  I did get a lot of complaints about having to go through a lot of steps just to get to the equalizer.  It is much more accessible now.  Also on the effects UI, I added switches for each effect and sliders for anything that can be adjusted.  Previously some things like bass boost strength, and limiter attack/release were hidden away in the preferences.


I still have a bit of testing to do to make sure all the effects actually are being applied correctly, but from the UI standpoint things are pretty much where i want them to be.




Next up will be the playlist file UI which should be pretty straight forward

Popular posts from this blog

GoneMAD Music Player 4.0 released and is now free!

GoneMAD Music Player 4.0 is now fully rolled out!  After 14 years since initial release as being a paid app, I've decided to try something different and switch to being free with ads.  The market is completely different nowadays compared to the early 2010s.  Ads are everywhere and users typically do not want to pay for apps / games / etc.  But don't worry, those users who previously purchased the unlocker or in app purchase unlock will continue to get an ad free experience.  New users will also have the option to purchase an in app purchase to permanently remove ads.   Note: There is a bug with 4.0 where users with the standalone unlocker may see ads when they first upgrade.  You typically fix this by just force stopping the app and restarting.  Ads should not come back after that.  Alternatively you can contact gonemadsoftware@gmail.com and I can help you out as well.  I have no intention on making users who already paid see ads. W...

GoneMAD Music Player 4.0 fixes (4.0.1 - 4.0.4)

There have been a few updates for GMMP 4.0 fixing issues since the release.  This post covers all of them so far.  4.0.4 should hopefully be the last one for a bit.  I think I fixed everything that has been reported so far that I could reproduce. 4.0.4 is currently in review and should be available on Google Play shortly Changelogs: 4.0.4 (2025-08-22): Fixed crash playing audio with more than 8 channels Fix rare crash trying to seek Crossfade errors should no longer stop playback Fixed date added getting set incorrectly on a long/restarted initial scan Fixed issue updating album artist art for album artists with no associated tracks Fixed smart crossfade. It will no longer incorrectly crossfade on consecutive tracks Status bar icon color should now match toolbar icon color Fixed some text / button colors when using dynamic theme 4.0.3 (2025-08-18): Updated translations Another audioengine fix 4.0.2 (2025-08-14): Smart playlists should now show the correct results when nav...

4.1

4.1 marks the end of life for Android Lollipop (5.0/5.1).  Some of GMMP's dependencies require the SDK level 23 or higher, so I was forced to also increase the min sdk to 23 (android 6.0).  According to the google play store statistics there are around 50 or so users on 5.0/5.1, so I do apologize for dropping support.  10 years of support is fairly decent nowadays anyway.   I've also increased the target SDK to android 16.  With this increase I had to account for the forced "edge-to-edge" that google is making all apps support.  If any UI element ends up behind the navigation buttons, certainly let me know.  I am pretty sure I did everything correctly but I only had one device that I was able to test on (pixel 6a) 4.1.0 (2025-09-03): Updated target SDK to Android 16 Updated dependencies Updated translations