• Hans Verkuil's avatar
    [media] videodev2.h: map xvYCC601/709 to limited range quantization · 79e92dc0
    Hans Verkuil authored
    The xvYCC601/709 encodings were mapped by default to full range quantization.
    This is actually wrong since these encodings use limited range quantization,
    but accept values outside of the limited range.
    
    This makes sense since for values within the limited range it behaves exactly
    the same as BT.601 or Rec. 709. The only difference is that with the xvYCC
    encodings the values outside of the limited range also produce value colors.
    
    Talking to people who know a lot more about this than I do made me realize
    that mapping xvYCC to full range quantization was wrong, so this patch corrects
    this and also improves the documentation.
    
    These formats are very rare, and since the formula for decoding these Y'CbCr
    encodings is actually fixed and independent of the quantization field value
    it is safe to make this change.
    
    The main advantage is that keeps the V4L2 specification in sync with the
    corresponding colorspace, HDMI and CEA861 standards when it comes to these
    xvYCC formats.
    Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
    Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
    79e92dc0
pixfmt-007.rst 19.2 KB