4K Transcoding Issues -Buffering -Direct Play -LAN -WAN

I want to start out by saying that lately reading threads about 4K transcoding issues I am confused what solutions to follow.

I am asking that if you are to respond to this thread that you kindly use screenshots and detailed instructions to explain how to perform a specific task. Off topic I think PLEX team should make a few technical instruction videos on this matter for the purpose of support.

I have seen a thread about disabling 4K transcoding and would agree with many Plex Pass members that having able to deploy disable transcoding on the server side is essentials. {How to disable transcoding?}

I am sure we can all agree that 4K is the future and reality of the media streaming going forward (not excluding 8K).

So with that said, here is my current setup.

I have HP G9 Proliant 20 Core server running Vmware 6.7
On this platform I am running 2 (two) PMS servers with latest Versions of 1.18.4.2164
Server 1: RHEL 8 -External server facing public Internet -Remote Access Enabled
Server 2: Windows Server 2016 -Internal, for home use only. No access to Internet i.e. remote access is disabled (media and library is stored on this server)

Client 1: PC Windows 10 version with 4K display: Version 1.4.1.940-574c2fa7 (internal)
Client 2: Web client on Firefox Mac or Win 10 PC (internal/external)
Client 3: TV Samsung Smart TV 1080 (internal)
Client 4: Sony TV 4K (Google Android) 2017 (external)

All internal connections are wired and have Gigabit connection. Plenty of bandwidth.

My library is about 40% of 4K and 60% of 1080 media.
In all cases I am experiencing buffering.

I have been advised to try a few things (assume only 1 media is playing at a time):

  1. Set Server 1 PMS server side to Limit Remote Stream = ORIGINAL
  2. Set Server 1 client side to Video Quality = MAXIMUM

This only works when I play Server 1 locally inside my LAN, otherwise it is buffering.

The above unfortunately is not possible for Server 2 which has internal only connection with Remote Access = DISABLED. So you do not have “ORIGINAL” option.

Furthermore, even with transcoding enable, technically my server seems to handle it fine. It is scraping the bottom at about 87% average CPU utilization but it works and still I get buffering.

Can Plex Team offer solutions for my scenarios? How do I resolve this and if not possible to resolve, what plans Plex team has to fix this issue going forward without having memebers to mess with the register?

Unfortunately, a lot (Not all) of forum users are lazy, or maybe not at their machines, or simply don’t wish to take the time to make screenshots (I am one of them).

Buffering is largely a bandwidth issue, and if it’s not bandwidth, it could be decoding on the client side.

When you say Internal and external here, are you referring to LAN vs WAN?

Does this buffer when playing Native 1080p content?

4K Content is typically h.265, which doesn’t work in a browser and will transcode every time
 Avoid this at all costs if you can. I have disabled Browsers from being able to view anything on my Plex server using TauTulli and the Kill Stream script.

Using the Plex Windows Client found here:
https://www.plex.tv/media-server-downloads/#plex-app
When clicking on Apps & Devices?

115Mbps is not fast enough for 4K (just fyi), those files commonly burst above 100Mbps. If your maximum upload is 115, I would advise not attempting to remotely stream 4K unless you transcode the files down to a more manageable bitrate for your connection (something like 25Mbit w/ 50Mbit bursts).

Lastly, you should probably attach logs to your post.

  • Go to settings and make sure you have Debug logging on (Not Verbose)
  • Turn off PMS
  • Turn on PMS
  • Wait 3-4 Mins for it to finish starting up
  • Recreate the issue
  • Stop playing the file after issue occurs
  • Wait another 2 minutes
  • Go into settings and download the log files and share them here in a post
1 Like

Totally understood. However, graphical images are very helpful in order to avoid any confusion in regards to technical support.

For now, lets proceed with an assumption that it is not a bandwidth issue. In fact in case of LAN (local=internal) we can rule out bandwidth issue as all connections are wired CAT 7 at 1 gig speeds. Should be plenty to play a singe 4K media file.

yes,
LAN = internal, home
WAN = external, facing public

Does it buffer when i play 4K content on 1080 TV at home? Yes
There are no issues with playing 1080 content on 1080 TV.

This is why I have included the thread which points for PLEX team to create Transcoding=Disable option on server side. This will avoid people messing with registry and codes. I agree to avoid transcoding 4K at all times but if the serves is powerful enough to transcode, which in this case it is, I should be able to do so.

I will increase it to 150mbps. ok?
If this filed has nothing in it then what is the default?

While I am working to replicate the issue and provide logs, Lets talk about LAN internal connection. It has enough bandwidth. How to set Server 2 PMS and Win 10 Plex client to be able to play 4K?

One thing not mentioned is the actual bitrate of the 4K files. Saying 4K is pretty meaningless.
I have a few 4K encodes at around 25-40 Mbps average bitrate
 I also have around 350 4K Remuxes at anything up to 95Mbps average bitrate peaking at around 130Mbps.

It would be really helpful if you gave an indication of you 4K media files. If they are Remuxes then web browsers and Smart TV apps are the worst possible solutions for clients.

But are the TV’s Gigabit. LG even on the brand new models in almost always cases still only carry 10/100 ports. Same with Samsung. Sony I have no idea
but on a 2017 model, I would suspect that isn’t gigabit either.
This shouldn’t be a problem if your files are lower bitrate encodes. If they are remuxes then good luck.

1 Like

Yoho-Ahoy beat me to it :smiley:

The TV’s are the likely bottleneck, I was just trying to figure out a few more details before I made my argument. That way.

Also, the 1080p TV, is likely getting things transcoded for it? Have you checked to see whether or not that i s happening?

1 Like

That’s not how that setting works. It’s still limited by the upload speed of y our Internet connection no matter what you set it at. But, if it’s Gigabit internet, it should be 1024Mbps. You should run a speed test to determine what your max upload speed is from the server and then set it accordingly.

My 4K media is about 8bit - 10 bit.
How do I find out the details about the media so I can post it here?

When viewing the Title poster there is a vertical ellipsis in the bottom right when hovering the cursor/Pointer. Click and scroll down to Info, there you will find a highlighted xml link.

1080 TV LAN CLIENT:

I agree, for the 1080 TV (LAN), the Ethernet port is 10/100 Mbps which is why the PMS server should be transcoding. According to my initial post the server/CPU has enough ‘power’ to handle it.

Here is the screenshot of the file in question with details.

When I try setting of Direct Play on 1080 TV (LAN) as expected I get the following error, which is again, expected.

So the only way to play 4K content on 1080 TV is transcode but this content is buffering when mode set to auto on Samsung TV PLEX app.

There are no issues on 1080 TV playing 1080 native content. However this post is not about 1080 it is about 4K content.

BANDWIDTH:

LAN bandwidth is 1 gig
WAN bandwidth is 1 gig (Verizon ISP)

As for server 2 (LAN) I have not heard the solution on how to set bandwidth to ORIGINAL when Remote Access = DISABLED. There is no option available to do so as oppose to Remote Access= ENABLED Server.

Going forward, lets assume that the bandwidth and CPU is able to handle the 4K (except 1080 TV) how do we resolve the buffering issue on 1080 TV?

WEB CLIENT:

Playing same file in the web browser on LAN results in frequent buffering. My PC Ethernet card is 1 gig.

PLEX MEDIA PLAYER:
On same PC, playing same content from Server 1 on PLEX Media PLayer with bandwith option set to original and quality set to maximum - WORKS FINE. This is the only option that works now.

Also (asking same question) with server 2 (LAN) using PLEX Media player on win 10 how to set bandwidth to original?

Please, as a reminder I made this post not so that we can criticize its author or his hardware but to find a common solution that will benefit all users who find themselves in the same situation.

Please propose your solutions going forward.

Thanks in advance

It won’t work the way you want it.

From the support articles:

The Guideline

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)
  • 1080p (10Mbps, H.264) file: 2000 PassMark score
  • 720p (4Mbps, H.264) file: 1500 PassMark score

Passmark on your system is 15420 and you are virtualizing which means that all CPU isn’t available.

https://www.cpubenchmark.net/cpu.php?cpu=Intel+Xeon+E5-2640+v4+%40+2.40GHz&id=2752

I haven’t seen anything to suggest either is happening.
Any limitations in your hardware are more hard facts rather than criticisms.
Now looking at those screenshots the Samsung Smart TV client is extremely old and no longer developed.

Generally any transcoding of 4K is best avoided altogether.
Best achieved by keeping 4K content in its own library and playing only on clients and setups that are capable of direct playing it

I’m sorry but that screenshot of 70-90% CPU usage is NOT an indication that your CPU is handling it well.
Even if you weren’t using virtualisation.

It is very frustrating reading responses of what can’t be and shouldn’t be done.
There are no solutions proposed.

If the transcoding should be avoided for 4K then may be its time for PLEX team to look into building a new transcoding engine algorithm as with 1080 transcoding my CPUs are barely consume 5% if not less.

What about Disable trasnscoding universally option on the PMS?

Finally I still can’t get a response to my question with server 2 (LAN) using PLEX Media player on win 10 how to set bandwidth to original if the Remote Access = DISABLE?

It is ok to say I don’t know or it is not possible.
thanks

You’re missing the point. With a suitable CPU a 4K remux being forced transcoded with hardware acceleration uses less than 10%.
With the right hardware 4K transcoding is not an issue at all.

Hello again.

Let us compare these numbers.

and

2000 passmarks for 1080 x264, versus 17000 for 4k HEVC.

HEVC.

it is completely different than 1080 x264.

it takes WAYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY more cpu to compress or decompress HEVC.

try to understand, that transcoding 1080 x264, is like a grain of sand at the bottom of the ocean.

HEVC is the OCEAN.

Ok now that we got some understanding there.

there is no supported way to disable transcoding.

if you did manage to disable it, then if your clients could not direct play everything, then it simply would not play.

There are NO BANDWIDTH LIMITS for the LAN on the server.

Bandwidth limits are only applies to REMOTE clients, at the server.

On most plex clients, there is a quality section of settings, from there you can usually set local and remote quality bandwidth according to available bandwidth.

the default local quality is usually ‘recommended’ or ‘original’. Which are the same.

here is a screen of the web client (which are not compatible with 4k/hevc).

2 Likes

PMS makes the decision to transcode based on file/codec compatibility only I think, not bandwidth (unless using the new automatic setting I think, which I don’t use and I’ve seen many complain about it).

That file is only 25Mbit, so it’s not even coming close to the 100Mbit limit of your TV, this brings us back to the transcoding of the file. Your Server simply isn’t strong enough to transcode as others have already pointed out.

Then change your 115Mbit up to 1024Mbit as discussed previously, no sense in limiting your remote streams by nearly 85-90%

Except everything points to the CPU NOT able to handle 4K, so why on earth would you not take that into consideration?

Web clients do not support x265, therefore they transcode, this will cause issues because your CPU isn’t powerful enough.

The solution is: Play 4K content only on devices capable Direct Playing 4K, or upgrade your hardware to include an NVidia GPU so that you can transcode at a better/faster rate than your CPU alone.

I have a 4K Library (about 250-300 items) in full 4K HDR. Every single movie in that Library has a 1080p copy in the regular movies library (about 3000 movies total in there). So that when I want to watch those movies on devices that are incapable of Direct Playing the 4K’s, I can without having to worry about transcoding.

No one is criticizing you or your hardware, we’re telling you the limitations of the hardware, and exposing the limitations of your knowledge on the subject matter. These are not criticisms, and no one is judging you, you should just take what we are saying and adjust your expectations and learn the things you don’t know.

1 Like

If 20 Core CPU server isn’t enough what is the recommended server and its hardware configuration needed to transcode 4K? Please be specific. Lets start with # of cores?

If there is no value specified in the “LIMIT REMOTE STREAM BITRATE” as show in the image in previous posts (115Mbps), what is the default Mbps value?

I tested same 4K media with Roku box remotely (WAN). Although it has condensed image to 720p it did work without any buffering.

the number of cores is irrelevant, what is relevant is the overall computing power of the system.

HEVC transcoding takes approximately 17000 passmarks PER transcode/stream.


The Guideline

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)
  • 1080p (10Mbps, H.264) file: 2000 PassMark score
  • 720p (4Mbps, H.264) file: 1500 PassMark score

17000 for hevc, versus 2000 for x264.

thats should help you understand how much more difficult hevc is for cpu.

Unfortunately, this isn’t as cut and dry as “Number of cores” The CPU needs a passmark score of 2000 for 1 x 1080p transcode. It needs to be MUCH higher for 4K Transcoding. If you’re insistent on transcoding 4K, then you should invest in a GPU so you can take advantage of GPU Hardware Acceleration, though this is not what is recommended.

If it were then just as simple as “Well 4K is 4x the size of 1080, so make it 8000 and call it a day” I’d have an answer for you, but decoding x265 is also much harder than decoding x264, then you have the inherent problem that plex doesn’t currently tone map 4K content in the conversion, so 4K HDR content looks washed out. As I said multiple times, transcoding of 4K is not recommended.

What is recommended, is NOT transcoding 4K content. Making your 4K Content Compatible with whatever you’re trying to stream to, and keeping a 1080p copy of the movie for any device that is incapable of playing 4K.

I am not sure what the default is when nothing is specified, but why are you being obtuse about this? Set it to whatever your upload rate is with your ISP and be done with it. That’s the number it’s looking for, so just give it that number. If you don’t know that number, go to www.speedtest.net run a speedtest, and use the value of the “Upload” speed.

I dunno, that seems strange. going from 2160 → 720 seems like it would be more intensive than going 2160 → 1080, but I’ve never tried such a thing so I can’t be certain.

1 Like

How to enable Direct play on Server 2 (LAN)?

As said before, anything over LAN will already attempt to DirectPlay as long as the client is setup to also DirectPlay. It should only transcode when there’s a compatibility issue