Jerky playback on AppleTV for UHD versions of media

Server Version#: 4.43.4
Player Version#: AppleTV

When playing certain UHD media formats on my older AppleTV which transcodes to 1080p I experience jerky playback unless I let the transcoding buffer first where it will play until the playback catches up with the end of the buffer.

The server has 8 cores (i7-7700T @ 2.90) and while transcoding the process never exceeds 350% CPU and server load is around 1.4. In other worse, the server has plenty of headroom for processing. I am wondering if either (a) plexmediaserver’s CPU usage is throttled as a consequence of running it as a snap or (b) the error is a red herring and the problem is actually because my AppleTV is old.

Any ideas where to start on this first?

The i7-7700T is a 4-core processor. I’m not 100% sure but from what I remember Plex is not using hyper-threading.

Your CPU has a passmark score of ~9800 (benchmark). In order to transcode a 4K UHD movie, you’ll need a much higher passmark score!
From the guideline on CPU requirements from the support article What kind of CPU do I need for my server:

Very roughly speaking, for a single full-transcode of a video, the following PassMark score requirements are a good guideline for the following average source file:

  • 4K HDR (50Mbps, 10-bit HEVC) file: 17000 PassMark score (being transcoded to 10Mbps 1080p)
  • 4K SDR (40Mbps, 8-bit HEVC) file: 12000 PassMark score (being transcoded to 10Mbps 1080p)

Given you have a Plex Pass you could try playing the video with hardware accelerated streaming enabled in your server settings (Settings > [Server Name] > Transcoder > Use hardware acceleration when available). This will offload the transcoding to the integrated GPU of your i7-7700T which should be powerful enough to handle it.
Keep in mind… Plex will fallback to CPU based transcoding if the player requests a subtitle to be burned into the video!

1 Like

Thanks, I was not aware of Plex not hyperhread-aware. That makes a big difference. I guess I should make optimized versions of these… once I can get Plex to write to disk.

It’s still notable that the transcode process is clearly throttled. Is this something that I can tweak since this server’s load is 95% Plex transcoding? If so I could probably squeeze more cycles out of it… maybe not enough to get beyond this specific issue, but could be worth a try.

Thanks!

1 Like

Hyperthreading or not… your CPU is not powerful enough to deal with the transcoding for 4K UHD content.

I should have mentioned that this machine’s been transcoding 4K media on-the-fly for nearly a year before finding out that my CPU’s passmark score of 7,827 is not even close to what Plex recommends for 4k -> 1080p. However, since the media file in question was 10-bit HEVC the fact that was where it hit the wall is not particularly surprising. Also, I found elsewhere that it is not possible to change transcode throttling behavior so that answers that question as well. Looks like the only way to non-destructively deal with this is to make optimized versions for all 4K media.

If you were able to stream 4K files on-the-fly before they were either directly played/streamed or you had hw-accelerated transcoding enabled.

The only only scenarios where this won’t work for you are:

  • Files with subtitles requiring to be burned into the video. That should no longer happen on the Apple TV using the current player – unless…
    • you activated Settings > Advanced > Enable legacy player[!?])
    • you set the Apple TV to burn in all subtitles (Settings > Subtitles > Burn Subtitles > Alway)
  • HDR files not playing on a non-HDR device: Plex has recently added HDR->SDR tone-mapping which is quite resource-hungry. There’s special requirements to enable that on a Linux system, requiring additional libraries
    Those are mentioned if you manually update your PMS setup or check-out the post linked by @TeknoJunky above :
    https://support.plex.tv/articles/hdr-to-sdr-tone-mapping/

Edit/PS: using hw-accelerated transcoding is another way to handle this without destructing your original files

I assumed anytime a 1080p client viewed 4k media it was by definition transcoded. Also, I noticed that this is not the first time I watched an 10-bit HVEC 4K file. The reason I didn’t have issues with it was because I was viewing on my iPad Pro so presumably it used Direct Play. (That’s really the only rational explanation so I hope that’s correct.)

Finally, thanks for the info on HDR. I have been getting HDR 4K media anticipating that I will be getting hardware that supports it for ā€œChristmasā€ but knowing that I will definitely require a significantly more powerful transcoder that might change me plans a bit.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.