2024-10-09, 08:28 AM
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:
And after a bit I also see this:
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).
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).