Saturday, March 11, 2017


2.2.1 (03/09/2017):
-Fixed crash when executing a search with nothing but blank spaces
-New m4a decoder is now available to lollipop devices
-Fixed issue loading embedded album art when the "prefer embedded art" option was off
-Effects view now shows the correct effects when the custom audioengine is disabled
-Fixed crash on the Lenovo A6000 when raising volume above the "safe media volume"
-Other various fixes

Thursday, March 2, 2017

2.2 Released - Android Auto support & On Sale for $0.99 USD through March 12th

2.2 is finally ready to go.  Major updates were the additional of Android Auto support, a new m4a decoder (a lot of devices shipped their 6.0+ updates with broken opensl decoders, which gmmp previously used for m4a playback), and a lot of voice search improvements.  Also included are a few nice bug fixes that should improve stability.

One other thing to note is GMMP 2.2 (and 3.0 hopefully later this year) requires an android device running at least 5.0 or higher.  5.0+ represents about 80% of the active installs, so it was time to increase the minimum to take full advantage of the newer apis.

This is the playback screen when in landscape 

Menu options

More menu options (Artists, Albums, and Genres are off by default but can be enabled by turning on the Full Android Auto Access option)

Queue with the icon next to the current playing track

Playlists menu combines both smart playlists and playlist files

All Artists

Auto has the option to filter by letter


View when outside of the music player in Auto.  It has widgets for each auto app

2.2.0 (03/02/2017):
-Added Android Auto support
-Added Full Android Auto Access option in Prefs -> Library to allow access to all artists, albums, and genres
-Added new m4a/aac decoder to replace opensl on android 6.0+
-Added support for .oga extension (ogg audio)
-Added support for opus files with the .ogg or .oga extension

-Voice search refactoring/improvements
-More voice search accuracy improvements
-Added genre voice search
-Added unstructured voice search support
-Refactored data access layer
-Audiofocus is now persisted if the music service is restarted by the OS
-Playback will no longer auto resume after audiofocus loss (always play on plugin is not affected by this)
-Unlocker validation moved to the MusicService
-Updated crashlytics to 2.6.6
-Updated translations
-Improved sample rate, channel count, and duration detection
-GMMP should no longer auto resume when regaining audiofocus after a full loss (like using another player to play audio)
-Upgraded Glide to 3.7.0
-GMMP will now attempt to free up memory when the OS requests it

-The full length audio file associated with a cue will no longer show in the library views
-Fixed audioengine crash when changing tracks multiple times in a short period of time
-Fixed memory leak
-Other various minor bug fixes

-Removed support for kitkat and below
-Removed any code specific to kitkat or below
-Removed music service timeout (interferes with a lot of functionality)

Friday, January 20, 2017


2.1.4 (01/14/2016):
-Music service will stay a foreground service to prevent it from being killed/restarted when show when paused is true and dismissable notifications are turned off
-Notification controls now properly update after changing tracks when paused/stopped
-Fixed tasker support
-Persist auto resume when music service restarts or is killed
-Fixed issue reading album art from APEv2 tags
-Improved APEv2 tag reading
-Upgraded google play services to 10.0.1
-Upgrade support library to 25.1.0

2.1.3 (12/01/2016):
-Added option to disable dismissable notification controls when paused (Android 5.0+)
-Disabled "Show in status bar" on Android 5.0+ due to google removing the capability in 5.0
-Fixed crash when trying to save playlists to a location where gmmp does not have access to write
-Fixed blank notification issue
-Composer no longer defaults to artist tag if composer tag is not present
-Other minor fixes

Tuesday, January 3, 2017

2017 Plans

I've been fairly quiet on here for the last few months but I wanted to give an update on the plans for this new year.

2.1.4: Tasker users are probably aware that the lastest version of tasker no longer works with gmmp due to an api change made by the tasker dev.  The next update will fix that along with another small annoyance I found regarding the auto resume not working if the OS restarts the music service (which seems to happen after not using gmmp for an hour or 2). This should be released in 2-3 weeks.

2.2: The next major update will add android auto support.  I have it working currently with limited access to gmmps content (just the queue so far).  Due to the guidelines android put out for auto, gmmp will only expose some thing by default like the queue,  top songs,  recently played, and other things like that.  The reason for this is so the update will get approved by the play store.  According to their docs they do manual testing of the auto support and everything must comply with their guidelines.  I will however,  add an option in the settings to expose the full library.

2.2 will also remove the support for kitkat in order to start the transition to some of the 5.0 apis that will really help out the app.  The first will be the switch to vector graphics which should reduce the size of the app by a fairly large amount.  In earlier versions of android i had to include images for every screen size for every icon / image.  Vector drawables allow me to just include one file for each icon and android will scale it to the appropriate screen size with no loss of quality.

The other big change will be a new aac decoder using the MediaCodec api.  A few manufacturers shipped their 6.0 updates with a completely broken  implementation of opensl (which is what gmmp uses for aac playback).  OnePlus is the big name that comes to mind but a few others have done it as well.  This new api should allow aac playback again in gmmps audioengine on those devices.

Betas with auto support should start being released in 3-4 weeks.  Final release wont be for a couple of months most likely.

While working on 2.x i have also been doing some work on 3.0. Mainly a new theme engine for gmmp.  It will allow me to dynamically color the ui with any arbitrary color set and also switch color sets without restarting the UI.

Its coming along nicely in a demo app i wrote which i plan on showing some previews on here when i feel its ready.  Integration will gmmp wont happen until 2.2 is finished however. For those who did not read my other post about 3.0, it will mostly focus on rewriting the UI.  I will start from scratch leveraging all the material design animation libraries and other niceties added in 5.0+. The base of the current UI was from the gingerbread days so it really just needs a rewrite.

I would like to start pushing out early 3.0 betas in the late summer.  Betas will mostly continue throughout the rest of a year with a final release at the end of 2017 or early 2018. It really all depends how much time i get to work on gmmp this year.  Im changing positions at my day job next months so i will probably not be as burned out on coding as i have been these last 2 years (hence the slower progression in the app)

Wednesday, November 23, 2016

GMMP 2.1.2

2.1.2 (11/23/2016)
-Rewrote cast device discovery.  Should be much more accurate and responsive now
-Show notification when paused defaulted to true
-Notification controls can now be swiped away when music is paused/stopped
-Updated Slovak translation
-Added new command intents:

Black Friday Sale - $0.99 USD through 11/27/16

I am putting the GoneMAD Music Player Unlocker up for sale for 99 cents for the rest of the week.  Now is the time to get it cheap!

Thursday, October 27, 2016

GoneMAD Music Player 2.1.0 Released

After 5 months of development, GMMP 2.1 is finally here.  This release was mainly a stop gap between 2.0 and 3.0 which will have an entirely new UI.  There have been some long awaited features that I felt needed to be added before dropping support for some older versions of android.  2.1 drops support for jelly bean and 3.0 will drop the support for kit kat.  However 3.0 is a long ways away and will truly benefit all the 5.0+ users since google added some great UI apis in android 5 (like the animation api).

The new update will be rolled out to 20% of the users today and I will increase that to either 50% or 100% depending on whether issues pop up.

Some of the bigger newer features are as follows:

Share Option

The ability to share what you are playing with others in text form and file form have been asked for by tons of users and gmmp 2.1 finally adds that option.

Selecting Now Playing Info will let you share the name of the current artist and song you are playing in text form.  Selecting file will send the file to whatever app you select.

New Higher Quality Album Art Source

GMMP will now give you the option of higher resolution album art than what was previously offered.  The auto download will still choose the original source first (so lower end devices arent auto downloading 1600x1200 images), however the album art selection UI will show the highest quality image first assuming there is a match.

Higher quality source
Original source

Google Now Integration

Voice commands and text searches will now allow you to play music in GMMP.  

  • Play [Artist]
  • Play [Album] by [Artist]
  • Play [Song] by [Artist]

Keep in mind that Google Now is in charge of translating the voice into a search command into GMMP, so it will only work if google now finds something on the device.  By default it will also search play music streams.  So it might be beneficial to turn off play music as one of the searching options in google now

Saving Ratings to File

The last big new ability in GMMP 2.1 is the ability to save ratings to the tags of the audio file.  This happens by default when you rate your music.  For those with tons of music already rated, you can use the "backup stats" option in the settings and it will not only save the stats to the stats.dat file, but will also save any ratings in the gmmp db into the tags of the audio file

Full Changelog:
2.1.0 (10/27/2016)
-Added google now voice command support for playing artist, album, or song
-Added new higher quality album art download source
-Added share option (now playing info or file)
-Added ability to save ratings in tags
-Backup stats will now save ratings in the tags if they are not already set
-Added support for mp2 audio files
-Added toast when toggling repeat via now playing menu
-Added option to disable scans when Android Media Library Updates (Prefs -> Scanner -> Setup Auto Scan -> Sync With Android Media Library)
-Added option to set write permissions straight from the settings (Prefs -> General -> Device Prefs -> Enable Write Permissions)
-Added logic to fix poorly constructed playlists so they will load faster
-Added intent to change themes.  action:gonemad.gmmp.command.THEME, extra: key=themeId value="Style Name" (ie "Classic Dark Cyan")
-Added option to disable album art on lockscreen
-Added %fs% for filesize in custom metadata lines
-Added date added to the stats backup/restore
-Added play next/prev album by artist to gesture actions and media button actions

-Updated to use MediaSession api
-Improved parsing of synchronized lyrics
-Renamed gapless setting to enable/disable gmmp's custom audioengine
-Changed default menu actions for now playing (all but toggle fullscreen, jump to playing menu, and toggle split view are now enabled by default)
-Reset enabled now playing menu options
-Disc number tag is now read in MPC files
-Added ability to write albumartist and disc number to MPC files
-Updated support library to 25.0.0
-Updated play services to 9.6.1
-Force left align for text from tags stored in a RTL language
-Updated translations
-Reduced default buffer size on 5.0+
-Defaulted stop on full audio focus loss to true
-Touchscreen no longer required (recommended for chromebook support)
-Changed audio output to use official AudioTrack api instead of unofficial
-Reset trial
-The trial expired / invalid unlocker message pop up will now launch straight to the unlocker in google play / amazon when okay is selected

-Fixed issue where sdcard write access is not saved when using 'save to playlist'
-Fixed crash when saving new playlist
-Fixed crash during song transition
-Fixed writing albumartist tag in m4a files
-Fixed other various crashes

-Removed "Disable ICS lockscreen controls"
-Disabled album art option for 2x1 widget
-Removed support for pre kitkat devices
-Removed high priority receiver option (no longer needed with MediaSession api)