When is Plex going to add tone mapping for 4K HDR transcoding?

I understand all the points you are making. Nevertheless, I don’t want to do the extra work of popping the additional Blu-Ray in, finding the best encoding settings and so on - It’s all extra time and simply put, I don’t want to spend it. Especially for users, that don’t really care too much about quality.
If now Plex would offer a way to make an optimized copy of my 4K UHD HDRs for SDR Playback, I would be happy with it, since I don’t have to do any extra work. It does not have to happen in realtime. But tone-mapping is crucial for this.

With the right hardware (e.g. the 1660 with unlocked drivers) real-time transcoding should also not be a problem, though, and it would be nice to have this working as a fool proof solution, with no extra work. Electricity is not an issue, since my use-case is max. 3 remote streams, that require transcoding. And hardware transcoding is also pretty efficient.

Your comment regarding storage prices neglects hardware cost besides the initial drive, which involves backup (My setup is one local and one remote NAS - local NAS is 16x8TB as two raid6 storage pools - external NAS has to offer the same storage space for backup reasons), so I would at least double your costs. But of course you are right, hard drives are cheap nowadays.

3 Likes

Efficient compared to what? How are you drawing this conclusion? Nothing about it is efficient. A Processor consumes less power while transcoding than a GPU does by quite a significant margin, a hard drive doesn’t cost nearly the same amount in electricity as a GPU transcoding does. When I was at a 50-70% transcode rate, my electric bill was 30-50 dollars a month higher than it is now that I am at a 5% or less transcode rate. I have 20 active accounts and maybe 30 total users, (Houses with kids) 7-10 streams at peak times on average, though I have seen it as high as 16 streams. And the high electric bills were when my peak streams were 3-5. I don’t even want to know what they would look like now with 7-10.

For what it’s worth, I definitely understand the mindset of “set it and forget it” and have everything just work. I do have Hardware transcoding enabled for those users who need it (eg while on cellular). But by and large, I kill almost every avoidable transcoding stream there is; browser play is banned since my entire library is x265 and browsers don’t support x265, all Playstation variants are banned since Playstation also does not support x265, etc. I use Tautulli and killstream to accomplish this. Because transcoding is the devil and every server admin should be doing everything they can to avoid transcoding at all costs.

These are diametrically opposed to one another. What anyone looking to do this should do is figure out at what bitrate they want their audience to enjoy their content. For me, on x265, that’s 4Mbit for anything film/movie-related, and 3Mbit for anything TV-related (given all content is 1080p, if there’s lower resolution content, I drop the bitrate to suit the lower resolution). This is roughly equivalent to 8Mbit and 6Mbit x264. Also, I transcode all of my Audio to 5.1 AC3 @ 640kbps, or 2.0 AC3 @ 192kbps. What I end up with is approximately 4.5Mbit out for each stream at the maximum, and everyone is happy with the quality.

This leaves room on my Gigabit connection open for the few users who have 4K Compatible TV’s and can remote stream 4K HDR content from me hassle-free.

If you put in a minimal amount of legwork upfront, it saves you an enormous amount of crap as you go along. You’ll save money, you’ll save headaches, you’ll have fewer complaints. People who have less transcoding happening, have less that can go wrong. Transcoding of 4K Is NOT the answer to your problems, it would be a nice bonus, certainly, but the best thing you, and any other server owner, can do, is optimize your media for your users.

On a side note, I have 72TB in RAID 0, and use backblaze as my backup solution. The initial upload took forever, but as I add content, it’s backed up nearly immediately, and so for me, buying a single hard drive is all I have to do to add storage space to my server. No need for RAID 6, and an off-site backup that I also maintain… $6.00/month keeps me from having to maintain 2 machines. Since I am not running a commercial grade service here, it works as a good, viable solution…

3 Likes

All you said is true, but the 4K encoding with tonemapping would be great to have, since I could just do it 1 time for all my 4k HDR movies and have them direct play it from there. Plex should also really support optimized copies in HEVC. Then I would be happy. That would half the work needed by physically putting discs into the drive and ripping them (only the UHD needs to be ripped not the Blu-Ray).

72TB in Raid0 is very risky - you are a much braver man than me. :smiley: If 1 drive fails you will have to copy back everything from your backup, so you will have a long downtime with how much data you have. For me uptime is important, since my server is mainly for other things and Plex is just an add-on service. Therefore I am running the two pools of 8 drives each in Raid 6. I am also running two SSDs in raid 1 for the things that need the throughput.

2 Likes

Yeah, that’s why it’s one array of 40TB and one array of 32TB. That way when failure occurs, it’s not as much data. The good news is, downloading from backblaze maxes out my gigabit connection, so it shouldn’t be terribly long downtime. Other than Plex, my machine gets used for Gaming, 3D rendering, video editing (hobby), and visual effects (hobby). It’s my main machine. Another reason me keeping transcodes to a minimum is a must.

So, if I am understanding this correctly, you’re not opposed to making 1080p copies, you just want an easy way to do so from a 4K HDR Source, that is tone mapped? And you wish plex would be able to do it for you via their “Optimize” function? If that’s the case I can probably build you a handbrake or StaxRip profile to accomplish that, and then you can batch process your library… just sayin’. StaxRip for me is preferred because it’s a true 10bit pipe, and even though we’re stripping out the color and luminance data, there’s still benefit to be had to choosing 10bit encoding.

1 Like

If that’s the case I can probably build you a handbrake […] profile to accomplish that

Oh my! Yes please! :pray:

Sorry, @chleb , I may have spoken too soon, John still has not implemented a tonemapping option to Handbrake’s CLI yet, not even to the Nightly Builds. There’s a ton of ffmpeg command line options out there that you (or I) could use and write a batch file to cycle through your media though. If you want to use StaxRip, I think this has the capability. I am currently going through all the settings in the GUI and will look at the CLI options if I can’t find it within the GUI itself.

Edit: Here, this guy did all of the legwork making profiles ahead of time. My recommendations would be to change to bitrate rather than CQ. Then use whatever you’d like to resize, I personally use Lanczos, but you can use whatever you’d like.

https://www.avsforum.com/forum/39-networking-media-servers-content-streaming/3008882-guide-easily-encode-your-hdr-uhd-bd-freeware.html

Edit 2: I ran one of the custom Templates (DGHable (Custom)) , used the resize slider to go to 1920x1080, changed my encoder over to NVENC, and it all seems to have worked. I will say this, I noticed about a 50% performance drop (usually I am at 70-75 fps, here I was more like 35-40 fps (this isn’t even real time considering the movie I chose was a 60fps movie) So, be aware, it requires a lot of power to do tonemapping.

1 Like

Just curious: Which NVENC Hardware did you use - Turing gen?

Pascal - 1070Ti

sigh This isn’t an argument about 1080p vs. 4k.

You don’t need 4K for HDR. There are displays and sources that support HDR, but not necessarily 4k. There are 4k videos that are not HDR.

Plain and simple: Plex fails at transcoding an HDR source in any scenario and that’s not how Plex is supposed to work!

Suggesting that we’d all keep a non-HDR copy on the side is a workaround, not a solution. Can we please stop pretending this is normal behaviour? Asinine suggestions about a 2Gb fallback copy for 4k remuxes aren’t helpful without the magic presets that make that an even remotely believable alternative for people with either HDR or 4k in their list of concerns.

15 Likes

Plex is starting to go in the wrong direction. Look at their release notes lately. It seems to be all about DVR. Don’t get me wrong, DVR is nice and all. But on my laundry list of wants, I don’t give a ■■■■ about DVR. And then Plex is adding some “free” channel content. I don’t want that either.

Plex is just confusing my parents and others who are non-technical. Plex is focusing on items that are low priority for us and I’m not sure why.

Hello, Plex, you guys are barely devoting resources to the things we actually WANT. 4K/HEVC/HDR came out and you guys are circle-jerking around a DVR while we beg for other functionality.

Thankfully some of your developers were nice enough to devote some of their spare time to getting at least a couple necessary features going for 4K. Thankfully someone snuck in changes to support hardware transcoding on Linux. Thankfully some of your developers are actually trying to be true to Plex and those who drive it. To those devs who toiled over things we’re begging Plex for. Thank you, really. I love you guys.

Whoever sets developer priorities at Plex and controls the sprints needs to sit down and think about where Plex needs to go. 4K support/performance should’ve been the #1 priority. Why did we have to beg developers to get hardware transcoding support on Linux? Why are we still begging for tonemapping support? The people asking for this stuff are some of your most loyal, dedicated users. We throw THOUSANDS of dollars at our Plex servers. We want to be able to control how our Plex server encodes and decodes. Is there a CPU encoding fallback option if the GPU fails or is overtaxed? No. Right now if my GPU is busy on another encode session my server won’t fall back to CPU encoding to service my session. Or what about multiple GPUs? Can I add a 2nd GPU card in to handle more transcoding sessions so my Plex server doesn’t spin in a circle when the 1st GPU is overloaded? Nope. Or what about distributed Plex encoding and decoding? There was an open project for that awhile back, but it didn’t last long. Clearly there is support for it. Is Plex working on allowing us to distribute encoding across multiple servers on the same storage/network? No. Or how about controls allowing us to bump end user clients up from 2mbit to 8mbit? Why can’t we control an end user stream bitrate? Our parents don’t know crap about bitrate. They don’t know how to set it or what is best for them. Does ‘automatic’ bitrate controls work well? Not really. IIRC they were added recently but the performance is iffy. And we only recently got control over whether or not to allow 3rd party gateways for clients. What about caching devices to speed things up?

But no you focus on making The Wizard of Oz free to everyone with commercials even though we don’t want it. You focus on DVR code additions and changes even though its kind of 2nd tier to the functions we want.

I don’t know what is going on inside of Plex but right now there isn’t much good coming out of it. And if you guys are not careful, something like Jellyfish will focus on all of the things we want and play leapfrog.

Why is it SO HARD to get you guys to properly support 4K media? Is it a matter of money? Can you just admit you need money and then set donation goals for features or something? Instead of the whatever you’re doing now?

Please?

10 Likes

hm… I suggest one major reason is money/marketing. Just at this current topic:

there are a lot of customers who are very disappointed.

Just let me provide one thought on that topic:
From a marketing-related point of view it is just reasonable to do a lot of DVR/live TV stuff rather then investing a lot of time in developing own-content-based streaming features.
Why?: The simplest answer is “money” :wink:
I suppose that doing more TV-related stuff comes along with a large number of potential contracts with television studios etc. Also there is a great potential for placing ads etc.
There are currently enough platforms like Plex on the marked that only support own-content-streaming. Furthermore, we do not need another streaming service (like Netflix, Amazon Prime, Apple, Disney, etc.)… with such services you cannot watch and record TV etc.

I suppose that the Plex management sees the current development as a reasonable “next step” into a new decade.
Personally, I don’t see that because nowadays most people (I know) do not watch/record live TV. Okay… some sport events may be interesting… however, there are already streaming services that come along with extra packages for sport events (in Germany e.g. soccer).
Importantly (I can only speak of the German television), most of the TV broadcasting companies lost their rights to deliver famous sport events through their channels. Instead, you will have to buy sport packages from streaming services.

Plex cannot earn money by only supporting own-content-streaming services. There are already a lot of such services out there, and most of them are free.
Of course, we - loyal Plex users - think that it would be a unique selling proposition to have some very nice features like HDR tonemapping, dual-layer Dolby Vision support, GPU fallback feature, etc…
But keep in mind, the Plex management would always argue that this is - justifiably - uneconomic. They want to catch a bigger audience, and thus it seems that they abandoned their origins and focused on more “modern” features (like DVR stuff).
I certainly do not see that DVR will be the future, however, they do not ask me about my opinion :man_shrugging:
There are a lot of more options to get a larger audience:
E.g. asking the current costumers about their needs and derive interesting (new) features…
… however, for this we need a friendly ear for such requests… At this moment, I do not see that.

My prediction for the future (3-5 years) is that Plex will completely stop developing own-content related streaming features and leave the respective users behind with unfixed bugs.
Of course, it will be possible but future new features will be not considered anylonger. In the worst case, Dolby Vision support was the last “big” feature that was developed.

I do not think that we will ever get tone mapping etc. Sorry, but I find it reasonable (from an economical point of view), even if I regret this. Such features are time consuming to develop and maybe also expensive (lincencing etc)

2 Likes

Some of us aren’t merely users, but paying customers. The fact that they don’t listen to customers is disconcerting. It doesn’t seem to be about money. From what I understand, HDR->SDR tonemapping isn’t a priority to them. It’s like going to a restaurant and getting a raw burger served to you. Then you complain that it’s uncooked and they tell you that you should have brought your own cooked patty, because cooking food isn’t a priority to them. So great. They’re going to do contracting with studios. I wonder how long before these studios demand algorithms to block adding media files for things they hold the rights to. “Block this content or lose funding.” I don’t get why Plex is trying to be a middleman for streaming services. There are apps on TV and other devices for that. I always thought it was a piece of server software and client softwares so people can stream their own content without having to use streaming services…

3 Likes

The 5 stages of grief:
Denial, Anger, Bargaining, Depression, Acceptance.

I am now at the bargaining stage. Right now, I am doing 4K 10bit HDR HEVC (50-70mbps)->4K 8bit SDR HEVC (~30mbps) beautiful transcodes in Davinci. This takes about 1hr to do a 2hr movie, and that’s with color corr tweaks etc. I have a 9900K and RTX4000. So clearly good hardware can do real time 4K tone mapping. I like to keep the resolution for clients that have 4K TVs and when plex needs to transcode. Plex transcodes 4K SDR to 4K SDR lower bitrate just fine, fine colors etc.

But there are multiple UI problems with a “two library approach.” Ie a normal library and a 4K HDR library that contains some of the same titles in the normal library. Can Plex please fix this, for now, just from a UI standpoint? Please!

  1. Thumbnails and chapter thumbnails of 4K HDR titles look bad. Bad colors.
  2. Let’s say you have a collection “AFI Top 10 Animation movies.” You’ve got all 10 in a normal collection. And then you have Toy Story 4K HDR in the 4K library.
    a. Plex creates two separate libraries named the same thing. So now you have your full 10 title library and then right under that in the UI when you browse the collection you’ve got another same named colection that also just has the single Toy Story 4K title in it e.g.
    b. When you play a 4K title, and go back later to the home screen if you pause in the middle of the movie, Plex brings up the 4K HDR and the non-4K HDR versions as recently played! So now you have both titles showing in resume play, and you don’t know which is which, so you have to click one hoping it’s the one you want to go back to playing.

So OK. Plex won’t transcode HDR to SDR and it never will. Fine. But can you tweak the UI for those of us trying to use Plex with 4K HDR to make our user experience more streamlined? E.g. have a special use case. So that when I play a movie Plex inherently knows to ask: you wanna watch the HDR or the SDR version before we start this movie? As an example. Thanks Plex team. In short, make it easier/less confusing to have separate libraries containing the same titles, and make the thumbnails look better. We can live with the processing time for that, trust me. (Now if you wanna get really crazy have Plex make us 4K SDR versions in the background lol.)

1 Like

Don’t think anyone ever said that plex never will.

Indications are, that it is something they are working on, at both the client side, and server side.

Of course it is not a universal solution that works right this instant, but keep in mind how long it took them to roll out HW transcoding, and then time for linux HW NVDEC.

I don’t really disagree with the rest of your comment, there are certainly other things that can be improved to make better UX (user experience) and admin experience.

They have made multiple improvements to a combined sdr/hdr library (client/server should negotiate the most appropriate of available versions).

Some clients (ios) can avoid the washed the colors from hdr>sdr transcoding.

I completely agree that collections should be better named…

for example.

3 different versions of mad max fury road in 3 different libraries, linked by collection; 720/4k/3d

image

from the above, you cannot tell which movie is what.

would it be great if I could just have ONE library with 3 different qualities and/or versions.

How about the crazy combination of a movie like blade runner with half a dozen different releases, and having multiple different resolutions of each…

1 Like

Can you point me to a 2K or 1080 display that supports HDR (in both luminance and color space)? I am failing to find a single one.

It transcodes fine, it just doesn’t reproduce the colors accurately so calling that failure is somewhat of a broad statement, it does it, just not to some people’s satisfaction.

Says who? It’s how it does work… So what you’re saying is, if you or anyone else isn’t satisfied that means it’s not working the way it’s supposed to? That’s a bit presumptuous in my opinion. It’s working as coded, it was coded with a purpose, therefore it’s working as it’s supposed to, no? I agree that it can work better and certainly can be improved. However, in its current state, it’s working just fine for the majority of people.

4K HDR or HDR, in general, is a niche market still and will continue to be that way until more people adopt the technology. While there are PLENTY of people with 4K HDR-capable displays, since they’re cheap and most people are like “Why not?”, there are far fewer people with 4K UHD BluRay players, which means fewer people with UHD BluRays to rip, and even fewer people with BluRay drives in their computers capable of ripping a 4K disk. This means overall, this is not a widespread problem, and as a result, Plex has most likely chosen to focus on other areas until the demand for such functionality increases to a point that it becomes a necessity. However, we may never even get there with fewer and fewer people buying physical media.

I also think this depends wildly on what your definition of “solution” is. The simple fact of the matter is, keeping an extra copy solves 2 problems, and tone mapping only solves 1. It’s also the accepted solution by every streaming service on the planet. They all keep multiple copies of their content, 240, 480, 720, 1080, 4K, 4K HDR, I wouldn’t be surprised if there was also a 1080 HDR in there for people that can enjoy HDR but not full 4K resolution due to bandwidth limitations. So you saying “It’s not a solution” is misguided.

What magic presets? You don’t need magic presets. Every UHD BluRay (besides TV shows) that I have seen, comes with a BluRay counterpart. You don’t need to make it 2GB, that’s a choice, one that most of us make so we can save space for more 4K UHD movies.

That’s the thing though, the people who are able to use HDR and 4K are not the people we’re talking about, we’re talking about those who CANNOT view HDR and 4K. Keeping an extra copy for THOSE people is what’s being advised.

1 Like

Does the server-side Auto Version selection work if, say, I have a Star Wars 4k77 in full 4k quality and a 1080P downsampled encode as a version of it (made through handbrake or whatever you want to use). Like, I want to play the movie on my non-4K apple tv on my 1080p tv. Will the Plex App pick the 1080p file to direct play? Or transcode the 4k file to 1080p x264? This is sort of a rhetorical question (I’m encoding a file right now to test, but even my NVENC Handbrake encode is CPU limited with 4K input files…) because I will be able to test it soon.

But my point is, while creating separate libraries makes sense for some, for me, where my media is for my own personal consumption so theres really no need to segregate content by 4k/Non-4K, that seems like solution for a specific use case.

Is there any reason commingled 4k and 1080p files doesn’t work well with the auto version picker to minimize instances where transcoding happens?

According to a few conversations with some moderators here, the Plex Server will choose the highest quality file every time. It will not automatically choose the 1080p file. This is why library segregation is the way to go. But if it worked, it would work for everyone, so being the sole viewer doesn’t factor in. If it worked to auto-select the 1080p copy for those who cannot view 4K, none of us would be recommending a completely separate library, we’d say "put them in the same folder and tag with [4K] at the end and call it a day. Library segregation is the only way to ensure that 1080p content gets served to 1080p devices, and 4K content gets served to 4K devices.

Edit: Just to give you a bit more information, I’ve already performed the test you’re about to perform. I tossed my 4K’s in with my 1080p’s and attempted to play on the kids play room TV, the kids TV is a Roku 3 client and a 1080p TV, if auto-select worked, I’d have been happy, however it chose to transcode the 4K file rather than choose the 1080p counterpart. I had several others test remotely, and it was the same thing. There was one instance that it selected the 1080p over the 4K but I could not recreate that and don’t know why it selected the 1080p that time.

My point is, if it’s supposed to work that way, it’s completely unreliable in that regard.

And for those with a regular (non-Pro) PS4 that support HDR at 1080p. The PS4 won’t output 4K, but it can still play HDR on my 4K tv.

As a developer I both agree and disagree with this statement. While “all” of my code works as I had coded it (jokes), it might not be anywhere near what was expected by the client or needed by the user. Flip side, I might have a user that clicks everything they see on screen and botch their data, all of a sudden the app doesn’t work “the way it’s suppose to.” It’s subjective.

Not necessarily relevant as people sadly still torrent from the people who do buy the discs, rip, and upload.

2 Likes

And this is one of the issues, as plex is attempting to distance itself from piracy and intellectual property theft…

1 Like

Breaking DRM so you can keep a copy for yourself and not have to spend $15-35 to replace the physical media is one thing. Uploading that somewhere that is publicly available is entirely another. It’s a morality question, and personally I feel breaking DRM for personal backups is ethically fine (even though the law may disagree with me), however, giving those backups away, or profiting off of them, is not fine. That’s just my opinion, you’re entitled to your own, but I suspect as a business, Plex is closer to the first group of people than the second…

2 Likes