Server transcoding despite bitrate and optimized version

Say i have a particular tv episode in three formats as they became available: SD, 720p and 1080p. The SD version is around 350 kbps, the 720p version is around 2500 kbps, and the 1080p version is around 6000 kbps. I have my server setup with a 20 mbps overall upload and 4 mbps per stream. I also created an optimized version designed for ‘Universal TV’ set at 4 mbps.

while testing various settings remotely through a VPN i found out that Plex will first choose which file to start with based on the clients quality setting and then transcode from there “if needed”. If the client had a quality setting of 4 mbps it would choose the 720p version, if it was set to unlimited then it would choose the 1080p file.

side note: when creating the optimized version Plex will choose the starting file based on the same information; if you are targeting a 4 mbps optimized version and have both 4 and 7 mbps files available, it will choose the one closest to your target instead of the highest quality available.

In the end i wound up with 4 files, SD, 720p, 720p optimized and a 1080p version. The 1080p was for direct play inside my network, the 720p and optimized are for streaming remotely and the SD was for archival. However, when i went to play the episode Plex would never automatically use the optimized version to stream remotely and instead it would choose the original 720p and start transcoding despite the lower bitrate. Why transcode for a 4 mbps connection when the file is already 2.5 mbps?

I tried deleting the 720p version and re-optimizing the 1080p. When i went to play it under ‘original’ quality it still chose the 1080p file and transcoded it instead of using the pre-optimized version. Only when i deleted the 720p versions and set the quality to 4 mbps (before playing) did it auto-select the optimized version.

This seems incredibly counter productive if there is a perfect file just waiting to be used at the requested bitrate. Am i doing something wrong or is Plex not smart enough to select the correct file? Its almost impossible to debug non-technical remote users to adjust their quality settings or select the optimized version (since all Plex interfaces are different) so they are left taxing my CPU for a lower quality version of something that’s already been optimized for them.

All i want is for Plex to optimize the highest quality available (if a higher is added later then re-optimize) and to select that optimized file first when it fits the target bitrate for both client and server.

@lasavior said:
…is Plex not smart enough to select the correct file?

Plex’s transcoder and everything else that Plex’s Super-Duper-Automatic-Brain does is as dumb as a bag of hammers.

If you think you can just sit back and let Plex do all your thinking for you - how’s that working out for ya so far?

Recent discussions about this very thing revealed the most sane way to handle this situation when your remote users are unwilling to attend the remote quality seminars so that they can access YOUR MATERIAL that resides on YOUR SERVER in the way YOU, IT’S OWNER wants them to (frankly is beyond me and they should simply be denied access, which would serve as a great incentive for them to attend the seminars) is to ONLY provide a 720p 3Mbps file with standard settings that YOU create OUTSIDE of Plex, YOURSELF so you KNOW it’s going to Direct Play in the Libraries you share with them.

Easy.

One file. Plex doesn’t have to think about which file to play as there is only one.

Over here in Juicetown it’s my server and my rules - ‘Guests’ that won’t toe the line are denied until they become more cooperative and to date I’ve never had to do anything more than ‘threaten’ to do that because my 1080p 4.5Mbps Direct Play material is just too good to pass on - when they’re set at 1080p 8Mbps.

I see one transcode session and I send ONE text message - 30 seconds later I pull the plug and it’s never gone to 20 seconds before the stream ends, and restarts in Direct Play.

Of course, ‘My Friends and Family’ know I ain’t just kidding - I WILL pull the plug. I don’t mess around with ‘Separate Shared Libraries’ either. They’re watching the same fine content I am because at my age I am:

  1. a grouchy old man
  2. unable to see enough difference in a file over 4.5Mbps for it to matter and
  3. if I want to impress somebody I’ll stick the disc in the player.
    It’s not my excellent server can’t transode for them if need be. It’s because my PMS is also my Gaming Rig, my part time Autocad box for the part-time work I’m still doing and because I’ve usually got some Handbrake jobs running creating this great material and if they’re trying to transcode they’re either cramping my style, or their own with excessive buffering.

Better for them, Better for me, My Server, My Rules.

:slight_smile:

BTW - here is that ‘other thread’:
https://forums.plex.tv/discussion/276424/how-does-pms-choose-the-best-file-for-playback
and there is a bulletproof Handbrake Guide in my signature when you get tired of Plex’s Transcoder/Optimizer messing up the files you’re trying to get to Direct Play.

It’s also good to know what devices you’re working with and be sure to create material that will work on those devices. For instance, A Fire Stick (Gen 1) has a default Max x264 level of 4.0. If you or Plex’s transcoder is creating level 4.1 material - like most of the material on Earth - it’s ALL going to transcode unless that setting is tweeked in the Stick’s Plex App.

That’s just one instance for one device, but you see what can happen. It might be hard to you to figure out what to do and that’ll make it impossible for Plex.

1 Like