jellyfin / jellyfin-tizen

Jellyfin Samsung TV Client
https://jellyfin.org
993 stars 79 forks source link

SyncPlay playback issues on Samsung TV's #71

Open vrilly opened 3 years ago

vrilly commented 3 years ago

I've been playing a bit with jellyfin, and noticed that upon playing a stream on my TU8079 (2020) Samsung smart TV it plays smoothly. But once syncplay is enabled it stutters heavily.

One way to mitigate this is to adjust the syncplay config (src/components/syncplay/core/PlaybackCore.js), and disable enableSyncCorrection.

The result of this is that the TV does not respond to state changes from other clients, but when controlling media on TV the change propagates to the other clients.

I also tried to keep sync correction enabled, but disabling SpeedToSync, and change the minimum time difference for SkipToSync to 5 seconds(default of 400ms still causes issues with the playback). This keeps the client in sync upon pausing and seems to work fine with the state changing on other clients!

To keep track how it works with the tweaked values i'll try to watch some stuff together with friends in the next days and keep track of any issues i encounter here.

It might be interesting for here to think of a way to override such things in jellyfin-web(patch file applied with yarn for example?), or add something like known issues with workarounds for stuff like this for an better UX.

dmitrylyzo commented 3 years ago

It might be interesting for here to think of a way to override such things in jellyfin-web(patch file applied with yarn for example?), or add something like known issues with workarounds for stuff like this for an better UX.

IMO, it will be tricky because app is receiving a compiled web.

As for the issue, it may be present for LG TVs as well - then it needs to be fixed in jellyfin-web. How does the video play (for you and your friends)? DirectPlay, DirectStream or Transcode? Do you have the same problem when using browsers?

vrilly commented 3 years ago

Webbrowser on desktop systems don't have any issue with it. We both tried DirectPlay and Transcode material, both with the same issues. The video plays smoothly on other devices, just the TV can't keep up with the syncing

dmitrylyzo commented 3 years ago

btw, https://github.com/jellyfin/jellyfin-web/pull/2204

OancaAndrei commented 3 years ago

@vrilly, I've faced this issue on my 1st gen Chromecast as well (when porting SyncPlay to it): SpeedToSync is indeed hardware demanding.

What you are experiencing is exactly what I'm trying to solve here in a more "sophisticated" way, mainly because I wanted to avoid sending special configurations to the Chromecast.

The PR mentioned above (jellyfin/jellyfin-web#2204) could be an easier fix for this. Does the navigation need special tweaks for TVs? I'm attaching some screenshots of the current implememtation.

Screenshots ![localhost_8096_web_index html (2)](https://user-images.githubusercontent.com/6690571/112962563-ce4fb300-9146-11eb-909c-8b13fd8a1f61.png) ![localhost_8096_web_index html](https://user-images.githubusercontent.com/6690571/112962425-a95b4000-9146-11eb-8369-8fc08aa50b39.png) ![localhost_8096_web_index html (1)](https://user-images.githubusercontent.com/6690571/112962444-ae1ff400-9146-11eb-8b51-1441f2bda148.png)
vrilly commented 3 years ago

I will try pulling in your patch later.

Maybe it would be a good idea for devices like this to have an extra feature flag in the adapter for jellyfinweb, and use different defaults for these devices to offer a better OOTB experience. But that would need a new issue/PR in jellyfin-web if i´m not feeling lazy :P

Zelaf commented 1 year ago

I want to mention I'm having the same issue. However I was able to make it slightly more stable by disabling Sync Correction in the SyncPlay settings.

I do wonder if there's more settings one can change to make it a bit better.

thornbill commented 1 year ago

We could definitely change the defaults for TVs. We do this for mobile already because they also break when some of those options are enabled...