DLNA discovery fails for Gerbera server (perhaps others)
On the Android version some servers (specifically Gerbera/Mediatomb in my case) are not listed.
Description
The discovery does not display Gerbera server, the logs display an error message.
06-21 15:10:12.997 29866 29898 E : For input string: "60606http:"
06-21 15:10:12.997 29866 29898 E : java.net.MalformedURLException: For input string: "60606http:"
06-21 15:10:12.997 29866 29898 E : at java.net.URL.<init>(URL.java:635)
06-21 15:10:12.997 29866 29898 E : at java.net.URL.<init>(URL.java:498)
06-21 15:10:12.997 29866 29898 E : at java.net.URL.<init>(URL.java:447)
06-21 15:10:12.997 29866 29898 E : at org.videolan.tools.HttpImageLoader$downloadBitmap$2.invokeSuspend(HttpImageLoader.kt:59)
06-21 15:10:12.997 29866 29898 E : at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
06-21 15:10:12.997 29866 29898 E : at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
06-21 15:10:12.997 29866 29898 E : at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
06-21 15:10:12.997 29866 29898 E : at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:738)
06-21 15:10:12.997 29866 29898 E : at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
06-21 15:10:12.997 29866 29898 E : at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
06-21 15:10:12.997 29866 29898 E : Caused by: java.lang.NumberFormatException: For input string: "60606http:"
06-21 15:10:12.997 29866 29898 E : at java.lang.Integer.parseInt(Integer.java:615)
06-21 15:10:12.997 29866 29898 E : at java.lang.Integer.parseInt(Integer.java:650)
06-21 15:10:12.997 29866 29898 E : at java.net.URLStreamHandler.parseURL(URLStreamHandler.java:246)
06-21 15:10:12.997 29866 29898 E : at java.net.URL.<init>(URL.java:630)
06-21 15:10:13.822 29866 29989 W VLC : [c0587f40/7525] libvlc services discovery: Could not download device description! Fetching data from http://192.168.22.191:50500/description.xml failed: UPNP_E_INVALID_URL
Expected behavior
All servers on the network are displayed.
Actual behavior
Some servers are displayed, others are not.
Steps to reproduce
- Run a Gerbera server on the network
- Run VLC on Android phone
- Observe the Gerbera server is not listed
- Observe the error in the logcat
If necessary I can provide the steps I use to run Gerbera in a Docker container for testing.
Context
This applies to the Android version running on a phone, it does not happen on Android on FireTV.
The servers that are not displayed do work successfully on VLC desktop and VLC for FireTV. They also work on other devices such as smart televisions with DLNA capability.
App version
VLC for Android 3.3.4. Also tested on nightly 3.4.0 beta 6 (2021-08-29)
Android version
Android 10.
Device model
Multiple.
App mode
Phone.
This was originally noted on the forum but no response was received there.