MFVideoTransferFunction Enumeration

Specifies the conversion function from linear RGB to non-linear RGB (R’G’B’).

Syntax

typedef enum _MFVideoTransferFunction
{
    MFVideoTransFunc_Unknown = 0,
    MFVideoTransFunc_10 = 1,
    MFVideoTransFunc_18 = 2,
    MFVideoTransFunc_20 = 3,
    MFVideoTransFunc_22 = 4,
    MFVideoTransFunc_709 = 5,
    MFVideoTransFunc_240M = 6,
    MFVideoTransFunc_sRGB = 7,
    MFVideoTransFunc_28 = 8,
    MFVideoTransFunc_Log_100 = 9,
    MFVideoTransFunc_Log_316 = 10,
    MFVideoTransFunc_709_sym = 11,
    MFVideoTransFunc_Last = (MFVideoTransFunc_709_sym+1),
    MFVideoTransFunc_ForceDWORD = 0x7fffffff
} MFVideoTransferFunction;  

Constants

Constant Description
MFVideoTransFunc_Unknown Unknown. Treat as MFVideoTransFunc_709.
MFVideoTransFunc_10 Linear RGB (gamma = 1.0).
MFVideoTransFunc_18 True 1.8 gamma, L’ = L^1/1.8.
MFVideoTransFunc_20 True 2.0 gamma, L’ = L^1/2.0.
MFVideoTransFunc_22 True 2.2 gamma, L’ = L^1/2.2. This transfer function is used in ITU-R BT.470-2 System M (NTSC).
MFVideoTransFunc_709 ITU-R BT.709 transfer function. Gamma 2.2 curve with a linear segment in the lower range. This transfer function is used in BT.709, BT.601, SMPTE 296M, SMPTE 170M, BT.470, and SPMTE 274M. In addition BT-1361 uses this function within the range [0…1].
MFVideoTransFunc_240M SPMTE 240M transfer function. Gamma 2.2 curve with a linear segment in the lower range.
MFVideoTransFunc_sRGB sRGB transfer function. Gamma 2.4 curve with a linear segment in the lower range.
MFVideoTransFunc_28 True 2.8 gamma. L’ = L^1/2.8. This transfer function is used in ITU-R BT.470-2 System B, G (PAL).
MFVideoTransFunc_Log_100 Logarithmic transfer (100:1 range); for example, as used in H.264 video.
Note Requires Windows 7 or later.
MFVideoTransFunc_Log_316 Logarithmic transfer (316.22777:1 range); for example, as used in H.264 video.
Note Requires Windows 7 or later.
MFVideoTransFunc_709_sym Symmetric ITU-R BT.709.
Note Requires Windows 7 or later.
MFVideoTransFunc_Last Reserved.
MFVideoTransFunc_ForceDWORD Reserved. This member forces the enumeration type to compile as a DWORD value.

Remarks

These flags are used with the MF_MT_TRANSFER_FUNCTION attribute.

For more information about these values, see the remarks for the DXVA2_VideoTransferFunction enumeration, which is the DirectX Video Acceleration (DXVA) equivalent of this enumeration.

Requirements

Header: Declared in mfobjects.h.