This particular source has some episodes with too much saturation, and some look really dull or washed out. I tried increasing the saturation with smoothtweak, but it makes some things look too saturated and or I think the red/orange/pink might be getting too much. When I add more saturation, their skin seems to turn really pink/reddish looking and it looks horrible.
Are the levels off in this or something? Does something need corrected that I do not know about?
Here is a demuxed sample.
I would like the colors to look less dull.
+ Reply to Thread
Results 1 to 14 of 14
The problem isn't the colors. It's the black level and gain.
Start with something like:
Beware that this change alone leads to many out-of-gamut colors. You'll have to follow up with some white balance and other fixes.
Last edited by jagabo; 6th Apr 2020 at 19:48.
I see how much that adjustment changes things though. It looks like there's too much brightness and its covering everything in white tint making it dull looking? That lowering the brightness really did help some. Looks too dark now, but it does look better with blacks and colors.
What do you think of this adjustment Jagabo? Give it a quick try.
SmoothTweak(brightness=-14, dither=-1, interp=0, limiter=false) ConvertToYV24(matrix="rec601", chromaresample="point") MergeChroma(PointResize(width, height, 0, 1)) ConvertToRGB32(matrix="rec601") RGBAdjust(rg=1.20, gg=1.20, bg=1.20, rb=0, gb=0, bb=0, r=1.02, g=1.02, b=1.02) ConvertToYV12(matrix="rec601", chromaresample="point") smoothtweak(saturation=1.01, brightness=0, contrast=1.00, dither=-1, interp=0, limiter=false)
Last edited by killerteengohan; 7th Apr 2020 at 04:35.
I think your adjustments look good. You can get almost the same adjustments with just
SmoothLevels(16,1.18,255,0,244) ConvertToRGB() ConverToYV12()
White balance can be very hard to do in AviSynth. Sometimes you get lucky and all you have to do is move the chroma planes up or down (ColorYUV(off_u=x, off_v=y). Or quick RGBAdjust(r=x, g=y, b=z) to purify whites. But this video the white balance varies from shot to shot, sometimes even within shots. It's probably not worth the hassle.
Thanks, that look pretty good to me! Possibly even better than my attempt. What is the point of the converttorgb in your suggestion if the rgbadjustments are not going to be made? Is that part of the clamping you were talking about?
What exactly is the side effect of out of gamut colors on playback? Is it a bad thing to leave them? I kind of like the shade of the whites, and colors better when they are slightly out of gamut. Especially on the very dark rocks in the background.
Aside from the whites and black rocks, I like your suggestion a lot more for everything else. It's a tough pick for me at the moment, but I am leaning more towards yours.
Is this out of gamut color the reason why when I check a color2 histogram, it gets a checkerboard over it? (I never did find out why it could do that at times)
EDIT: I tried using YLevels(16,1.18,255,0,244) and it looks close to the same. The visible difference is pretty close to the same except in the real dark areas. I really like how the darker areas look more. The SmoothLevels looks a tiny bit softer overall to me as well.
The color2 histogram looks exactly like the source one and didn't change it at all when using YLevels. Is YLevels better than SmoothLevels? I'm not sure which is the more accurate one in the end, after the adjustments are made.
Last edited by killerteengohan; 8th Apr 2020 at 20:10.
[Attachment 52663 - Click to enlarge]
The outer cube represents all possible YUV values (technically, they're Y, Cb, and Cr but AviSynth uses the terms Y, U and V). The inner cube represents all legal RGB values. YUV combinations outside that inner cube are illegal colors. They would require RGB primaries below 0 or greater than 255. Note that the vast majority of YUV combinations do not lead to legal RGB values.
You can check for out-of-gamut colors with HighlightBadRGB() from here:
That function is quick but not 100 percent accurate at the extremes. There's a more accurate function from Gavino called ShowBadRGB(). But it's very to start up -- your AviSynth might take a minute or so to load. In most cases HighlightBadRGB() is good enough.
Wow that was very informative overall. I had no idea the source already had out of gamut colors. I figured it was me adjusting the levels that was causing any out of gamut colors. It's kind of weird that a professional broadcaster would reject it, but the DVD releasing companies never rejected it.
I reduced the softening a bit by adding in these parameters to smoothlevels.
It's still softer overall though, even if not by much. I could probably just put a strength=1 sharpener and it wouldn't matter.
Thanks for all that information, and the tool to check for out of gamut colors!
Would this essentially be doing the same thing as HighlightBadRGB()?
limiter(16, 235, 16, 240, "luma")
limiter(16, 235, 16, 240, "chroma")
Oh jagabo, you and your crazy, wacky diagrams!