Plex transcoding ignores set buffer limit and occasionally resets

Hey all,

Most of my friends use my server with no issue, with the exception of 1. No matter how he plays the content (mainly uses the Windows Plex App), his stream ignores my set transcode buffer (which is set to 60 seconds) and it occasionally restarts the transcoding process - I can see the buffered portion disappear and start to build up again. This is causing consistently high CPU usage and causes issues with other streams there are attempting to be played.

This issue occurs regardless of what they watch and works as expected for others.

Attached picture is an example. Listed is his buffer and another user, while they are watching different episodes and one is slightly longer than the other, the buffer definitely extends beyond the set 60s.

Am I missing something here? Any help is appreciated.

Your pic of the movies playing are cropped and can’t see if either one is Direct Play or transcoding. Also your directory for transcoding in the 2nd pic is blank.

There is nothing wrong with that. It just means that the default location is used.

I’ll have to wait for the next time they are watching something similar, but I can say with certainty they were transcoding, as everyone else is with these episodes and if they weren’t transcoding, then I wouldn’t be seeing this issue, correct? To be more precise on a part of the problem, the PlexTranscoder is constantly taking up massive CPU amounts because whatever this user plays, ignores my set Buffer Limit - staying within the buffer limit, my rig can support multiple people.

Are you limiting the remote stream bitrate? I set mine to original no limit on the server (Remote Access setting) and have my friends set their clients to max so they can direct stream so no transcoding is done and helps with the cpu issue.

1 Like

That is a Plex Pass feature, so I do not have access to it. I have symmetrical gigabit so upload isn’t an issue on my end, however some of my friends don’t have the internet to support what would typically be in a Original quality (in some of their locations anyways).

The bandwidth for the user in question is shown in the picture, at about 1Mbps, with another user streaming at 3.9Mbps - the former is transcoding up to 47% of the file (and it’d increase continually and occasionally reset) while the latter user is as expected, transcoding buffered by max 60 seconds.

transcode versus direct stream ?

Transcoding.

Full view of the stream causing issues Untitled

Looks like ā€˜Relay’ connection. These are capped at 1mbps.
https://support.plex.tv/articles/216766168-accessing-a-server-through-relay/

If other users can access your server remotely, but only this user cannot, then it very likely has to do with DNS servers.
The affected user should investigate, if (s)he could change the DNS server of her/his home network. This is usually defined in the router. If that is not possible, change it in the player device instead.
Use Google’s for instance 8.8.8.8

It is about resolving domain names in the .direct TLD. Some ISPs mess this up with their own DNS servers.

Thank you for the reply! I waited for the user to start another episode however when they did, they exceeded the 1Mbps cap you advised of but showed the same issues that led me to create the topic - I have attached another screen cap of their stream stats.

I’m not able to find anything that outlines a similar issue nor do I know how I can solve this, as it is only this user.

I greatly appreciate all the advice thusfar!

Edit: I noticed that in two different episodes, the transcoding goes up to 73% (the image attached had its buffer increasing until it hit that 73%), so my CPU gets hit hard at the beginning of the episode until it hits that 73%. I’m not quite sure at this point when it’ll kick in again but it seems odd the behaviour has reflected over 3 episodes. I have no idea why this one consistently ignore my 60s buffer limit.

Edit 2: Somewhere around 60-70% through the video, transcoding kicked in and finished up to 100% of the video.

Untitled

If the user has a Plex pass, relay connections are capped at 2 Mbps instead.

Since the network buffer of PMP can be set to a size of up to 512MB, it’s very much expected that the transcoder is working hard at the beginning of playback. It has to fill up the buffer after all.

What is your friend’s download speed and how stable is this bandwidth? If he is using WiFi or shares his internet connection with other users, achievable speeds and roundtrip times can vary extremely.
Maybe those varying bitrates are just your server’s reactions to the changes in the available bandwidth?

The user nor I have Plex Pass - I understand that it has to fill up the buffer, but I don’t understand why this is the only user whose buffer seems to ignore my settings; it could be a misunderstanding on how something works, I just haven’t been able to figure it out yet.

User has 30Mbps home connection and he switches between Ethernet and WiFi (not during viewing sessions however) and the behaviour has been seen in both instances - his connection is stable and is not saturated.

Would varying bitrates affect what’s already been transcoded and buffered? I’ve tried to replicate this problem with another device of mine; putting it onto an external network, cellular data, and even crippling its network throughput but it still works as I would expect it too. When I view the devices stats, it transcodes up to the 60s and then stops.

If I’m misunderstanding something here, I apologize, but I’m not sure how, regardless of a users network capacity, that would cause it to exceed my defined buffer limit of 60 seconds.

The setting is called ā€œdefault throttle bufferā€. Which means it can be overridden. And that is what PMP is doing.

I’ll admit it seems silly that this would be a setting that can be overridden by a user, even without that user being aware of it, especially with it being something that can and will negatively impact other users.

That naturally leads to another question - if a user’s PMP can override my default limit, is there a way I can set a max?

I am confused, why does it matter to you why or what the buffer is?

Plex should be distributing transcoder tasks on demand as necessary to support the currently streaming users.

If it is affecting other users streams (which it shouldn’t), then there would seem to be some other issue going on.

Because it’s ignoring my buffer limit and causes it to essentially transcode a majority of the episode (in this case, a 50 minute episode), it’s causing the PlexTranscoder process to max out my CPU, limiting the resources available for other users. The same CPU that I can can have 5 people (assuming this user in particular isn’t one of them) watching simultaneously (maybe more but never had more people watching at once). If it didn’t affect anyone else, then I really wouldn’t care.

ā€œPlex should be distributing transcoder tasks on demand as necessary to support the currently streaming users.ā€

Then it’s not, when I view the task manager, I see one process of the transcoder hitting 70%+ with other transcoding processes with little to no CPU % allocation, and this will be while other users are watching episodes and constantly hitting the ā€œspinning circleā€ waiting for the server to have the CPU availability to send them more, but it’s chugging away on that one user, buffering the entire episode when they’re only a few minutes in.

If I had no visual indication that this user’s buffer is spanning nearly 45+ minutes, then I’d be more inclined to believe it was a hardware/system issue, but I don’t believe that to be the case, especially when it can support multiple people as mentioned earlier.

yeah that seems odd.

ostensibly, one of the reasons for the transcoder buffer is for plex to be able to process multiple different streams in more efficient chunks so to better handle differences in clients/bandwidths.

Yeah, I’m still trying to replicate it on another machine but to no avail :S

Once a week, me and 3-4 other friends will watch a ~22 min episode together, using my Plex. We’ll all open up the episode on our machines and hit play at the same time and we never run into an issue where the server isn’t able to keep up with all of us. No issues if there are a few of us watching different episodes either.

As soon as that one user comes on, and even if its just me watching a show, I’ll get hit with constant buffering - and I’m the one on LAN playing on Original! It just seems like something is not working like it should and I can’t figure out what it is (other than removing them from my Plex which will be the result if I can’t figure this out).