yashsingh1/xdaforums huggingface dataset:
[Android Apps and Games] Snowknight26:
[MENTION=3373153]bubbleguuum[/MENTION]

There's an "issue" I observed with BubbleUPnP, and I use quotes because it's most likely something that could use some optimization.

When browsing a remote device and displaying a playlist, one that shows the album art next to each track, if every track is from the same album then BubbleUPnP Server will convert the album art for each track separately regardless of whether the album art is literally identical (folder.jpg in the same folder as the music, for example).

This is especially noticeable when browsing a playlist where 50 tracks are from the same album and the album has a high resolution image. In my case, some of my album art is 5000x5000, meaning BubbleUPnP Server converts the exact same album art (same folder.jpg) 50 times, once for each track as I scroll down the list of tracks in the playlist in BubbleUPnP. That's a lot of unneeded processing and honestly, when the album art is so large, it can take several minutes for the album art to display in the playlist view.

My suggestion:

Create a deterministic unique ID for the album art (based on location?)

If the album art does not exist in BubbleUPnP Server's cache, convert it to the appropriate sizes (whatever BubbleUPnP requests)

For each track that's displayed in BubbleUPnP's playlist view, request the album art based on the predetermined unique ID

Obviously this would have to take multithreaded requests into consideration (considering the fact that converting the album art to the appropriate size can take several seconds and in that time BubbleUPnP make multiple album art requests), but this should drastically improve performance not only on the machine that's running BubbleUPnP but also the perceived performance on the device that's running BubbleUPnP - once the album art is converted once, it would instantly appear in the playlist view for every track that shares the same predetermined album art ID.
[Android Apps and Games] bubbleguuum:
[MENTION=4532393]Snowknight26[/MENTION]

It works like you describe already (with the cache being multi-thread aware) but the resized cached album art is pinned to the original album art URL provided by the media server accessed, so

if that URL is not the same for each track of a same album (which is media server dependent), it will be cached and processed multiple times.

It would indeed be better if BubbleUPnP pinned cached album art to all tracks of the same album without relying on the image URL provided by the media server.

What media server are you accessing through BubbleUPnP Server ?

Also can you check that there are images (jpg) in the cache sub-directory of the installation folder of BubbleUPnP Server ? That's to very the cache is working at all.
[Android Apps and Games] Snowknight26:
I'm using foo_upnp through BubbleUPnP Server.

There are several thousand images in the cache directory with recent modified dates so at least BubbleUPnP Server's caching is working.
[Android Apps and Games] blgk:
Queue/Playlist

Hello,

Is it possible to remove automatically played items in the playlist? Or alternatively keep track of played items?

I've a list on videos to watch on the Playlist (Queue) and I don't see the way to keep track of witch videos I've watched except removing each one manually after playing each video.

Thanks

---------- Post added at 10:43 AM ---------- Previous post was at 10:39 AM ----------

Hello,

The Playlist can show items in Track view o Album view. How can I use the Album view with videos using the TV Show o Season, for exemple, like the "album" of the episodes? Maybe using the folder structure in the media server?

Thanks
[Android Apps and Games] rolarocka:
Hello, nice app!

I have a problem with setting bubbleupnp as the standard app for streams. I set it in app info to be the standard and it doesn't work. Asks me on every new steam again. Any clue what is wrong?

Thx
[Android Apps and Games] conceptrat:
I think you'll find that you don't include the ”%” around the field name in the SORT BY statement. Try ”SORT BY play_count” instead.

Enclosing the field name with ”%” indicates that you to use the Title Formatting functionality which replaces the field with it's value/data. Think of it like saying ”print field” to print the contents of the field. You don't want that as you're wanting to reference the field not the value.

Have a read here for more information on the query syntax [https://wiki.hydrogenaud.io/index.php?title=Foobar2000:Query_syntax] check the Guidelines section 5 to understand why you'd choose one way over the other.

And Title Formatting [https://wiki.hydrogenaud.io/index.php?title=Foobar2000:Title_Formatting_Introduction] and examples link at the bottom of that page.

Also something else that may be relevant if you're using the foo_playcount plugin. This has some slightly different handling of playcount in that it had its own database for storing this data see here [http://wiki.hydrogenaud.io/index.ph..._(foo_playcount)#Common_sources_of_confusion]. So if you're using this plugin but want reference the meta data in the files then you'll need to use ”$meta(play_count)” instead. You can also see mention of this in the Title Formatting Introduction link above.
[Android Apps and Games] iamlaybhari:
This app works great for nearly every streaming situation. BubbleUPnP provides a beautiful UI to allow me to pick which albums or songs to play and then move back and forth in.
[Android Apps and Games] Bugsy46:
Good Evening,

Having problems with a new Huawei P30 Pro and the audio cutting in and out once the screen turns off when using my Sony Receiver on 'Home Network.' I used a Mate 20 Pro for two years without issue so would love to get it sorted. I have emailed a log file to the email address given in the OP. Hope to hear from you soon!
[Android Apps and Games] bubbleguuum:
Try this:

Huawei

Hey Android vendors, don’t kill my app!

dontkillmyapp.com
[Android Apps and Games] Bugsy46:
Hi thanks for replying,

Yeah unfortunately I had already disabled all power saving options linked to bubble. Does the log I sent you show evidence of battery saving methods? Because interestingly if my renderer uses the cast option then I have no issues at all, the screen turns off and plays all day. However, when the renderer uses WiFi or 'Network', once the screen goes off about 15 seconds later the audio stops for 2 seconds, then cuts back in for 5 seconds or so, then cuts out and this continues until I wake the screen!
[Android Apps and Games] bubbleguuum:
@Bugsy46

The log does not show any error or hint there is the problem you describe: from the POV of the app, playback and streaming appear normal.Do you ever have this issue if you force the screen to stay on ? If not, then

this is probably an evil thing HUAWEI is doing when the screen is off to "save the battery",

even if it breaks apps. Manufacturer specific super aggressive battery saving measures are the bane

of BubbleUPnP.

Also, verify that Android Doze is disabled for BubbleUPnP (Google it if necessary) but I do not think

it is Doze because it does not trigger this fast after the screen is off.
[Android Apps and Games] SquallLeonhardtt:
Thanks for your helpful post, conceptrat. While it did illuminate the distinction between play_count and %play_count% for me - it did not resolve the SORT BY query issue.

The unfortunate fact is it seems any valid SORT BY query is not supported by foo_upnp's customizable media library tree. This can easily be verified by executing a query within Foobar itself (Library -> Search -> type any SORT BY query -> view output) and comparing that output when you copy/paste that same query within foo_upnp_ml_tree.xml, such as:

<SubTree label="Play Count" query="SORT BY play_count">

<spec>%album%</spec>

</SubTree>

..and then test by accessing foo_upnp Media Server and browsing the Media Library that way.

Note: the above SORT BY query is absolutely valid with or without the wrapping % around play_count. Though there is a subtle distinction to be made, as you've noted.

Also worth noting is that the following works perfectly fine with foo_upnp (again, with or without the wrapping % around play_count):

<SubTree label="Play Count" query="play_count PRESENT">

<spec>%album%</spec>

</SubTree>

Therefore we can deduce the problem is specifically with the Media Server's implementation of SORT BY and the question to ask becomes what is the difference in how search queries are handled between Foobar itself and foo_upnp Media Server? - as that is clearly where the issue lies. As I've shown a few posts above, the foo_upnp debug logs do show there is a SortCriteria parameter that is undefined when the Browse request is made, but I do not know what to do with that information. Tagging @bubbleguuum once again, in the hopes of an official answer to this.

EDIT: after some more experimentation, I've discovered that removing the <spec> clause entirely does then allow the SORT BY query to return a sorted result set! Therefore the issue now becomes more clear - for some reason, it is not possible to group a sorted result set, or to use @bubbleguuum 's language from this documentation, we cannot split the Media Library into nodes when it is an ordered subset.
[Android Apps and Games] Budgie2:
Feeling my way here again but with the new website so please forgive more errors from me.

I am trying to start over with an RPi3B which I need as a player for my KEF MUO bluetooth renderer in my office.

My media is served on the lan by minimserver on NAS and most of the time is playing through Linn DS devices with BubbleDS as control point. In this case I need to use BubbleUPnP with the RPi. Please could you refresh my memory on what I need on the RPi to enable me to use the control point. I have had this work on other RPis but have no recollection of how I set them up.
[Android Apps and Games] bubbleguuum:
@SquallLeonhardtt

This plugin is old and unmaintained. I do not even remember how the XML syntax exactly works !

And I cannot look at it easily currently to dig into it.

These days, I rather recommend to use MinimServer (https://minimserver.com) as it is highly configurable and maintained.
[Android Apps and Games] bubbleguuum:
@Budgie2

I suggest to use mpd + upmpdcli on your rPI to make a renderer on your rPI. Then you will need to have mpd play to bluetooth to your KEF. You can use BubbleDS to control upmpdcli.
[Android Apps and Games] Cavalier Condorelli:
Is Audio CAST with BubbleUPnP Xposed module still supported on Android 9 devices?

I tried to use it with Magisk->EDxposed for Android Pie,

but the sound was completely distorted!

On an old Android 4.4.2 device works perfectly.

Thanks.
[Android Apps and Games] bubbleguuum:
@Cavalier Condorelli

Yes it should work, although there is the possibility of a bug.

To which renderer are you playing Audio Cast to, and from which Android app ?

Is the distorded sound still recognizable or totally garbage ?
[Android Apps and Games] Osama1v:
Hi. I have 2 question. I just bought the app and wanted to know how transcoding work. I'm using it on android, I have a Xiaomi mi note 10 lite and Im streaming to chromecast 3 gen. The thing is sending x265 videos to the chromecast works with local transcoding, not stuttering at all. But I've read is recommended to use a bubbleupnp server.

1. So my phone can run transcoding normally? Do I need a bubbleupnp server if I'm not getting any stuttering?

2. Is quality affected by transcoding a x265 to x264 file?
[Android Apps and Games] tblr0ne:
Since the last update I am missing scrobbling. It has been working without any problems with an old "Wail" installation. Any chance to bring it back?
[Android Apps and Games] bubbleguuum:
@Osama1v

1. Video transcoding is very taxing on battery, can make the device hot and throttle after a while resulting in a choppy video. If you play a lot of h265 videos, it might be better to offload transcoding to BubbleUPnP Server

2. Yes since a transcode is always lossy. Though the transcode is 1080p h264 with good quality settings.
[Android Apps and Games] bubbleguuum:
@tblr0ne

I removed WAIL support, since it has not been updated since 2015 and cannot be found on the Play Store searching for its name, although it is still there if you look for its package name. I will probably restore support for it in the next update as it apparently still work.
[Android Apps and Games] Bugsy46:
Hi, that's frustrating that the log doesn't flag anything up! So I did some further testing and I'm getting the feeling that this interruption isn't linked to any Huawei battery saving process as such.

I was confused as to why this only happens using the 'Home Network' and not whilst using 'Casting'. So I decided to uninstall powergenie via USB debugging and the issue still persisted. What happens exactly is that the audio cuts out and cuts back around a minute into the track but after around a minute of doing this it clears and plays as normal. This is with the screen still off.

Now this is where it gets interesting. I just tried this on a Samsung S10 and it does the exact same thing! Again, if I keep the screen on it doesn't interfere! Is it possible an update has altered something?

The method I am using is one I always have. I select my receiver in the renderer list (icon of a receiver not the chrome cast icon) and then I press play!

EDIT: Something else I have just noticed is this... If my LG TV REMOTE app is connected to a TV elsewhere in the house then no audio cut out occurs when the device sleeps. However, as soon as I disconnect the LG remote app from the TV then the audio begins to cut out on my receiver. This also happens when using bubble on the Samsung Galaxy S10. So obviously the LG remote app is keeping the device awake allowing bubble to run perfectly. It's as if bubble itself isn't responding to settings changes in the battery optimisation on both my Samsung and Huawei!

Just as a test I ran HiFi Cast using the same render method and it ran perfectly. Unfortunately that app doesn't support QoBuz integration so I'm hoping there is a tweak you can make for the next changelog!!
[Android Apps and Games] Cavalier Condorelli:
I've tried with two different renders:

Audison BitPlayHd hw render

Usb Audio Player Pro (UAPP) sw internal render UPnP

Bubble cast for specific render is set to WAV for the UAPP since it do not support PCM.

Source app are PowerAmp and VRadio.

The audio is completely distorted but a little bit recognizable.

All the same worked with previous Android 4.4.2 setup.
[Android Apps and Games] Budgie2:
Very many thanks for the reply. It is all coming back to me now but sadly I missed your reply initially and meanwhile did a new installation of OSMC on RPi to be able to start over. Had some fun setting up bluez-alsa on OSMC but all is now working for my KEF MUO without using upmpdcli.

Reason for my continuing here is that using BubbleUPnP I have no thumbnails showing. Not a big deal but I had become used to them when browsing library. Is it a simple matter to restore these?

Another problem, how do I stop my phone taking control rather than the RPi? Need to clear my thinking here but my intention was to control from phone using wifi not bluetooth. Not sure this is working.

After all this I conclude that phone bluetooth is the culprit so have disabled and all is now as it should be. Thumbnails in place and playing after I have left the building. Many thanks all and have a good one when it comes.

Budge
[Android Apps and Games] Orddu:
Hi again! All is well since using "openhome", thank you! :)

Suggestion - could there be a button for "stop at the end of this track"? If you're like me and tunes get stuck in your head, a clean ending at the end of the current track would be awesome! Not to clear the playlist or anything, just to stop at the next gap.

Another suggestion (or possibly someone's already done it): I've come here from Logitech Media Server and Squeezeboxes. I miss the scrolling "now playing" display which was in a nice big font so you could see it across a room. Is there anything like this in the world already, and if not maybe it could be considered?

Still very happy with both the server and and the phone interfaces, thank you for all your work!
[Android Apps and Games] Bugsy46:
Update on the audio cutting out! Turns out it was being caused by the TV connected to the receiver being powered off. I think it had something to do with braviasync setting. Either way I haven't had a single issue since :)
[Android Apps and Games] bubbleguuum:
@Cavalier Condorelli

Weird issue.

Since I did not retest Audio Cast since a long time, I updated my trusty Nexus 5 that refuses to die, running an Android 9 ROM with:

- Magisk 21.1

- Riru - Core 21.3

- Riru - EdXposed v0.4.6.4 (SandHook)

- And of course the BubbleUPnP Audio Cast Xposed module installed from EdXposed Manager.

I played Poweramp via Audio Cast to an external renderer (in WAV format) and it played fine. Poweramp needs to be configured to output audio to 'Audio Track Output', not to OpenGL ES (otherwise it would play silence).

So a bit surprise it plays garbled audio for you...
[Android Apps and Games] Cavalier Condorelli:
Is there any logs I can collect that could be useful for you to understand the problem?

The android device I'm using is a Dasaita Max 6 with PX6 processor Head unit running Hal9k Android 9 mod.
[Android Apps and Games] IronTechmonkey:
I'm wondering if the quoted suggestion would work in this case:

On a Raspberry Pi 4, Ubuntu 20.10, with different IP addresses assigned manually by the router to each the Wifi and the LAN interface, and with Bubble run from Start Up Applications or manually via the command "home/piu/bubbleupnp_server/launch.sh"...

The bubble server is found by other devices and can find Chromecast renderers (as can the other devices) just fine when the RPi is connected by Wifi or by LAN and it encodes fine, but when the RPi is connected to both LAN and wifi the bubble server always reverts to the Wifi connection where it works fine but for lower speeds. In spite of that the bubble server configuration is accessible via the LAN IP address (or any IP address that is connected at the time).

So, might it be possible to force the use of the IP address dedicated to LAN using the aforementioned command?

[EDIT] Adding .<lanip>LANipaddress</lanip> to configuration.xml did not force use of the LAB IP address while both LAN and WiFi connections are available.

-----

Speaking of network interfaces. Some time ago a Dell Laptop had problems with getting and staying connected to the Bubble server when on wifi but not on LAN. FWIW by way of due diligence, that was most likley a quirk in the network adapters on that computer (that particular piece of hardware). No such issues occur on RPis on same LAN/Wifi router.
[Android Apps and Games] Mr. Odd:
I have set up a stereo pair of Sonos Play:1's - streaming from Spotify works as expected. Picking a speaker in BubbleUPnP results in playing to just one speaker. Is there a configuration option I missed to get it playing to both speakers in stereo?
[Android Apps and Games] bubbleguuum:
@Mr. Odd

If that is possible, you will have to configure both Sonos devices to act as a single UPnP renderer that is seen by BubbleUPnP.
[Android Apps and Games] jimbo55:
Some file types show as "unknown" in the video folder, for instance .ts. My dlna player(lg Blu-ray) cannot see "unknown" files. I think it's a bug because the same file shows as .ts in internal storage folder. That does not provide a workaround for me as I cannot access this folder with the free version. Please see my screen shots. Thanks😀😀
[Android Apps and Games] XlAfbk:
"Audio cast" menu entry is missing on my OP7, version 3.4.15.1. Already reinstalled it. Op7 has edxposed 0.5.1.3

On my OP5 with the same version the menu entry is there.

Any ideas?
[Android Apps and Games] bigcid10:
The Server doesn't work anymore on DSM 7.0

say's it isn't supported due to needing root privileges

can you Please update this

BubbleUPnPServer.spk for synology nas DS716+ II intel X86_64 Braswell

Thank you
[Android Apps and Games] fyah_:
You should probably go for a docker install so that you get free from system dependencies
[Android Apps and Games] bigcid10:
OK,I understand,Thank you

give it a shot
[Android Apps and Games] physicsprof:
Dear Bubbleguuum,

I hope you do not mind I bring up the old topic of gapless streaming to Chromecast Audio. I understand this is not supported by CCA and requires sending consecutive tracks as a single stream (as you mention in your post of April 2018). I wonder if you ever had an opportunity to work on this? Or is it not a realistic undertaking?

I would gladly make an additional donation to support this.

Many thanks for all your work on BubbleUPNP!
[Android Apps and Games] bubbleguuum:
@Snowknight26

Again, that issue is specific to foo_upnp becuause for each track of a same album it returns to BubbleUPnP Server a different image link pointing to the cover, while the cover is the same for all tracks. This results in BubbleUPnP Server generating a cache entry for each track of the same album as you noticed.

This is caused by BubbleUPnP Server pinning cached album art to its URL, something that I must change to fix this, pinning it instead to album metadata. This is a bit more complicated as I must ensure that 2 different albums cannot clash.

If you used MinimServer instead (which I recommends) you would not have this issue as it uses the same album art URL for all tracks of a same albums (as most media severs do).
[Android Apps and Games] bubbleguuum:
@physicsprof

No plan for it. Too complicated and likely to end up clunky.
[Android Apps and Games] physicsprof:
Thank you for letting me know.
[Android Apps and Games] dez93_2000:
Hi mate, found a small oddity: in settings/internet access/networks: if you already have a network set up, click that, click 'server address' (which will already have something in it); as soon as you tap to edit (e.g. change the final digit to switch from HTTP to HTTPS port), the domain is deleted, leaving you with http://:58050 for example.
[Android Apps and Games] physicsprof:
Hello, I think I found a small issue (unless I am doing something wrong):

If I select (in the library tab) "Default Sort", Albums are sorted alphabetically using the ALBUMSORT tags. However, if I select "Title" as the sort criterion, it seems that "ALBUM" is used rather than "ALBUMSORT". I doubt this is intentional?

Thank you.
[Android Apps and Games] TadMorose:
Hi,

I am trying to play mkv files with multi-channel audio on my Chromecast, but I get no audio.

Files are located on my Synology NAS. I'm using BubbleUPnP on my Android phone and transcoding using BubbleUPnP Server running on the NAS.

Looking at the Status tab on the server, Audio Transcoding supported is "yes", but when I select the renderer in Media Renderers, all the settings under Audio decoding to PCM (FFmpeg) are disabled. I cannot even check "Domwmix multi-channel to stereo". I think that is what I need, but not sure.

I also see that on Status tab, Video transcoding supported is showing "no (ffmpeg has no libx264 support)." I tried to fix it by installing ipkg and then installing Optware-ng's ffmpeg binaries.

Installation was successful, but it didn't solve the problem. Status for Video decoding still shows the same thing, Audio decoding settings under renderer are still disabled and I still get no sound.

Any idea how to fix this? Thanks!
[Android Apps and Games] Budgie2:
Hi bubbleguuum, I am using RPi and DAC HAT with upmpdcli and mpd as renderer and BubbleDS as control point on my. I am planning to try and include a relay with the Pi setup so that the power amplifier driven by the renderer can be turned off in a manner similar to the Linn DS which allows me to put that device into standby. I envisage the Rpi power remaining on, as in standby mode, but the power amplifier turned off by the relay. Please can you advice me what is possible and whether I can make use of your software to enable the standby mode.

Regards, Budgie2
[Android Apps and Games] Veram:
Recently I have been getting action " failed error 501" and the transition between tracks is very slow, what could be the problem ?