VLC for iOS, iPadOS and Apple TV • VLCkit timeout using Tailscale



Hello,

I am experiencing a strange behaviour with apps using VLCkit (including VLC’s iOS client) when connected using Tailscale. If I connect to my Plex server, the music won’t start for about 4min. I did activate the logs. I’m by no means and expert but noticed that VLC seems to attempt to connect using HTTP/1.1 twice which fails. It eventually tries using HTTP/1.0 which succeeds right away.

I thought at some point that the delay could be due to some buffering issue but I have monitored the network usage in the plex server and can confirm that it only starts streaming once the HTTP/1.0 connection is established and continuously streams from there without any bandwith issue.

I am not sure if this is a VLC issue or a Tailscale issue. Not that:
– I am using the local IP address as Tailscale translates that into the relevant IP. It works fine with other apps and the same behaviour is experienced if I use the Plex server’s Tailscale IP.
– I do not experience any lag in VLC if using a Samba share, just http.
– I am not experiencing this delay when connected to my home network using wifi (not using Tailscale)
– same issue is experienced with Navidrome app using VLCkit (LMP Music) – the issue has been reported it likely to be a VLCkit issue
– no issue with Navidrome app NOT using VLCkit (Amperfy/Substreamer)

Would anyone have any suggestion? It’s a bit painful having to way 4 min for a song to start…

Code:

[DBG] looking for keystore module matching "any": 6 candidates[DBG] no keystore modules matched[DBG] resolving 192.168.1.101 ...[DBG] outgoing request:GET /library/parts/433/1361567384/file.m4a HTTP/1.1Host: 192.168.1.101:32400Accept: */*Accept-Language: en_USUser-Agent: VLC/3.0.19 LibVLC/3.0.19Range: bytes=0-[DBG] connection failed[ERR] HTTP connection failure[DBG] querying proxy for http://192.168.1.101:32400/library/parts/433/1361567384/file.m4a[DBG] no proxy[DBG] http: server="192.168.1.101" port=32400 file="/library/parts/433/1361567384/file.m4a"[DBG] looking for keystore module matching "any": 6 candidates[DBG] no keystore modules matched[DBG] net: connecting to 192.168.1.101 port 32400[WARN] connection timed out[DBG] connection succeeded (socket = 17)[DBG] sending request:GET /library/parts/433/1361567384/file.m4a HTTP/1.0Host: 192.168.1.101:32400User-Agent: VLC/3.0.19 LibVLC/3.0.19Icy-MetaData: 1[DBG] HTTP answer code 200[DBG] Content-Type: audio/mp4[DBG] auto re-connect enabled[DBG] using access module "http"[DBG] looking for stream_filter module matching "prefetch,cache_read": 75 candidates[DBG] using 4137431 bytes buffer, 4137431 bytes read[DBG] using stream_filter module "prefetch"[DBG] looking for stream_filter module matching "any": 75 candidates[DBG] no stream_filter modules matched[DBG] looking for stream_directory module matching "any": 3 candidates[DBG] no stream_directory modules matched[DBG] attachment of directory-extractor failed for http://192.168.1.101:32400/library/parts/433/1361567384/file.m4a[DBG] looking for stream_filter module matching "record": 75 candidates[DBG] using stream_filter module "record"[DBG] creating demux: access="http" demux='any' location='192.168.1.101:32400/library/parts/433/1361567384/file.m4a' file="(null)"[DBG] looking for demux module matching "any": 138 candidates[WARN] unknown box type cpil (incompletely loaded)[WARN] unknown box type pgap (incompletely loaded)[WARN] unknown box type tmpo (incompletely loaded)[WARN] truncated box mdat discarded[WARN] truncated box mdat discarded[DBG] dumping root Box "root"[DBG] | + ftyp size 32 offset 0[DBG] | + moov size 52694 offset 32[DBG] | | + mvhd size 108 offset 40[DBG] | | + trak size 47557 offset 148…

Statistics: Posted by Batwam — 03 May 2024 03:46