OSSC HDMI output range, SDTV color correction

NewHome Forums OSSC, OSSC Pro and DExx-vd isl OSSC – Discussion and support OSSC HDMI output range, SDTV color correction

Viewing 7 posts - 1 through 7 (of 7 total)
  • Author
    Posts
  • #65187
    RandomBolt
    Participant

      Hi guys,

      I have an issue where both my new and old TV do not handle anything other than Limited Range input. So most work for monitors but TVs is a big problem.

      From looking at most scalers, it seems the OSSC is the only one that has some form of control over the output range, RGB or YCbCr. I have looked and most VGA to HDMI adapters are also full range, with the exception of a very expensive one that costs almost 300€. Component to HDMI seems similar.

      1. From the documentation, there seems to be an ouput option, but it is not clear if YCbCr is limited or full range?

      2. I also see some mention of color spaces. Is the TVP7002 properly configured to convert Rec601 color data into 709/sRGB. Does the OSSC perform this conversion based on the input signal/resolution?

      The color issues I have found to be prevalent when connecting RGB output of consoles into modern, quite old HD LCDs or monitors. Not even the TVs seem to clamp the colorspace and everything is extremely saturated.

      Some seem to convert internally when component->HDMI converters are used but that is not an option on some consoles.

      #65195
      lyrical
      Participant

        I believe that the YCbCr444 output from the OSSC Pro is always Limited range (16-235).

        The colors in the video output look like Bt. 709, not 601, as the greens look bright like in an emulator.

        I do not know if the OSSC non-Pro differs from this.

        #65205
        marqs
        Participant

          The YCbCr output is limited range which is the default and most compatible configuration for it (most sinks would likely just ignore respective metadata indicating full YCC quantization range). Rec601/Rec709 -> sRGB conversion is only applied for component format inputs, and can be set manually or automatically. With YCbCr444 output option sRGB is converted to Rec601 YCbCr and flagged appropiately.

          #65208
          RandomBolt
          Participant

            Thank you guys.

            Marqs, is there any technical reason for HDMI YCbCr output to be Rec. 601? I mean, for unprocessed output I think it is normal but if we want to scale and apply shaders, the TVs will expect Rec. 709 for 720p-1080p resolutions. Rec. 601 is for for 480i/p only, I think.

            On my experiments, TVs seem to select colorspace based on resolution+frame rate.

            Even if you are not doing dev on this model, do you think it is feasible to change the code?

            I have programmed FPGAs many years ago and am interested in having a go at it. Just don’t want to spend the money on the non-Pro and get nowhere.

            #65214
            lyrical
            Participant

              Hello RandomBolt, I think that it already works as you would like.

              On my OSSC Pro, I’ve confirmed that test pattern resolutions starting from 720p are output as Bt. 709 with YCbCr444 output over HDMI, and it is only marked as Bt. 601 for SD resolutions.

              Rec601/Rec709 -> sRGB conversion is only applied for component format inputs

              I would have a use for this setting applying to RGB format inputs as well, but I understand that this may be a different operation from interpreting component as a colorspace.

              #65217
              RandomBolt
              Participant

                Thank you. I will see if Marqs has some additional thoughts on this, as the OSSC Pro is quite the jump in price and I mostly just want 1080p.

                From my emulation tests, proper scanline and CRT filters do a lot to remove most of the jaggies, especially with moving content. So that is what I am looking for in the scaler.

                I think there are some color correction MiSTer available, will see if they can be used with the OSSC for RGB inputs.

                I don’t know enough to know if there are standardized matrices for RGB->Rec 709 conversions but many HDMI chips seem to have programmable and preconfigured options for those kinds of conversions. They have plenty of options, SDTV YCbCr->HDTV YCbCr, SDTV YCbCr -> Full Range RGB and even HDTV to SDTV.
                So this would be mostly something done on the HDMI chip, if I understood correctly.

                What is not clear to me, without more research, is if these also clamp RGB color spaces (according to expected HDTV extended color ranges) or if it will only work for component video – where the conversion is deliberate.

                 

                #65226
                marqs
                Participant

                  Marqs, is there any technical reason for HDMI YCbCr output to be Rec. 601? I mean, for unprocessed output I think it is normal but if we want to scale and apply shaders, the TVs will expect Rec. 709 for 720p-1080p resolutions. Rec. 601 is for for 480i/p only, I think.

                  The decision to flag YCbCr output as Rec. 601 (more specifically SMPTE 170M) was made early in development when typical output modes were not HD. However, as long as displays read the flag and treat the signal accordingly, it does not really matter even if HD signals get converted to YCbCr601.

                  On Pro YCbCr output does not seem to be explicitly flagged which causes displays to treat SD and HD signals differently. However, the conversion matrix is currently fixed (to 709) so either that or the flag should be updated.

                Viewing 7 posts - 1 through 7 (of 7 total)
                • You must be logged in to reply to this topic.