So, I’ve tried a few things:
1 - I’ve changed “Burn subtitles” from “Automatic” to “Image only” and it seems that the old video started playing with direct play now. It’s HEVC, 10bit, and has ASS subtitles. I never set it to “Automatic”, so it was either working before or something else happened.
2 - Some new videos were still lagging. Opting out of the public preview seem to have improved it, but I’m not sure. This one is also HEVC + 10bit + ASS, but is being transcoded.
Because the first is direct playing and the second is transcoding, I started looking into logs and found some interesting things like:
INFO - [Plex for Samsung] [MDE] Application decision, directPlay: false, directStreamVideo: false, directStreamAudio: true
INFO - [Plex for Samsung] Cannot direct play with protocol: http, codec: h264. Reason: Video stream exceeded a max bit depth of 8
INFO - [Plex for Samsung] Cannot direct stream with protocol: dash, codec: h264. Reason: Video stream exceeded a max bit depth of 8
So why only for this file? The other is 10 bits and it works. I also found some weird stuff like this one complaining about mp3:
DEBUG - [Transcode] MDE: Selected protocol dash; container: mp4
DEBUG - [Transcode] MDE: analyzing media item 34794
DEBUG - [Transcode] MDE: com.plexapp.agents: Direct Play is disabled
DEBUG - [Transcode] MDE: com.plexapp.agents: media must be transcoded in order to use the dash protocol
DEBUG - [Transcode] MDE: com.plexapp.agents: no direct play music profile exists for http/mp3/mp3
DEBUG - [Transcode] MDE: Cannot direct stream audio stream due to codec mp3 when profile only allows aac
So that got me thinking… What if Plex is picking up the wrong profile to decide what should be transcoded or not? So look what I found:
DEBUG - [Now] Device is Tizen (TV 2017).
DEBUG - [Now] Profile is Generic
Does that mean that even when the device is reported as Tizen, for some reason, Plex uses the Generic profile now? I don’t know.
I also updated the server, on my Synology NAS, so I’m not sure if te problem is on the client, server or both 