Bug Report Green colors in Chatty are darker? What else is different?

darthclide

Member
I am unsure how OBS displays colors from programs, but I am frustrated that OBS classic does a better job at something so basic. In the attached screenshots, you can clearly see that the lime green is no longer "lime" in my VLC player. There is a third attachment which shows what it looks like inside the Preview.

I am using a chroma key with the black background to make it transparent. In Classic it appears just fine, but Studio somehow is screwing up? I truly hope this is just some basic chroma key problem, and that colors rendered elsewhere in the scene are just fine?

Any suggestions for a short term fix? I can't exactly make "lime" any brighter. It is the brightest green possible I believe?
 

Attachments

  • OBS_Classic.PNG
    OBS_Classic.PNG
    218.7 KB · Views: 52
  • OBS_Studio.PNG
    OBS_Studio.PNG
    248.8 KB · Views: 53
  • OBS_Studio_Preview.PNG
    OBS_Studio_Preview.PNG
    307.3 KB · Views: 51

sam686

Member
Very likely this is a color matrix encoder and decoder mismatch, BT601 / BT709. OBS-Studio have color space option in Advanced that can be changed. OBS may be doing BT601, and some video players might be decoding and converting them to BT709, causing darkened green and red appears brighter and loses color. BT709 probably should be used for 720p and higher.

OBS-Studio with x264 encoder appears to flag the color matrix into h264 compressed data, only when using 709 color mode, shown in MediaInfo. For undefined / unlisted color matrix, some video players use 601 for 480p or lower, and 709 for 720p or higher.

Video compression / Color format at NV12, I420, both are 4:2:0 which use half horizontal and half vertical color resolution, so colors may not appear very sharp. But, don't change it for streaming as they lose compatibility to most mobile devices that are limited to 4:2:0 type of color compression.
 

darthclide

Member
So... Long story short I switched to BT709 and I think it fixed it. I was 90% certain those settings had something to do with it. Aka, different appearance depending if you are watching in VLC player or in a browser.

You are certain that as long as I leave NV12 alone, and I have BT709. No viewers will have weird colors displayed?
 

Suslik V

Active Member
If you see the difference from your videos then you able to see the difference from the posted test charts too.
 

sam686

Member
601 / 709 setting have no compatibility issues. At most this only causes a slightly wrong colors to a few video players that ignores this flag in h264 compressed data, if the flag was properly set as shown in MediaInfo. I always been streaming at 709 and have no issues at all.

The same is true for limited/full range for having no compatibility issues, mismatch encoder/decoder in this case will show up as crushed blacks or black being dark gray. Best to keep it limited range for a low streaming bitrates.

FFDShow in most compatible players like Media player classic can override the 709/601 and full/limited range if needed if set to output RGB.

OBS-Studio have a warning that shows up at the bottom of options, if NV12 was changed into something else.
 

darthclide

Member
601 / 709 setting have no compatibility issues. At most this only causes a slightly wrong colors to a few video players that ignores this flag in h264 compressed data, if the flag was properly set as shown in MediaInfo. I always been streaming at 709 and have no issues at all.

The same is true for limited/full range for having no compatibility issues, mismatch encoder/decoder in this case will show up as crushed blacks or black being dark gray. Best to keep it limited range for a low streaming bitrates.

FFDShow in most compatible players like Media player classic can override the 709/601 and full/limited range if needed if set to output RGB.

OBS-Studio have a warning that shows up at the bottom of options, if NV12 was changed into something else.

Thank you for all the input. You confirmed what I have seen now. For some weird reason obs was on 601. I switched it to 709 and everything looks fine to me now in recordings. I am curious if 709 has no major compatibility issues why it was not the selected default when I installed OBS Studio the other day? I dropped quite a few frames the other night + the game (Runescape) felt more laggy than usual. I truly hope it was just a coincidence because I truly do want to switch over to Studio from Classic.
 
Top