yashsingh1/xdaforums huggingface dataset:
[Android Apps and Games] bubbleguuum:
[MENTION=4376431]Serkenar[/MENTION]

I made the same observations than you did:

- OpenJDK 8 running on fast PC: no problem with https

- slow arm CPU: may or may not connect

I need to investigate timeouts on the server side, but I'm not sure where to look for yet. In the slow case, I need to check if the Oracle JRe gives the same issue.

///

Another point about optware-ng's OpenJDK 8 packaging: it seems to have no cacerts files by default (hence your instructions to copy them from another package). I think that after the OpenJDK package install there should be a cacert file out of the box: either generated or copied from that other package.

In fact, if you look the stock OpenJDK 8 on a Syno NAS running DSM 6, there is a default cacerts file and there is no need to replace it.

.

The goal is that to have a BubbleUPnP Server that just works with OpenJDK 8, without having to tinker at all (manually adding cacerts).
[Android Apps and Games] Serkenar:
By simple test case I meant few lines of code, without using the BubbleUPnPServerlauncher.jar. Preferably, even without using the BouncyCastle jar, but this may be too much to ask. Short lines of code are much easier to debug.

If you ever find a solution for the https issue, it would be perfect.

///

You are right about cacerts file, and I fixed this ~ 3 days ago: commit cd9215e4 -- I was just thinking which was better back then when writing those instructions: to make OpenJDK use separate cacerts file package, or to retain cacerts as user-editable, but provide a default, actual at the moment of OpenJDK packaging, version. I chose the latter, as you can see from the commit. Now BubbleUPnP Server works out-of-the-box with OpenJDK7 with some little tinkering (had to remove the '-Xss256k' flag, since it caused crashes on startup on slow systems).

I'm now thinking of the best way to package BubbleUPnP Server: since it upgrades itself beyond the Optware-ng packaging system, I think it makes sense to add a package that would automatically fetch it from your server. On the other hand, if your server is unreachable during package configuration, the setup would obviously fail, so I'm not quite sure what I should do here :)
[Android Apps and Games] bubbleguuum:
I'll see if I can cook up a simple test case. It requires BouncyCastle since BKS keystore/truststore are used.

Speaking of which, I have not yet updated the BouncyCastle jar in the BubbleUPnP Server zip distribution (which I assume you download in your package script ?) but will do so soon once I have tested it more.

I need to do some testing/debug and will let you know,

Not sure what is best for cacerts management. I know some Linux distros generate it from other system files but it might be fairly complicated.

Yes, you should download the zip BubbleUPnP Server distribution in you install script. If that fails, install just fails :(.

BubbleUPnP Server auto-updates only updates BubbleUPnPServer.jar.
[Android Apps and Games] Perinis82:
Thanks for answering,

That's precisely what I've done. I've installed Java SE Embedded from Oracle (version 1.8.0_77) and the latest spk from your site. But it won't work :( . What is strange is that I have a notification that tells me that "BubbleUPnP Server had to be stopped using a forced kill" right after I perform the install, and I truly don't know why !
[Android Apps and Games] bubbleguuum:
Does Package Center reports BubbleUPnP Server as 'Running' ? If not, simply start it, and wait for a while (up to a minute) before connecting to its web interface.

"BubbleUPnP Server had to be stopped using a forced kill" => It just mean that BubbleUPnP Server could not be stopped cleanly and that the Syno force killed it. Not a huge issue.
[Android Apps and Games] Serkenar:
Yes, I plan to package an init script that:

1) starts/stops BubbleUPnP server

2) prints daemon status

3) (Re)Downloads and unpacks BubbleUPnPServer-distrib.zip

I'm planning to use dpkg start-stop-daemon utility for daemon management, e.g.:

start-stop-daemon --background --make-pidfile -d /opt/share/bubbleupnpserver --pidfile /opt/var/run/bubbleupnp.pid --start --exec /opt/lib/jvm/openjdk7/jre/bin/java -- -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Dfile.encoding="UTF-8" -jar BubbleUPnPServerLauncher.jar
start-stop-daemon --remove-pidfile --pidfile /opt/var/run/bubbleupnp.pid --stop

(/opt/share/bubbleupnpserver will be the BubbleUPnP Server working dir)

and something like this for status report:

case `start-stop-daemon --status --pidfile /opt/var/run/bubbleupnp.pid; echo $?` in
0)
echo "Program is running"
;;
1)
echo "Program is not running and the pid file exists"
;;
3)
echo "Program is not running"
;;
4)
echo "Unable to determine program status"
;;
*)
echo "Unknown start-stop-daemon exit code"
;;
esac

Don't know how they do it in other distros, but looks sensible to me :)

Thanks, I appreciate it :o

It's not complicated: I generate it myself using scripts from BLFS (https://github.com/Optware/Optware-ng/blob/master/make/jre-cacerts.mk), but I do it on the build system, since it takes a lot of time to do this on slow systems.

OK, I'll soon add the package then: with OpenJDK7, it works as it is (except for the https issue, which is probably slow systems relevant)
[Android Apps and Games] willink2:
Thank you for your quick reaction. I uninstalled OpenJDK en installed Oracle JRE, everything is working fine now!

Thnx! Jaap
[Android Apps and Games] bubbleguuum:
Looks good to me.

I updated BubbleUPnPServer-distrib.zip with the newer BouncyCastle.

I also updated the Synology package that was affected by the same issue with the OpenJDK 8 version it is bundled with on DSM 6

and which is the default JRE.

The newer BouncyCastle also fixes another crypto issue when attempting to login to TIDAL in Andrdoid BubbleUPnP, for an OpenHome renderer:

tidal: Network problem: java.lang.RuntimeException: java.security.NoSuchAlgorithmException: EC AlgorithmParameters not available

This issue is separate from the SSLPeerUnverifiedException one, and of course does not happen with an Oracle JRE.

OK.

Not sure what's up with https. Testing with wget running BubbleUPnP Server on slow armv7 Syno NAS (DS115J):

The request above takes 1 min while it just take 7s using the Oracle Java 8 JRE on this NAS.

So something seems real slow here with OpenJDK. During that very slow request, CPU usage for the

BubbleUPnP Server java process skyrockets to 80-90% until the request finishes, which makes me think that

some crypto stuff is way slower than it should be on OpenJDK...
[Android Apps and Games] wotan2525:
I am a license holder and am having a data usage issue -- my Bubble UPNP License app has consumed over 300mb of data since yesterday. Why/what is this app doing that would generate so much usage?!
[Android Apps and Games] bubbleguuum:
The BubbleUPnP Licence app (used for license verification) runs in the BubbleUPNP process, so Android may report BubbleUPnP (main app) data usage as BubbleUPnP Licence app data usage. Did you use BubbleUPnP to stream media over mobile data recently ? If so, that's it.
[Android Apps and Games] wotan2525:
That makes sense -- I was streaming over WiFi (the data usage I reported was WiFi data usage.)

Since I don't completely understand how this works, when I stream from my android device but use Kodi as a renderer -- Kodi should be consuming the data, correct? 300mb in 2 days doesn't seem like it was streaming media -- it seems high -- but I'm also not as concerned if it's not the actual license app that was consuming that data.

Thanks for the quick reply!!
[Android Apps and Games] bubbleguuum:
If you stream media stored on your Android device to Kodi, that counts as data usage since it gets out of your phone.
[Android Apps and Games] wotan2525:
My mistake -- I only stream youtube links to my Kodi device.
[Android Apps and Games] bubbleguuum:
The youtube stream is proxy by BubbleUPnP, thus Kodi reads the stream from BubbleUPnP which reads it from youtube.

Thus the data usage.
[Android Apps and Games] Perinis82:
Oh yes it does ! So as the Java package by the way... Here are screenshots of the logs.
[Android Apps and Games] rikardo1979:
I have RPi2 which I turned into HiFi music streamer built on Audiophonic RaspDAC Kit with I-Sabre V3 DAC ES9023 TCXO running Volumio

And this is where I searching some info and I hoping someone here may have some answers for me.

I use this kit mainly to stream HiFi music from Tidal. I do have some albums and tracks stored locally but most is coming from Tidal HiFi. I mean the digital if you say as otherwise I play vinyl.

And here is some issue which I was not able to solve just yet and I was not able to find any answers. When I stream from local network sources, all the Album-Track information appears on display. But when I stream from Tidal only few shows this on it. Most of the songs coming with time info only and "No song info" message.

Anyone have an idea where to start my troubleshooting? Is this due to Tidal issue(?), Bubble uPnP app which I use to send Tidal streams to Volumio, or is this down to Volumio itself?

I have a feeling is down to Bubble uPnP as even on the Volumio webGUI these songs appears as kind of gibberish(kind of stream code) only?

EDIT: OK, so it seems the problem is not in Bubble uPnP as I just sent the same Tidal streams into AVR which has streaming abilities and I can see all the titles on display
[Android Apps and Games] bubbleguuum:
The Java class loader did not find a class for whatever obscure reason. It is not supposed to happen with a properly working JRE, and assuming

BubbleUPnPServer.jar is not corrupted.
[Android Apps and Games] Serkenar:
I understand that, but it's happening with both OpenJDK7, and OpenJDK8, only on mipsel, and the jar isn't corrupted (I tried to redownload it), so it's strange. How do I find out which JRE class is missing, so that I can try to fix it? Thanks
[Android Apps and Games] bubbleguuum:
First verify the md5sum of BubbleUPnPServer.jar. It should be

33ec8fd75658bcecc456196d7e8fe996

If the md5sum is correct you can check that the class that is not found by the classloader is there:

mkdir tmp
cd tmp
unzip ../BubbleUPnPServer.jar
ls -l 'org/fourthline/cling/b/c/h$a.class'
[Android Apps and Games] Serkenar:
It matches, and ''org/fourthline/cling/b/c/h$a.class' is there:

root@unknown:/opt/share/bubbleupnpserver/tmp# md5sum ../BubbleUPnPServer.jar
33ec8fd75658bcecc456196d7e8fe996 ../BubbleUPnPServer.jar
root@unknown:/opt/share/bubbleupnpserver/tmp# ls -l 'org/fourthline/cling/b/c/h$a.class'
-rw-r--r-- 1 root root 1875 Mar 31 14:40 org/fourthline/cling/b/c/h$a.class

Probably this is a classloader issue. I'm not sure how to debug further, but honestly mipsel routers are too slow for BubbleUPnP Server anyway, I think, so I may just let it go.
[Android Apps and Games] bubbleguuum:
Yes a weird classloader issue.

You can still try to start BubbleUPnP Server like this (bypassing the launcher jar), to see if it works:

java -cp BubbleUPnPServer.jar:bcprov-jdk16-146.jar com.bubblesoft.bubbleupnpserver.server.Main
[Android Apps and Games] Serkenar:
Thanks, I tried it, and the error now looks different:

root@unknown:/opt/share/bubbleupnpserver# /opt/lib/jvm/openjdk7/jre/bin/java -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Dfile.encoding=UTF-8 -cp BubbleUPnPServer.jar:bcprov-jdk16-146.jar com.bubblesoft.bubbleupnpserver.server.Main
Apr 20, 2016 10:52:21 AM com.bubblesoft.bubbleupnpserver.server.Main initDataDir
INFO: data directory: /opt/share/bubbleupnpserver
Apr 20, 2016 10:52:22 AM com.bubblesoft.bubbleupnpserver.server.Main run
INFO: starting BubbleUPnP Server 0.9-update18...
Apr 20, 2016 10:52:28 AM com.bubblesoft.bubbleupnpserver.server.Options load
INFO: loaded configuration file: /opt/share/bubbleupnpserver/configuration.xml
logging to file enabled
[main (1) ] INFO - 24:00:00.163 - Main : starting BubbleUPnP Server 0.9-update18...
[main (1) ] INFO - 24:00:00.218 - Main : java.home: /opt/lib/jvm/openjdk7/jre
[main (1) ] INFO - 24:00:00.250 - Main : java.version: 1.7.0_99-Optware-ng
[main (1) ] INFO - 24:00:00.281 - Main : java.class.path: BubbleUPnPServer.jar:bcprov-jdk16-146.jar
[main (1) ] INFO - 24:00:00.314 - Main : file.encoding: UTF-8
[main (1) ] INFO - 24:00:00.345 - Main : default charset: UTF-8
[main (1) ] INFO - 24:00:00.375 - Main : bin dir: /opt/share/bubbleupnpserver
[main (1) ] INFO - 24:00:53.264 - d : >>> Starting UPnP service...
[main (1) ] INFO - 24:00:53.294 - d : Using configuration: com.bubblesoft.bubbleupnpserver.server.Main$a
[main (1) ] INFO - 24:00:53.772 - b : Creating Router: org.fourthline.cling.e.b
[main (1) ] INFO - 24:00:54.362 - r : Created server (for receiving TCP streams) on: /192.168.1.2:56572
[main (1) ] INFO - 24:00:54.397 - h : Creating wildcard socket (for receiving multicast datagrams) on port: 1900
[main (1) ] INFO - 24:00:54.472 - h : Joining multicast group: /239.255.255.250:1900 on network interface: br0
[main (1) ] INFO - 24:00:54.508 - a : Creating bound socket (for datagram input/output) on: /192.168.1.2
[main (1) ] SEVERE - 24:00:54.625 - ACRA$a :

Stack trace:
org.fourthline.cling.e.b.d: Could not initialize a: java.net.SocketException: Protocol not available
at org.fourthline.cling.e.a.a.a(SourceFile:111)
at org.fourthline.cling.e.b.<init>(SourceFile:131)
at org.fourthline.cling.d.a(SourceFile:97)
at com.bubblesoft.bubbleupnpserver.server.Main$b.a(SourceFile:1259)
at org.fourthline.cling.d.<init>(SourceFile:81)
at com.bubblesoft.bubbleupnpserver.server.Main$b.<init>(SourceFile:1249)
at com.bubblesoft.bubbleupnpserver.server.Main.run(SourceFile:426)
at com.bubblesoft.bubbleupnpserver.server.Main.main(SourceFile:218)

[main (1) ] SEVERE - 24:00:55.340 - ACRA$a : exiting server on uncaught exception...

It's getting even more weird :)
[Android Apps and Games] bubbleguuum:
Looks like the socket implementation of this JRE on that platform fails to create multicast UDP sockets using DatagramChannel.

And it looks like it has a problem with what the launcher jar is doing concerning classloading (it dynamically load jars).

JRE bugs :p
[Android Apps and Games] Serkenar:
I take it, the command that triggers this error is at "org/fourthline/cling/e/a/a/a.class(SourceFile:111)", right? Can you please share this line, or something similar I can try to reproduce in a short .java file? If I can do this, I can try writing to openjdk mailing list, and maybe get some guidance there :) Thanks
[Android Apps and Games] bubbleguuum:
Here's a standalone sample that should trigger the problem:

http://pastebin.com/Yb6wiEuZ

This sample enumerates network interfaces and attempt to create a DatagramChannel on each.

The line that throws the IOException is likely this one (StandardProtocolFamily.INET is a protocol):

DatagramChannel channel = DatagramChannel.open(StandardProtocolFamily.INET)

There is the possibilty that the network card doesn't support this type of socket, but it seems very unlikely and rather I think it

is an issue in the socket code handling on OpenJDK for this platform.
[Android Apps and Games] Serkenar:
root@unknown:/opt/share/bubbleupnpserver# java Test
Exception in thread "main" java.net.SocketException: Protocol not available
at sun.nio.ch.Net.setIntOption0(Native Method)
at sun.nio.ch.Net.setSocketOption(Net.java:334)
at sun.nio.ch.DatagramChannelImpl.setOption(DatagramChannelImpl.java:234)
at Test.createDatagramChannel(Test.java:133)
at Test.main(Test.java:153)

Thanks a lot! Now we got the actual problem, these lines fail:

.setOption(StandardSocketOptions.SO_REUSEADDR, true)
.setOption(StandardSocketOptions.SO_RCVBUF, 262144)

While this:

.setOption(StandardSocketOptions.IP_MULTICAST_TTL, 4)

is OK (the code runs fine after commenting out the two lines above).

So there's something wrong with SO_REUSEADDR and SO_RCVBUF, and maybe others. I know SO_REUSEADDR and SO_RCVBUF are defined as c macros in <asm/socket.h> for this platform, but I don't know how they're handled by Java, specifically by OpenJDK. Maybe, some native code has to be patched to include <asm/socket.h> -- I'll have to look closer. If I can't figure it out myself, will have to post to the mailing list. Thanks again :)
[Android Apps and Games] McConnor:
I admit I havent checked if the error was gone after this post but at least today the error is still there. Perhaps the cloud server is still not working properly?
[Android Apps and Games] bubbleguuum:
OK. both options are not absolutely essential, so I will probably make a code change so a failure to set them is not fatal.

But I would not be surprised of other issues in later execution, on this arch.
[Android Apps and Games] bubbleguuum:
Assuming this is about a SSLPeerUnverifiedException error ?

The problem is not the cloud server.

If you run BubbleUPnP Server using OpenJDK 8, that's it ('java -version' to verify) . Upgrading to an Oracle JRE fixes it.

On which OS / machine are you running BubbleUPnP Server ?
[Android Apps and Games] McConnor:
It's running on Windows XP. I updated Java as often as it prompted me - euch was just recently If i remember correctly...

Gesendet von meinem GT-I9100G mit Tapatalk

---------- Post added at 05:27 PM ---------- Previous post was at 05:24 PM ----------

Java Info gives me: Version 8 Update 77, (build 1.8.0_77-b03) Oracle Java...

Gesendet von meinem GT-I9100G mit Tapatalk
[Android Apps and Games] bubbleguuum:
OK. Please send me (bubbleguuum@free.fr) log file c:\Program Files (x86)\BubbleUPnP Server\BubbleUPnPServer.log.0
[Android Apps and Games] McConnor:
It's on the way - Thanks

Gesendet von meinem GT-I9100G mit Tapatalk
[Android Apps and Games] ssceddie:
Is it possible that show the carradio(bluetooth) the title and the interpret?
[Android Apps and Games] mcdanishdk:
To follow up on my postings about suddenly not being able to turn the volume up and down in BubbleUPNP, my old trusted WD TV Play kicked the bucket and I got a AC Ryan PlayOnHD Mini2. And suddenly, volume adjustment was possible. I haven't been able to do that in a long time, but lost track of when in all the frequent updates. I didn't even know if the updates WERE the culprit or it was the updates to Android, first the small Lollipop updates, and now, the big leap to my new Galaxy S7 and Marshmallow. And yes, the issue was still there on the new setup, only now that I switched mediaplayer, I can adjust volume again. Very useful when my 3600 digital albums are not the same (normalized) volume ;=) Great to have this feature back. Thanks for a wonderful app.
[Android Apps and Games] zieray:
#10930

Hi, I hope someone can help. In my setup I use Moode Audio (on a Raspberry Pi/IQ Audio DAC+) as a UPnP renderer and Kazoo as a control point, both which interact with MinimServer and BubbleUPnP Server on my Synology NAS. I was really pleased with this setup, though I’ve just installed the latest version of Kazoo (version 4.9.83) on my iPad and ran into a couple of issues – Kazoo is no longer displaying the artwork for the track playing and Tidal and Qobuz now aren’t available from the app.

I’ve tried restarting all the devices but that didn’t resolve things. I’ve also tried reinstalling everything but that hasn’t had any apparent effect ever. Incidentally, my NAS is running DSM 6 and BubbleUPnP Server has been configured to ‘create an OpenHome renderer.

The plot however thickens as I’ve stumbled upon a sort of fix for these issues. From the Media Renderers page on BubbleUPnP Server I’ve changed the OpenHome renderer name and room to something else and consequently for some reason my Moode Audio UPnP renderer is listed twice in Kazoo :p. If I select the first listing (which has a name that actually corresponds to the one assigned my Moode Audio UPnP renderer) Kazoo doesn’t display artwork for the track playing and Tidal and Qobuz aren’t available; whereas if I select the second listing, artwork is displayed and Tidal and Qobuz are listed!!! I’m at a complete loss what’s going on here – it would be great if these issues could be ironed out once and for all!
[Android Apps and Games] Perinis82:
I earlier sent logs of both Bubble Java apps apparently running correctly on the NAS but you may missed that post. By the way, about the force kill, I noticed that it happens right after I perform the launch or the install of the Bubble package. Maybe the Syno "thinks" the app is correctly running but it's not the case ? At this point, I'm no longer skilled to figure the problem out :crying:
[Android Apps and Games] bubbleguuum:
The log screenshot seems incomplete or displayed truncated. You can if you wish send me (bubbleguuum@free,.fr) the full log located at

/var/services/homes/bubbleupnp/appData/BubbleUPnPServer.log.0.
[Android Apps and Games] bubbleguuum:
[MENTION=7425116]zieray[/MENTION]

The renderer on the Moode Audio is provided by upmpdcli

upmpdcli is both a standard UPnP AV renderer and an OpenHome renderer. Linn Kazoo can only control the OpenHome renderer.

The OpenHome renderer implemented directly in upmpdcli does not support Qobuz/TIDAL. That's why, if you control it in Kazoo, you will not

have Qobuz/TIDAL tiles. And there was a bug (fixed in latest version of upmpdcli) where it would not show album art in Kazoo.

Now, you can also make an OpenHome renderer for upmpdcli using BubbleUPnP Server: that's what you did. This renderer supports Qobuz/TIDAL.

That's the OpenHome renderer you want to use in Kazoo and other OH Control Points. If you do not want 2 OpenHome renderers listed for upmpdcli, you should configure upmpdcli to not advertise its OpenHome renderer.
[Android Apps and Games] jaaptina:
Problem with playing Cloud/Qobuz:

I'm using Bubbleupnp for two year now. I've just updated my streamer to an Aries Mini. I want to keep using Bubbleupnp (or Bubble DS Next). However I can't play tracks from Qobuz (with Aries in Lightning mode). Account log in is no problem but when I select a track it won't play. The play icon does change to 'pauze' but immediately changes back to 'play'. I get this message on my idevice:

Strangely Qobuz tracks I have purchased do stream from the cloud without problem. Also with Aries in uPnP mode I can play all Qobuz tracks (but than other things don't go so well). Help is very much appriciated.

I'm on a Tidal trail account now. Tidal tracks stream without problems using Bubbleupnp.
[Android Apps and Games] Dreamweaver:
I have a problem with Yamaha RX-V 479 (2015) Receiver of a friend of mine.

fist I updated the Firmware of the Yamaha RX-V 479 Receiver.

the Receiver is connected by Wire

I can select the RX-V 479 Receiver in BubbleUPnP (latest official Version) as a renderer

I can play stuff from my SD Card by BubbleUPnP on my Android Phone as local renderer and I can switch to the Yamaha RX-V 479 and the Receiver plays the stuff from my SD-Card.

when I switch to my NAS (via Internet) and try to play the receiver shows for a half second the play-screen (no sound) and then it switches back to the "Server Top" Screen where "No content" is shown. Playing music from my NAS via Internet on my smartphone as local renderer is possible.

So I put in a Logfile here. This error only happens on the RX-V 479. I also did a hard reset but same issue after resetting it.

Enclosed there is a logfile. I modified my IP-Address :)
[Android Apps and Games] bubbleguuum:
Try to force proxying: Settings > Local Media Server > Use Proxy. You must also leave Android BubbleUPnP running.

The best way to play Qobuz (and other tracks) to your Aries would be to play to the Aries (in UPnP mode) wrapped as an OpenHome renderer by BubbleUPnP Server.

The 2 other modes not using BubbleUPnP Server (Aries in UPnP or Lighning mode) require to leave Android BubbleUPnP running.
[Android Apps and Games] bubbleguuum:
Does the Yamaha have Internet connectivity ? It it doesn't, it cannot play these streams.
[Android Apps and Games] Dreamweaver:
I did a Firmware Update by Internet so the receiver should have...