kodi
|
Helper class used for YUV to RGB conversions. More...
#include <ConversionMatrix.h>
Public Member Functions | |
CConvertMatrix & | SetSourceColorSpace (AVColorSpace colorSpace) |
Set the source color space. | |
CConvertMatrix & | SetSourceBitDepth (int bits) |
Set the source bit depth. | |
CConvertMatrix & | SetSourceLimitedRange (bool limited) |
Set the source limited range boolean. | |
CConvertMatrix & | SetSourceTextureBitDepth (int textureBits) |
Set the source texture bit depth. More... | |
CConvertMatrix & | SetSourceColorPrimaries (AVColorPrimaries src) |
Set the source color primaries. | |
CConvertMatrix & | SetDestinationColorPrimaries (AVColorPrimaries dst) |
Set the destination color primaries. | |
CConvertMatrix & | SetDestinationContrast (float contrast) |
Set the destination contrast. | |
CConvertMatrix & | SetDestinationBlack (float black) |
Set the destination black level. | |
CConvertMatrix & | SetDestinationLimitedRange (bool limited) |
Set the destination limited range boolean. | |
Matrix4 | GetYuvMat () |
Get the YUV Matrix for the YUV to RGB conversion. | |
Matrix3 | GetPrimMat () |
Get the Primaries Matrix for the primaries conversion. | |
float | GetGammaSrc () |
Get the gamma source value. More... | |
float | GetGammaDst () |
Get the gamma destination value. More... | |
Static Public Member Functions | |
static Matrix3x1 | GetRGBYuvCoefs (AVColorSpace colspace) |
Get the YUV coeffecients used for tonemapping. | |
Helper class used for YUV to RGB conversions.
This class can take into account different source/destination primaries and various other parameters.
float CConvertMatrix::GetGammaDst | ( | ) |
Get the gamma destination value.
Used for color primary conversion.
float CConvertMatrix::GetGammaSrc | ( | ) |
Get the gamma source value.
Used for color primary conversion..
CConvertMatrix & CConvertMatrix::SetSourceTextureBitDepth | ( | int | textureBits | ) |
Set the source texture bit depth.
This is need to normalize values when using > 8 bit texture formats in OpenGL/DirectX. For example GL_R16 is a 16 bit texture which needs to normalize the 10 bit format.