DXVA2_VideoTransferMatrix enumeration (dxva2api.h)

Describes the conversion matrices between Y'PbPr (component video) and studio R'G'B'. These flags are used in the DXVA2_ExtendedFormat structure.

Syntax

typedef enum _DXVA2_VideoTransferMatrix {
  DXVA2_VideoTransferMatrixMask = 0x7,
  DXVA2_VideoTransferMatrix_Unknown = 0,
  DXVA2_VideoTransferMatrix_BT709 = 1,
  DXVA2_VideoTransferMatrix_BT601 = 2,
  DXVA2_VideoTransferMatrix_SMPTE240M = 3
} DXVA2_VideoTransferMatrix;

Constants

 
DXVA2_VideoTransferMatrixMask
Value: 0x7
Bitmask to validate flag values. This value is not a valid flag.
DXVA2_VideoTransferMatrix_Unknown
Value: 0
Unknown. For standard-definition content, treat as DXVA2_VideoTransferMatrix_BT601. For high-definition content, treat as DXVA2_VideoTransferMatrix_BT709. (High-definition content is defined for this purpose as anything with a source height greater than 576 lines.)
DXVA2_VideoTransferMatrix_BT709
Value: 1
ITU-R BT.709 transfer matrix.
DXVA2_VideoTransferMatrix_BT601
Value: 2
ITU-R BT.601 transfer matrix. Also used for SMPTE 170 and ITU-R BT.470-2 System B,G.
DXVA2_VideoTransferMatrix_SMPTE240M
Value: 3
SMPTE 240M transfer matrix.

Remarks

The transfer matrices are defined as follows.

BT.709 transfer matrices:

Y'        0.212600    0.715200    0.072200       R' 
Pb   =   -0.114572   -0.385428    0.500000   x   G' 
Pr        0.500000   -0.454153   -0.045847       B' 

R'        1.000000    0.000000    1.574800       Y' 
G'   =    1.000000   -0.187324   -0.468124   x   Pb 
B'        1.000000    1.855600    0.000000       Pr 

BT.601 transfer matrices:

Y'        0.299000    0.587000    0.114000       R' 
Pb   =   -0.168736   -0.331264    0.500000   x   G' 
Pr        0.500000   -0.418688   -0.081312       B' 

R'        1.000000    0.000000    1.402000       Y' 
G'   =    1.000000   -0.344136   -0.714136   x   Pb 
B'        1.000000    1.772000    0.000000       Pr 

SMPTE 240M (SMPTE RP 145) transfer matrices:

Y'        0.212000    0.701000    0.087000       R' 
Pb   =   -0.116000   -0.384000    0.500000   x   G' 
Pr        0.500000   -0.445000   -0.055000       B' 

R'        1.000000   -0.000000    1.576000       Y' 
G'   =    1.000000   -0.227000   -0.477000   x   Pb 
B'        1.000000    1.826000    0.000000       Pr 

This enumeration is equivalent to the DXVA_VideoTransferMatrix enumeration used in DXVA 1.0.

If you are using the IMFMediaType interface to describe the video format, the video transfer matrix is specified in the MF_MT_YUV_MATRIX attribute.

Requirements

Requirement Value
Minimum supported client Windows Vista [desktop apps only]
Minimum supported server Windows Server 2008 [desktop apps only]
Header dxva2api.h

See also

Extended Color Information

Media Foundation Enumerations