View Single Post
Old 6th October 2020, 20:08   #20  |  Link
benwaggoner
Moderator
 
Join Date: Jan 2006
Location: Portland, OR
Posts: 4,770
Quote:
Originally Posted by H2sixty View Post
The bigger picture is that x265 deals with grain by default much better than 4-5 years ago, so only heavily grainy content needs --tune grain. It's nice to have --tune grain when needed, but it's a bitrate hog. Using tune grain when it's not needed can increase the bitrate required to hit a particular quality level a LOT .

Grainy content should also use at least --rd 4, to get chroma motion estimation. Otherwise the heavy grain in luma can decorrelate to actual motion, giving a lag between when chroma changes and when it's reflected in the screen. So you can see someone's face tone stay in the same part of the screen while their face moves somewhere else. And so you kind a peachy looking lawn and a gray face. I find this abhorrently distracting.

Quote:
some good points, well made... i stopped using filters such as nlmeans degrain and nr-inter/nr-intra=x since i finished putting together the custom settings i posted...
I find a little --nr-inter, like 50 or 100, rarely does much harm and can offer a little efficiency boost and a little reduction in the "swirling" of grain.

Quote:
with my settings, choosing the right crf value for proper grain removal takes a lot of tests but the file will be optimal, small and degrained.
CRF really isn't meant to be used as a grain removal tool! Higher QPs make for bigger deadzones, so the reduction in grain certainly happens. But the high QPs mean that signal is also getting smoothed out. For a an old grainy title where the actual underlying visual content is pretty soft (like an 80's-90's Super 35 movie), the higher QP might not cause much of an issue since there isn't a lot of detail, and the various deblocking features of HEVC can keep false detail from being introduced. But there will also be content where real detail gets lost, and artifacts will start to become visible before grain becomes invisible.

I'd think --nr-inter and a lower value of --nr-intra plus a lower CRF probably would give better results the majority of the time.

Quote:
well, maybe keep a hair pinch of noise somewhere... its a constant struggle between noise reduction and keeping detail. if done right, i just consider the lost detail, detail that wasn't there. its like they didn't finish processing the video... kinda like a old blocky video that looks like they forgot to deblock, or maybe it would have took too long... and a re-encode with deblocking makes all the blocks go away, as if the video was meant to look that way and was only half processed.
That is the challenge. One of the horrors of TV's with "Vivid Mode" is that they try to do noise reduction and sharpness enhancement at the same time, which can come out all kinds of weird and awful.

I've seen some content with synthetic noise where the frames are maybe 98% noise and 2% signal. For example, someone was trying to emulate a Super8 look at 4K, but were grading on a 1080p Pulsar monitor. The grain was being rendered with a grain size appropriate to 1080p, so each pixel was quite randomized. But scaled down to 1080p, a lot of that averaged out so the operator kept yanking up the noise intensity to where the 8 least significant bits were essentially random, so it looked grainy on 1080p.

With x265 circa 2016, I literally was unable to make those shots look anything short of unwatchable, even at 40 Mbps --preset-placebo, lots of --nr, preprocessing, anything. The original --tune grain came out of some of those experiments, but even it couldn't save that pathological edge case.

Fortunately HDR grading is all done at native resolution these days, so we don't see the same kind of weird one-off nightmares we suffered from in the early days of the format.
__________________
Ben Waggoner
Principal Video Specialist, Amazon Prime Video

My Compression Book
benwaggoner is offline   Reply With Quote