4.4.12
- fixed sharing media links to BubbleUPnP not working anymore with some apps
- fixed playing to Fire TV music tracks decoded to PCM (either for natively unsupported codecs or forced) not working
- added "Year" and "Publisher" metadata to Qobuz tracks from Qobuz playlists
- added support for SMB 3.1.1 dialect
- increased max items to 5000 for 'Random Tracks' and 'Random albums' folders
- fixed failure to download from opensutitles.org if video title had more than 256 characters
- do not list 'Add to Saved Playlist' action in 3 dot menus when 'Settings > Library > Saved Playlists' is disabled
- updated some libraries used to build the app
4.4.11
- improved transcoding of DSD to PCM. Such operation happens when playing DSD to a renderer not supporting that format natively,
or if some other option in 'Settings > Renderer settings' forces it:
- if WAV is the target format, transcode to 24 bit (previously it was wrongly 16 bit). If the fomat is LPCM, transcode is always 16 bit
- if 'Max sample rate' is set to 'Unlimited', use 88.2 kHz as the target sample rate. This is sufficient for such
transcode as higher sample rates do not improve audio quality. However, if 'Max sample rate' is set to a specific value (ideally a multiple of 44.1 khz),
it will be used as target sample rate
- added 352.8 kHz samplerate in 'Max sample rate' setting. Can be used as DSD target sample rate
- fixed hardware accelerated video transcoding (for Chromecast) not working on older 32-bit devices (armeabi-v7a and x86)
- fixed failure to download from opensubtitles.org failing on ipv6 networks
- improved handling of sharing media links from some apps
- made text selectable in the 'Show Metadata' dialog using long-press on text, allowing to copy it to clipboard
- fixed a few rare app freeze (ANR)
- updated some libraries used to build the app
4.4.10
- fixed regular small audio stutters playing AAC on Google Pixel devices
- fixed Chromecast device with ipv6 address not being discovered
- fixed failure to connect to SMB shares requiring mandatory encryption
- fixed no artist thumbnail in Qobuz artist folders
- fixed 'Add to Qobuz favorites' 3-dot menu action on public Qobuz playlists (in 'Discover' section or Search) not working. This action adds a playlist to the 'Qobuz > Playlist' folder
- fixed 'Remove from Qobuz favorites' action not working on playlists in the 'Qobuz > Playlist' folder
- fixed missing Play button in Library grid view mode when in multiple selection mode
- fixed 'Now Playing' tab sometimes showing wrong total track count appended to the track title when playing tracks to an OpenHome renderer and the 'Play displays Now Playing' setting is enabled
- fixed 'UPnP/DLNA Libraries' section in the Library tab sometimes not listing servers (indicated wrongly as 'hidden' in the section header)
- fixed rare app freeze (ANR) when a Chromecast is disconnecting while attempting to play to it
- added ability to sort the playlists in the 'Qobuz > Playlists' folder by different sort criteria (sort icon in the top bar). Default sort order is by date modified
- added ability to block TIDAL track for it not to appear in TIDAL Radio and Mixes. It can be found in the 3 dot menu of a TIDAL track in 'Now Playing' and 'Playlist' tab
- added ability to edit cover URL in item 'Edit metadata' dialog. Mostly useful to add a cover URL to manually added Internet radio stations
- reduced min value for 'More > Settings > Library > Grid item size' to 100dp, allowing grids with more columns
- a few other obscure fixes
- updated some libraries used to build the app
4.4.9
- fixed playing mp3 tracks on Google Pixel 9 stopping unexpectedly mid-track
- fixed loading folders containing local videos being slower than it should be (or even failing to load), especially with a large number of videos
- added support for playing HLS video streams to Samsung TV (usually shared from other apps to BubbleUPnP).
HLS video is converted once to a local MP4 file (can take a while) that is cached for 3 days on local storage
- Qobuz: in the "Albums", "Tracks" and "Purchases" favorite folders (in the "My Music" section), added a "Genre" subfolder allowing to browse albums and tracks by genre
- Qobuz: added Genre metadata to individual tracks that are not already in an album container (My Music > Playlists, Tracks, ...)
- Qobuz: removed "Still trending" section not available anymore
- TIDAL: implemented sorting of "My Playlists" and "My Favorite playlists" folders (in the "My Collection" section) by Date added / Date modified / [A-Z] order. Tap the sort icon in the top bar of these folders
- fixed SHOUTcast streams not playing out of the box on some Philips renderers
- fixed a rare occurence where Qobuz/TIDAL tracks added in a 'Saved Playlist' would not play
- when fast scrolling in lists/grids, the fast scroll handle remains displayed for up to 3 seconds when not scrolling (previously: 1s)
- a few obscure fixes
- updated some libraries used to build the app
4.4.8
- updated FFmpeg to v7.1
- disabled Chromecast on-device hardware accelerated video transcoding on Android 15+ as it currently does not work with FFmpeg and could cause some videos to not play
- added Sleep Timer icon in the top bar of the 'Now Playing' tab when a Sleep Timer is active
- fixed failure to play TIDAL tracks after 24h the app had been running
- fixed Now Playing album art not vertically centered on tall devices in portrait
- fixed sharing multiple content:// items from third party app to BubbleUPnP being added in random order in the Playlist tab
- fixed sharing Android Media Store items from some third party apps to BubbleUPnP resulting in items having no metadata on some Android devices
- fixed playing TIDAL tracks to OpenHome renderer managed by 'BubbleUPnP Server' not using OpenHome TIDAL support in some specific scenarios
- fixed failure to save port for a SMB server whose Name field is specified as <ip address>:<port>
- when playing a Qobuz track fails because it does not exist anymore (Qobuz removed its containing album or moved it to a new id), display a specific toast message about it rather than the generic 'failed to probe Qobuz quality'
- a few obscure fixes
- updated some libraries used to build the app
4.4.7
- fixed sharing some media links to BubbleUPnP not working anymore
- the cast icon in the 'Now Playing' tab is filled when an external renderer is selected
- added extraction of the 'Performer' tag on local music files (shown in metadata info dialog)
- fixed controlling volume of WiiM renderer possibly not working
- fixed a few obscure issues
- updated some libraries used to build the app
4.4.6
- fixed 'Audio Cast' stopping playing when going back to BubbleUPnP after putting it in the background with the back action
- display a warning popup if 'Audio Cast' is started when the app is configured with background restrictions in its system settings (which cause 'Audio Cast' to not work properly). Popup displays instructions for fixing that situation
- fixed 'Shuffle Library' in album mode not playing gaplessly if 'Gapless control' is enabled
- fixed a few specific renderers repeating last track of Playlist tab with 'Gapless control' enabled
- fixed inability to play a repeating track gaplessly
- fixed shuffle/repeat state not properly restored when switching from an OpenHome renderer to any non-OpenHome renderer
- fixed JPlay media server folders missing the sort menu in the top bar
- fixed bookmarking a 'Saved Playlist' folder not working
- increased .m3u playlists max size from 5000 to 10000 items
- improved validation of srt subtitle files
- removed force disabling eventing for WiiM renderers (fixed in recent WiiM firmware)
- removed mention of obsolete 'HiFi Plus' subscription in TIDAL settings
- prepare to change the presentation of the Qobuz 'Discover' section in the future when Qobuz does not support editorial APIs anymore
- fixed a few obscure issues
- updated some libraries used to build the app
4.4.5
- added support for upcoming devices running Android 15 with 16kb page size
- added 'Music > Recently added' section with recent local tracks and albums sub-sections. Requires Android 8 or higher
- added 'Mixes & Radio' section to TIDAL root folder, identical to the same section in the TIDAL app in its Collection tab
- added seek support for some HLS videos sent from other apps
- tapping a PDF booklet link in a track's metadata dialog now spawns a PDF viewer app chooser instead of opening the link in a web browser. This is mainly for Qobuz and MinimServer booklets
- improved compability with the Wavelet app (and possibly other sound processing apps) where it would not always detect that BubbleUPnP is running to apply equalization to local playback
- fixed Qobuz not working on Android 7
- fixed an issue where starting the app would rarely fail once
- fixed Search searching local media even if it was disabled in app settings
- fixed technical details line in 'Now Playing' tab (below the seek bar) being truncated with bigger system font sizes configured in Android settings
- fixed browsing on Samsung TV the media server \'Images\' sub-folders not displaying thumbnails in its grid presentation
- fixed playback issue with OpenHome renderers from MSB brand
- fixed a few obscure issues
- updated some libraries used to build the app
4.4.4
Removed Google Drive browsing support
Google Drive browsing support has been removed due to Google requiring developers to perform an expensive and cumbersome annual app security audit to allow access to it.
You can still add Google Drive media to the Playlist tab with this method, although it is only
pratical for music files as it will make the Google Drive app download files locally:
- make sure you are logged to Google Drive in the Google Drive app
- go into the Playlist tab
- go to '3 dot menu > Add from File Picker'
- tap the hamburger menu (top-left corner) and select your Google Drive account in the pane
- browse Google Drive and tap the media you want to add to the Playlist. To select multiple items,
long-press the first item then tap subsequent items and finally tap the 'Select' button in the top bar
You can alternatively consider moving your media to a supported cloud storage provider: Dropbox, Box, OneDrive.
Other
- fixed app crash when 'Gapless control' is enabled for a renderer (regression)
- improved compatibility with renderers playing videos shared from some third party apps
- HLS videos can be downloaded as MPEG-TS files (3 dot menu on video > Download)
- adding items to the Playlist tab via '3 dot menu > Add from File Picker' does not require the license anymore
- adding videos to the Playlist tab via '3 dot menu > Add from File Picker' now extracts cover image
- added support for WebP images. Converted to lossless JPEG when viewed to a renderer that does not support WebP
4.4.3
- fixed failure to play videos shared from some third party apps
- added 'Settings > Library > Max grid title lines'. Can be set from 1 to 5 (default: 2) to set how many lines item titles can span in grid views
- fixed a few minor and obscure issues
- updated some libraries used to build the app
4.4.2
- fixed regression where playback could stop unexpectedly when proxying is used
- fixed ReplayGain (if enabled) not applied when playing TIDAL/Qobuz tracks to the local renderer
- a few other minor changes
4.4.1
- reduced battery usage with multiple internal changes to reduce CPU usage
- (free version) replaced WebView banner ads by native ads that are more efficient in term of memory/CPU/battery usage
- fixed memory leaks when app is running in background and UI is destroyed
- improved app startup times via baseline profile
- changed 'Settings > Local renderer > Allow remote control' to disabled by default. If you remotely control BubbleUPnP acting as a renderer, make sure to enable that setting
- fixed tracks scrobbled by external scrobbler apps including the track number in the title if 'More > Settings > Library > Track number' is enabled
- fixed some third party apps not recognizing BubbleUPnP anymore as a media player
- a few obscure minor tweaks
- updated some software libraries used to build the app
4.3.7
- update to Android 14 target (targetSdkVersion 34)
- fixed video title remaining displayed if too long on some Google Cast devices
- fixed local mp3 playback on Pixel 8 possibly having audio drop outs
- fixed MinimServer rescan not working with recent versions of MinimServer
- many more obscure small fixes and tweaks
- updated some libraries used to build the app
4.3.6
- fixed failure to detect Fire TV, mostly when it is embedded in a TV.
When first entering the renderer selection dialog, ask if Fire TV devices
should be discovered
- added an E-ink mode optimizing the theme and disabling most animations
for E-ink devices with a black and white or color screen.
This can be enabled in More > Settings > Look and Feel > E-ink mode.
On first app startup, if an E-ink device is detected (BOOX only at the moment), a dialog will ask if E-ink mode should be enabled
- added Google Drive policy dialog displayed before selecting an account
- the Monochrome theme does not require the license anymore
- fixed first track played sometimes repeating later in Shuffle Playlist mode
- fixed some UI buttons not properly rendered and notification not showing playback buttons on BOOX E-ink devices running Android 11
- fixed 24-bit tracks always converted to L16 if the 'Audio Format' setting was manually set to LPCM for a renderer (regression)
- fixed possible failure to play LPCM to HQPlayerEmbedded renderer
- fixed cancelling Google Drive login flow showing account chooser again
- fixed a few obscure crashes
- updated some libraries used to build the app
4.3.5
- fixed failure to discover devices whose ip address is not in one of the private ranges that should be used in
home newtorks (192.168.0.0/16, 172.16.0.0/12, 10.0.0.0/8)
- fixed failure to discover recent Fire TV devices
- fixed 'Cannot set Url on media device' error message sometimes displayed when playing to a Fire
- fixed many issues with Playlist shuffle mode (enabled via toggle in 'Now Playing' tab)
- improved handling of SHOUTcast streams (Internet radio)
- fixed 'Audio Cast' toggle button in the renderer selection dialog possibly not visible on smaller screens in portrait orientation
- fixed 'FFmpeg decoding to PCM' not working with upmpdcli based renderers with WAV audio format
- fixed volume control not working on 'WiiM Pro Receiver'
- fixed wrong number of tracks sometimes displayed in toast message when adding/enqueuing tracks in free version of the app
- fixed a few obscure crashes
- updated some libraries used to build the app
4.3.4.1
- fixed no UPnP/DLNA devices discovered on Chrome OS (regression)
- fixed album art not sent to Pioneer renderers for display on the front panel. Only album art whose resolution is greater than 750x750 is not sent as it crashes the Pioneer
- fixed rare failure to handle http redirects causing failure to play some items
4.3.4
- added support to the 'Local and Cloud' Library for recognizing .m4b Audio Book files when browsing by filesystem.
These files are handled identically to .m4a files and there is no chapter support
- added support for using the new Android GPU Chromecast video transcoding support provided by 'BubbleUPnP Server for Android' v1.2.4.1 update.
That's for when the Android version of 'BubbleUPnP Server' is used as an alternative to the Desktop/NAS version for transcoding duties
- added 'More > Settings > Library > Item tap action > Play all items, playback starts at tapped item'
- fixed regression causing failure to play LPCM streams
- added EXIF comment to metadata of images and videos managed by the Android Media Store (visible via '3 dot menu on item > Show metadata', as 'Desc.' field)
- fixed recently used renderers not being surfaced as share targets in share sheets of third party apps that make use of the standard Android share sheet dialog
- fixed on Android 12+, USB OTG storage volumes not listed in the Library tab
- fixed missing or barely visible renderer icons when long-pressing the BubbleUPnP
icon in the app drawer (to open the app with a specific renderer) and in share sheets of third party apps
- fixed track played by the Local Renderer sometimes assigned a wrong duration
- fixed icon of Google Cast devices managed by BubbleUPnP Server or from standalone cast support not tinted with proper color
- fixed prev/next track action performed repeatedly at 1-3s interval sometimes resulting in the wrong track displayed in the 'Now Playing' tab
- fixed rare failure to play local media from SD Card, 'Internal Storage' or 'Folders' subfolders
- fixed in Library tab, in 'Folders' root folder, failure to pick with the system folder picker the root of an USB OTG drive
- fixed 'Random Tracks/Albums' not working on Android 13+ on locally stored media
- fixed tracks scrobbled by external scrobbler apps including the track number in the title if 'More > Settings > Library > Track number' is enabled
- fixed in Playlist tab, '3 dot menu on item > Edit metadata' showing unneeded Album and Artist fields when the item is not audio
- ask if TIDAL login is done via Google account to spawn external web browser instead of embedded WebView whose Google login choice is grayed out
- improved compatibility of 'Audio Cast' for playing to 'USB Audio Player Pro' renderer (automatically use FLAC + more buffering)
- updated some libraries used to build the app
4.3.3
Audio Cast
- added FLAC support to Audio Cast as output format. Can be set in More > Settings > Audio Cast > Renderer settings > Audio format.
FLAC will not be picked by default, unless a renderer support neither WAV nor LPCM (rare).
FLAC uses less network bandwidth at the expense of a bit more CPU usage. It is also does not have the max duration limitation of WAV format
- changed Audio Cast default samplerate to 48 kHz (from 44.1 kHz) to match the audio hardware and avoid unnecessary system sample rate conversion.
It still can be set to 44.1 kHz in the renderer's Audio Cast settings in case 48 kHz is problematic
- added More > Settings > Audio Cast > Maximum duration without audio.
If no app is playing audio for this duration (default: 30 mins), Audio Cast will automatically stop (instead of playing silence) to save the battery. This is also the maximum duration Audio Cast can be paused (in the playing app)
- added some missing translation in preferences
Other
- re-added 'More > Settings > Renderer settings > (pick renderer) > Proxy TIDAL tracks'. This setting is enabled
by default and can be disabled for renderers that work fine without proxying. Proxying does not alter audio quality
- made 'Now Playing > 3 dot menu > Seek to position' allowing to set a position past 10h (useful for long audio books)
- made 'Internet Access with BubbleUPnP Server > Add to Android Library' disabled by default. If you enable
this setting on Android 11+ you will be instructed to pick a track cache folder different that the default folder
not accessible to the Android Media Scanner
- fixed 'Internet Access with BubbleUPnP Server > Cache folder' always asking unnecessarily for WRITE_EXTERNAL_STORAGE permission on Android 13+.
That permission is now only asked below Android 11, if necessary
- fixed downloading a subtitle from opensubtitles.org with 'Also put copy in Downloads folder' enabled always asking unnecessarily for WRITE_EXTERNAL_STORAGE permission on Android 13+,
which could not be granted and prevented the copy to be done. That permission is now only asked below Android 11, if necessary
- for settings involving picking a folder, always use the system folder picker. Fixed label text in some dialogs that were too long
- fixed Local Renderer not doing FFmpeg decoding for HLS audio streams when FFmpeg decoding is enabled for all audio formats in settings
- fixed regression where restoring automatic backup (if enabled) on app reinstall would fail
- fixed System UI crash on some Nokia (HMD) devices running Android 12 (was caused by notification)
- fixed volume control not working on 'Mi AI SoundBox' renderer
- improved Qobuz/TIDAL error messages on playback failure
- a few other obscure and minor fixes and tweaks
4.3.2
- remove unplayable Qobuz tracks at browse time (tracks that do not exist anymore, mostly found in user public playlists) to prevent them from stopping playback track advance
- enable local hardware Chromecast transcoding for some Android devices running Android 10 and below
- fixed intermittent System UI crash on some Motorola devices running Android 12 (was caused by notification)
- if a downloaded subtitle cannot be written to local storage because of an existing filename, a message is displayed about removing it manually in a file manager app
- if browsing Synology NAS root fails with error "Action Failed", a help message is displayed about going into its web config to allow the app to browse
- removed 'Proxy TIDAL tracks' setting as proxying is always enabled for playback reliability
- fixed possible failure to play to an audio-only renderer only the audio track of a video
- fixed failure to play Audio Cast to OpenHome renderer in free version of the app if Playlist tab has 16 items
- fixed failure to download files from Technisat media server (recordings)
- fixed Qobuz favorite folders limited to 2000 items
- fixed subtitles on chromecast possibly showing unwanted garbage tags
- fixed a few obscure and rare crashes
- updated some libraries used to build the app
4.3.1.2
- hotfix for failure to play TIDAL for some users
4.3.1.1
- fixed a few metadata cache issues
4.3.1
- improved loading of some Library folders to be much faster, using a metadata cache stored on local storage.
This applies mainly to folders part of a filesystem and containing media items, for which the app extracts metadata.
In particular, loading some subfolders of 'Internal Storage', 'Folders', SMB, WebDav and cloud storage will be much faster after the initial first load.
This cache can be optionnaly disabled in More > Settings > Library > ('Metadata cache' section) > Enable.
It can also be cleared in that section with 'Clear', which can be useful if you externally update the metadata of the files (with a tag editor for example for music files)
- fixed playing videos to Chromecast whose audio is locally transcoded, possibly resulting in audio not playing in sync with video
- improved video thumbnail extraction
Note that video thumbnail extraction is disabled while any video is playing, to prevent possible playback issues
- fixed a few obscure crashes
4.3
TIDAL HiRes FLAC support
With a TIDAL HiFi Plus subscription, you can now enable HiRes FLAC playback
in More > Settings > Local and Cloud > TIDAL > Audio Quality > Up to FLAC 192 kHz / 24-bit.
If both HiRes FLAC is enabled and the 'Show HiRes indicator' setting is enabled, albums available in FLAC will be indicated with a 🅷 symbol
appended to their title.
Hardware accelerated Chromecast local transcoding
Local video transcoding for playback to Chromecast is now hardware accelerated by your Android device, whenever possible
This results in vastly more efficient transcoding, a tad less processor intensive with less heat and battery drain.
It also makes possible to transcode videos that were too heavy previously (resulting in stutters).
If hardware transcoding fails or is not possible, the app will gracefully fallback to software transcoding.
Hardware transcoding can be disabled in More > Settings > Chromecast transcoding > Use hardware transcoding.
Software transcoding has also been improved, made less processor intensive at the expense of using more network
bandwidth (which is usually not a problem). Moreover, a new 'Faster software encoding' setting has been added to make it even
faster (requiring even more network bandwidth for good quality).
With this overhaul, there is a new video quality setting ('Video encode quality') characterized by a max bitrate
for the encode (40, 20, 10, 5 Mbits/s choices) that applies to both hardware and software encoding.
In practice the encoding can be much lower than this maximum, depending on video.
The default is set to 10 Mbits/s which should give good results in most cases, but 20 Mbits/s is advised if the
network bandwidth is available for it (there is no stutter).
Refer to the Help section of the 'More > Settings > Chromecast Transcoding' screen for more tips, in particular how
to troubleshoot stuttering videos.
New ad consent screen in European Economic Area (EEA)
Users of the free version of the app located in the EEA (including UK) will
see a new GDPR compliant screen for showing ads, with tweakable settings.
Other
- updated FFmpeg to v6.1
- faster video thumbnail generation
- fixed some local storage folders possibly failing to load (especially if containing videos)
- fixed some videos in mov container and videos with mpeg4 codec and mp3 audio (usually in avi container) not playing to Chromecast
- fixed failure to login to TIDAL when the Local OpenHome Renderer is the active renderer
4.2.2.1
- hotfix for broken preset themes in v4.2.2
4.2.2
- fixed 'More > Settings > Renderer settings > (pick renderer) > Proxy TIDAL/Qobuz track' settings having no effect for all renderers other than of OpenHome type.
This resulted in proxying not enabled even if the setting was enabled.
This regression was introduced in v4.0 and can explain Qobuz/TIDAL playback issues on some renderers since.
If you cannot play TIDAL/Qobuz tracks at all on your renderer or playback is unreliable (stops mid-track), please do
try with the relevant proxy toggle enabled. If you already enabled it previously, you must manually re-enable it as
it defaults to disabled as part of the fix for this issue
- fixed 'Audio Cast' not working on Android 14
- fixed no renderer/libraries detected on ChromeOS devices running Android 13
- fixed playing to Xbox One (all models) playing only 1 track
- added 'More > Settings > About / Help > Show Changelog when app is updated' to disable showing the changelog on app updates
- added Year sort option in Library lists/grids to not include year separators
- fixed 'More > Settings > Control > Sharing handling' setting not always working properly when sharing from a third party app and BubbleUPnP is not already running (has to cold start)
- fixed playing playing AAC tracks from Plex possibly not working
- fixed a few obscure crashes
4.2.1
- fixed 'Audio Cast' toggle not being available
- fixed crash entering More > Settings > Configure device visibility
- a few minor fixes
- KNOWN ISSUE: as of Oct 22th 2023, downloading subtitles from opensubtitles.org fails due to an issue on the opensubtitles.org side
4.2
- global app wide hunt for UI freezes ("Android Not Responding" dialog), resulting in many of them being fixed in these areas: switching renderers, Chromecast, Local OpenHome renderer,
Qobuz/TIDAL with OpenHome renderers managed by BubbleUPnP Server, sharing media to BubbleUPnP, app startup and exit (rare), and more
- fixed sharing albums/tracks from the TIDAL app to BubbleUPnP not working anymore
- fixed sharing from 'Movie HD' app to BubbleUPnP not working
- fixed inability to scroll to display all media servers in Devices tab if many of them
- fixed a few other minor issues and obscure crashes
- updated some libraries used to build the app
4.1.3
- added 'More > Settings > Library > Compact lists'. When enabled, increase list item density with reduced vertical padding between items and slightly smaller thumbnails. Also applies to the Playlist tab
- fixed failure to validate license on some Android 13 devices based on MIUI
- fixed recent global failure to login to TIDAL with 'null user' error
- fixed login to TIDAL via 'More > Settings > Local and Cloud > TIDAL > Account' not working
- fixed failure to play TIDAL tracks to Pioneer N50a/N70a. Faster loading of album art on the integrated display of these devices
- fixed Library Search not searching anymore current folder in Library tab
- fixed theming issue when app theme is set to dark and a WebView is involved (mostly banner ads) on Android 10 devices and below
- prev button in 'Now Playing', notification and widgets will now play the current track/video from the beginning if it is already playing and its elapsed time is more than 5 seconds, as this is more in line with the behavior of other media player apps. This can be changed by enabling 'More > Settings > Now Playing > Prev always play previous item'
- on app startup, if the 'Now Playing' tab current track is from TIDAL/Qobuz, heart icon (favorite) is not shown until
a track from TIDAL/Qobuz is played or the TIDAL/Qobuz folder is browsed in the Library tab. That's for avoiding obscure favoriting bugs on renderer change.
This does not apply to OpenHome renderers with own Qobuz support such as LUMIN, upmpdcli and BubbleUPnP Server
- increased text size in metadata dialogs on tablets
- fixed browsing Qobuz folders with LUMIN and upmpdcli OpenHome renderers sometimes failing with error 401 message
- fixed X button in notification not always visible on Android 9 and below
- fixed 'More' menu not working on devices with no touch in landscape (mostly Android TV)
- fixed corner case where track download could result in duplicated track number in filename
- fixed a few super obscure crashes
- updated some libraries used to build the app
4.1.2
- added on Android 13+ 'More > Settings > Control > Extra buttons' for configuring which extra buttons to show in the notification: None, Exit button, Volume buttons (Default)
- fixed Library Search not working anymore on Android 9 and below
- fixed a few Library Search UI bugs
- fixed app locked into portrait after a browse or play/enqueue operation in the Library tab showing a progress dialog
- changed color of Exit button (X) of Android < 11 notification to be black or white instead of fixed blue
- fixed several obscure and rare crashes
4.1.1
- fixed Library grid covers being of low quality
- fixed thumbnail file cache using much more storage than necessary and slow loading times
- retrieve higher quality TIDAL thumbnails (from 160×160 to 320×320) and full cover (from 750×750 to 1280×1280). High resolution cover can be displayed in full glory by long-pressing the cover in the 'Now Playing' tab
4.1
User Interface
- added Search Bar to More panel
- Search UI tweaks: at least 2 characters must be entered in the query field, for the suggestion
dropdown menu to show past sucessful searches matching these characters, if any. Tapping an item in the suggestion
dropdown now automatically starts searching for that entry. Tweaked suggestion dropdown entries appearance
- added 'Settings > Now Playing > Bigger cover in portrait' to use less padding and extend cover as much possible,
up to using full screen width. This disables round corners
- added 'Settings > Library > (Thumbnails section) > Round corner' for disabling round corners in both the Library and Playlist tabs
- layout improvements for devices with smaller screens, especially for the 'Now Playing' tab
- removed unwanted shadows for top bar and landscape navigation rail on Android 8 devices and below
- fixed heavy display glitches on Android 9 devices and below
- fixed on tablets not using gestural navigation, immersive grid view in landscape not making the system navigation bar transparent
- fixed navigation rail background not being the correct color when changing device orientation to landscape from a tab other than the 'Now Playing' tab
- fixed a few other theming glitches
Other changes
- fixed clearing the Playlist tab not resetting the 'Now Playing' tab properly
- fixed a regression causing failure to connect to some SMB shares
- fixed a regression where some media sent/shared from other apps would not play
- removed "Exact Matches" section in 'Local and Cloud' Library search results as it could cause some problems
- changed thumbnail presentation for MinimServer when its indexArtwork property is used
4.0
User Interface
- new Material Design 3 (MD3) theming with extensive settings in 'More > Settings > Look and Feel': Material You, preset color themes, generated custom color themes, monochrome, white or black themes, color schemes affecting generated theme colors and more
- Now Playing and Library album screens generate their own MD3 theme based on cover. Can be disabled in More > Settings > Look and Feel > Dynamic theme based on cover
- edge to edge design, rounded corners
- reworked 'Now Playing' tab, 'More' panel, Settings screens, Library album folders, dialogs, typography and more
- many other UI tweaks that fit with the MD3 redesign
- immersive grid mode (fully edge to edge only in licensed version)
- improved landscape mode, especially on phones. Uses lateral navigation rail instead of bottom tabs
Other changes
- changed minimum supported Android version to Android 7 (Nougat)
- added heart icon in Qobuz/TIDAL album folders in Library tab for adding/removing to favorites
- added in Qobuz artist folders (from "My Music" section or search results) a "Most popular tracks" folder
- fixed Android 13+ specific issue with the license app installed where media store local files fail to play due to a very obscure Android permission bug (despite the permission being granted).
When this situation is detected, display instructions for reinstalling BubbleUPnP which is the permanent fix
- fixed on ChromeOS playing videos locally sometimes always being opened in Chrome instead of asking for what video player app to use
- fixed regression where hitting next/prev button while track is playing to OpenHome renderer with 'Shuffle' enabled not playing shuffle track but instead next track in Playlist
- fixed failure to go to previous track using BlueTooth headset button and other means involving MediaSession
- fixed failure to connect to SMB server if a non standard port is part of the hostname
- fixed failure to download tracks from Kazoo Server
- fixed failure to play videos hosted on googlevideo.com domain
- fixed a few other super obscure issues
- increased max subtitle file size to 1MB
- updated many libraries used to build the app