Question / Help SOLVED Color Banding in Recording.

D

Deleted member 121471

Under OBS settings--> Advanced, change you need to set "Colour format" to "NV 12"
 

Harold

Active Member
And if you switch your encoder to x264 or the amd h264 encoder instead of the amd h265 one?
 

robotlove

New Member
And if you switch your encoder to x264 or the amd h264 encoder instead of the amd h265 one?

Looks like we're getting somewhere :D there was a noticeable improvement in the x264 encoding. In the H264 encoding there was not a distinguishable difference.

https://imgur.com/a/ySMYUDz

x264 log file: https://obsproject.com/logs/XFPbNvgpN0VlWzyB

H264 log file: https://obsproject.com/logs/CI_tKbtfcGNRTRh5


The x264 encoding is not quite as good as the original source. What more settings can I play around with to improve the video quality?

If possible, can I change the settings of H265 encoding to get similar results? I think H265 encoding is much better than x264 encoding right?
 

Harold

Active Member
For recording it is recommended to use quality based rate controls rather than CBR.
For x264 that would be CRF. Target a CRF value of 14.

You get a more optimized file size regardless of your content.
 

robotlove

New Member
Okay so I played around with the settings. I believe there's a correlation between the CRF value and the amount of color banding in the background. I'm a complete amateur when it comes to recording. What's going on here?

I have another question: is it possible to record without a loss of quality; or does that type of recording overload a typical system?
 

koala

Active Member
It's possible you detected the color banding that is introduced by the 4:2:0 chroma subsampling used in today's encoders. It's used to increase compression. It's used everywhere and is omnipresent in all kind of recordings. It is based on the ability of the human eye to see luma (brightness) with a high resolution but chroma (colors) with less resolution. It's because of the cells in the human eye are distributed in a similar fashion: more rod cells especially sensitive for brightness, less cone cells especially sensitive for color.

In addition, you used the AMD hardware encoder. This encoder has significant less quality than the x264 software encoder. x264 with a low CRF value of 15 or below should give you a video that cannot be distinguished from the original - only if you do image processing and side-by-side picture analysis.

However, the CRF value of x264 does not usually distort color in the first place. Higher values only removes detail and makes the image blurry in general as with a diffuser. And with the AMD encoder, this usually also distort color not very much. Instead, it's most visual compression artefacts are more grain than in the original, in addition to the blurriness due to the removal of detail.
 

robotlove

New Member
So there's no way around this color banding because it's due to the encoder's compression algorithm?

Would it be possible to use post processing video editors to reduce visible color banding?
 

koala

Active Member
It's an integral part of every encoded video file. If you export a post-processed video into some ordinary *.mp4 file, it's always there.

But please explain a bit more what you regard as color banding and at what part of the pictures you posted you found that color banding. How you did see it. I didn't find anything. Nothing that can be called "bad" or "noticeable color banding" at all.

I downloaded the pictures and loaded them into an image processing software and tried to find differences. I wasn't able to find any visible difference. Only when I examined and compared single pixels I was able to find a very faint differences in the picture you called "screenshot" between the picture you called "recording". Between the other picture pair you called x264 and h264 I wasn't able to find any difference in quality. Absolutely none.

I used the difference operator between the two picture pairs, and the only differences that appear are due to movement of the spiked stars (I assume they rotate) and the spaceship's position is moved by one or two pixels as well. This is due to the fact the pictures are not made from the same point in time. They are at least one frame away from each other.

The diffs look like this:
Here, the spaceship moved 2 pixels horizontally and about half a pixel up between the two frames, otherwise the spaceship diff would be completely nonexistant. You clearly see the 2 pixels movement by looking at the ropes of the opened door at the bottom. This simply an object movement, no color banding.
hkbeHXu.png


Here, the spaceship moved 2 pixel horizontally and about 1 pixel up between the two frames. No color banding..
UcqUD14.png


The spiked stars cannot be included in any comparison, because they rotated between the two frames. The background is completely black, which means no differences with the background textures.

In my opinion, every picture is as good as you can get for postprocessing. Really. There isn't anything to complain about, Not a single thing.
 

robotlove

New Member
Here's what I mean by color banding. This the "recording" image from my first post. I've added red lines around what I consider bad color banding:

https://imgur.com/a/UIGFesm

For the most part this color banding isn't significant or present in other types of footage. Only when the entire background is a rather uniform color does it appear.
 
D

Deleted member 121471

Can confirm I see the colour banding on the provided screenshots on my monitors, as well.

I usually get banding when using the incorrect deblocking settings, when motion blur in any game is turned on and/or when bitrate starved.

I have another question: is it possible to record without a loss of quality; or does that type of recording overload a typical system?

Could you try hardware encoding set to "Indistinguishable" preset and "Balanced" Quality preset, to see if the issue still manifests itself?

Also, could you check in your AMD settings, under the "Display" tab, if your monitors are set to Full RGB instead of YCbCr, as this has introduced some issues for myself before?
 

koala

Active Member
I admit I looked for something different (sorry for that), and I have my monitor on a somewhat low contrast preset, so this is almost vanishing, but now I see it having tweaked my settings a bit. It's really a difference in the screenhot/recording pair. But that is the kind of detail that is removed by the compression, as far as I know. This is only visible on large uniform parts.
It might help to record full color range (Settings->Advanced->Color range), but most playback devices or players are not handling full color range correctly, so you might even do worse instead of better.
 

robotlove

New Member
Hey everyone, so I think I've figured out the problem. It was simply that I was not recording in a high enough quality, as others have posted.

Because of the nature of what I was recording (a rather uniform background of a similar color) the banding was very clear and needed a really high quality recording settings to remove banding (x254 encoding with a CRF of 6 or lower).

Additionally, I found that to have the "closest to real" colors I had to have these settings in the Advanced tab:
1) Color format: NV12
2) Color space: 709
3) Color range: Partial

FYI to anyone reading recording at this high quality takes a lot of resources. My ryzen 5 1600 will experience stuttering if there's a lot of things onscreen.
 
Top