Skip to main content

1.3.8 - Playback fixes

The addition of opensl has really brought on a lot of playback issues that I've had to overcome.  The issues are 100% the fault of the manufactures of the device, but I was still able to find a work around.

Issue #1:  Some devices like the galaxy s2 and galaxy note decode mono mp3s incorrectly.  Instead of decoding out to mono, they decode the audio into stereo, with the same data in the left and right channel.  Doing this is technically okay as long as they let the user of the decoder know the output is actually in stereo instead of mono.  These devices do not.  They report that the output only has 1 channel instead of 2.  GMMP would try to play stereo data in mono, which would result in playback being slower than normal.  I wrote some code to detect this behavior and it works fairly well, so I believe this is completely fixed.

Issue #2: Adding or removing of audio samples in the beginning of the decoding process.  I have 3 devices that run ICS and on all 3 of them, the mp3 decoder would add extra samples of silence to the beginning of the audio data.  This interferes with gapless playback.  For AAC playback on the galaxy s3, the decoder would completely remove the first 1000 or so samples of audio, which of course interferes with gapless as well.  The other 2 ICS devices do not do this, so there is a inconstancy between the opensl implementations on ICS and newer devices.  I did find a workaround that works on the 3 ICS devices I tested on and should be versatile enough to work on most other ICS devices.

If you run into either of these issues on 1.3.8, you can turn off opensl through preferences -> audio -> enable opensl.  Please send in an email if you do experience the issue.

You may ask why OpenSL is even used if it is causing so many problems.  The reason is the non opensl mp3 and aac decoders are not guaranteed to be on every device.  99% of the devices tested do contain the decoders, but with 4.1 removed the AAC decoder that was being used.  OpenSL may be buggy but it is guaranteed to be there on every device running 4.0+

Changelog:

1.3.8 (08/15/12):
-Fixed scrobbling issue with shuffle all enabled
-Prefetch errors will cause the track to skip immediately instead of after the 5 second timeout
-Fixed playback speed of mono files on galaxy s2, note, and possibly other devices updated to ICS
-Album search now will show albums that match the album name, artist name, or album artist name
-Album search will now only show an album once for various artist albums
-Fixed issue where positions in file browser would be lost when changing views
-Selecting 'Play Next' will now cancel 'Shuffle Collection' if enabled
-Fixed crash when updating notification controls
-Caught out of memory exception when trying to load background art
-ICS lockscreen will no longer disappear after pausing playback
-Changing tracks when paused/stopped will no longer automatically start playback
-Added chinese translation
-Updated russian, czech, spanish and german translations
-Fixed gapless playback for 4.0+
-Fixed issue where there would be a gap between the first and second song when playing a folder
-Fixed crash during file deletion

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