VDPAU
Data Structures | Macros | Typedefs
VdpCSCMatrix; CSC Matrix Manipulation
Collaboration diagram for VdpCSCMatrix; CSC Matrix Manipulation:

Data Structures

struct  VdpProcamp
 Procamp operation parameterization data. More...
 

Macros

#define VDP_PROCAMP_VERSION   0
 
#define VDP_COLOR_STANDARD_ITUR_BT_601
 ITU-R BT.601.
 
#define VDP_COLOR_STANDARD_ITUR_BT_709
 ITU-R BT.709.
 
#define VDP_COLOR_STANDARD_SMPTE_240M
 SMPTE-240M.
 

Typedefs

typedef float VdpCSCMatrix[3][4]
 Storage for a color space conversion matrix.
 
typedef uint32_t VdpColorStandard
 YCbCr color space specification.
 
typedef VdpStatus VdpGenerateCSCMatrix(VdpProcamp *procamp, VdpColorStandard standard, VdpCSCMatrix *csc_matrix)
 Generate a color space conversion matrix.
 

Detailed Description

When converting from YCbCr to RGB data formats, a color space conversion operation must be performed. This operation is parameterized using a "color space conversion matrix". The VdpCSCMatrix is a data structure representing this information.

Macro Definition Documentation

◆ VDP_COLOR_STANDARD_ITUR_BT_601

#define VDP_COLOR_STANDARD_ITUR_BT_601

ITU-R BT.601.

◆ VDP_COLOR_STANDARD_ITUR_BT_709

#define VDP_COLOR_STANDARD_ITUR_BT_709

ITU-R BT.709.

◆ VDP_COLOR_STANDARD_SMPTE_240M

#define VDP_COLOR_STANDARD_SMPTE_240M

SMPTE-240M.

◆ VDP_PROCAMP_VERSION

#define VDP_PROCAMP_VERSION   0

Typedef Documentation

◆ VdpColorStandard

typedef uint32_t VdpColorStandard

YCbCr color space specification.

A number of YCbCr color spaces exist. This enumeration defines the specifications known to VDPAU.

◆ VdpCSCMatrix

typedef float VdpCSCMatrix[3][4]

Storage for a color space conversion matrix.

Note that the application may choose to construct the matrix content by either:

The color space conversion equation is as follows:

\[
\left( \begin{array}{c} R \\ G \\ B \end{array} \right)
=
\left( \begin{array}{cccc}
m_{0,0} & m_{0,1} & m_{0,2} & m_{0,3} \\
m_{1,0} & m_{1,1} & m_{1,2} & m_{1,3} \\
m_{2,0} & m_{2,1} & m_{2,2} & m_{2,3}
\end{array}
\right)
*
\left( \begin{array}{c} Y \\ Cb \\ Cr \\ 1.0 \end{array}
     \right)
\]

◆ VdpGenerateCSCMatrix

typedef VdpStatus VdpGenerateCSCMatrix(VdpProcamp *procamp, VdpColorStandard standard, VdpCSCMatrix *csc_matrix)

Generate a color space conversion matrix.

Parameters
[in]procampThe procamp adjustments to make. If NULL, no adjustments will be made.
[in]standardThe YCbCr color space to convert from.
[out]csc_matrixThe CSC matrix to initialize.
Returns
VdpStatus The completion status of the operation.