Jellyfin Forum
DLNA stream to a Samsung TV fails when attempting to Seek - Printable Version

+- Jellyfin Forum (https://forum.jellyfin.org)
+-- Forum: Support (https://forum.jellyfin.org/f-support)
+--- Forum: Troubleshooting (https://forum.jellyfin.org/f-troubleshooting)
+--- Thread: DLNA stream to a Samsung TV fails when attempting to Seek (/t-dlna-stream-to-a-samsung-tv-fails-when-attempting-to-seek)



DLNA stream to a Samsung TV fails when attempting to Seek - vaidas - 2024-10-09

I'm streaming a video from Jellyfin 10.9.11 on MacOS to a ~2019 Samsung UE48H6400 and it does work but as soon as I try to seek, it breaks and the TV switches back to another source (terrestrial TV in my case).

Not knowing how DLNA works I captured the traffic with Wireshark and analyzed the HTTP requests.
From that all I could tell is that as soon as the Seek command is received the process on the TV stops in its tracks (crashes?).

This is the excerpt from the Jellyfin log when it happens:
Quote:[2024-10-09 11:20:36.469 +03:00] [ERR] [22] Jellyfin.Plugin.Dlna.Main.DlnaHost: Error updating device info for "[TV]Samsung LED48"
System.Net.Http.HttpRequestException: Operation timed out (192.168.0.103:7676)
---> System.Net.Sockets.SocketException (60): Operation timed out
  at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)
  at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token)
  at System.Net.Sockets.Socket.<ConnectAsync>g__WaitForConnectWithCancellation|285_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken)
  at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken)
  --- End of inner exception stack trace ---
  at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken)
  at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
  at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
  at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem)
  at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken)
  at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
  at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
  at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
  at Microsoft.Extensions.Http.Logging.LoggingHttpMessageHandler.<SendCoreAsync>g__Core|5_0(HttpRequestMessage request, Boolean useAsync, CancellationToken cancellationToken)
  at Microsoft.Extensions.Http.Logging.LoggingScopeHttpMessageHandler.<SendCoreAsync>g__Core|5_0(HttpRequestMessage request, Boolean useAsync, CancellationToken cancellationToken)
  at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, Cance
llationToken originalCancellationToken)
  at Jellyfin.Plugin.Dlna.PlayTo.DlnaHttpClient.SendRequestAsync(HttpRequestMessage request, CancellationToken cancellationToken)
  at Jellyfin.Plugin.Dlna.PlayTo.DlnaHttpClient.SendCommandAsync(String baseUrl, DeviceService service, String command, String postData, String header, CancellationToken cancellationToken)
  at Jellyfin.Plugin.Dlna.PlayTo.Device.GetTransportInfo(TransportCommands avCommands, CancellationToken cancellationToken)
  at Jellyfin.Plugin.Dlna.PlayTo.Device.TimerCallback(Object sender)

And after a bit I also see this:
Quote:[2024-10-09 11:21:49.986 +03:00] [ERR] [19] Jellyfin.Api.Middleware.ExceptionMiddleware: Error processing request: "The request was canceled due to the configured HttpClient.Timeout of 100 seconds elapsing". URL "POST" "/S
essions/214a1a7a5f7c4eadc34868191db97cf1/Playing/seek".

Might this be some sort of problem with the format that is being sent to the TV?

From what I can tell transcoding is not being used (no ffmpeg log files in the log dir).

P.S. Same thing happens with Plex and other software (although I had to fiddle with both formats and profiles on Plex).


RE: DLNA stream to a Samsung TV fails when attempting to Seek - TheDreadPirate - 2024-10-09

It is probably a bug with the TV's built-in player. Check if Samsung released newer firmware for your model.


RE: DLNA stream to a Samsung TV fails when attempting to Seek - vaidas - 2024-10-10

I have checked for updates and it seems this firmware hasn't been updated for a looong time.

It would be a shame to just have the DLNA functionality non-functional. Doesn't seem likely they'd just abandon it without ever fixing it.


RE: DLNA stream to a Samsung TV fails when attempting to Seek - TheDreadPirate - 2024-10-10

In this case, it isn't DLNA, per se. It is the TV's player, probably.

Having said that, DLNA has been abandon since Feb 2017.

https://en.wikipedia.org/wiki/DLNA#History_and_member_companies


RE: DLNA stream to a Samsung TV fails when attempting to Seek - vaidas - 2024-10-14

Maybe it's possible it only happens for certain formats?
Is there a way to know what formats are supported by the TV and what's currently being used without having to tcpdump and analyze everything?


RE: DLNA stream to a Samsung TV fails when attempting to Seek - TheDreadPirate - 2024-10-14

You'd have to go to the manufacturer's page for the TV and hope it is documented. The safe bet is H264/AAC. Pretty much everything supports that. If you created a device profile that says it only supports those codecs, it should play no problem.

Pretty sure the "default profile" does this already. You could use that as a template and modify it to match your device name.


RE: DLNA stream to a Samsung TV fails when attempting to Seek - vaidas - 2024-10-16

What would be worthwhile combinations to try?