DXVA2_NominalRange enumeração (dxva2api.h)
Descreve como mapear dados de cor para um intervalo normalizado [0...1].
Esses sinalizadores são usados na estrutura DXVA2_ExtendedFormat . Eles indicam se o intervalo de valores de cor inclui espaço para a cabeça (valores acima de 100% de branco) e toeroom (valores abaixo da referência preto).
Syntax
typedef enum _DXVA2_NominalRange {
DXVA2_NominalRangeMask = 0x7,
DXVA2_NominalRange_Unknown = 0,
DXVA2_NominalRange_Normal = 1,
DXVA2_NominalRange_Wide = 2,
DXVA2_NominalRange_0_255 = 1,
DXVA2_NominalRange_16_235 = 2,
DXVA2_NominalRange_48_208 = 3
} DXVA2_NominalRange;
Constantes
DXVA2_NominalRangeMask Valor: 0x7 Máscara de bits para validar valores de sinalizador. Esse valor não é um sinalizador válido. |
DXVA2_NominalRange_Unknown Valor: 0 Intervalo nominal desconhecido ou não especificado. Se esse valor for usado no membro DestFormat da estrutura DXVA2_VideoProcessBltParams , o driver determinará o intervalo nominal ideal com base no espaço de cor de destino. Por exemplo, a superfície de destino geralmente é sRGB, que tem um intervalo nominal de 0 a 255 por canal. No entanto, um driver pode usar uma técnica como controle de ganho automático para maximizar o intervalo dinâmico, preservando valores acima do branco de referência. |
DXVA2_NominalRange_Normal Valor: 1 Equivalente a DXVA2_NominalRange_0_255. |
DXVA2_NominalRange_Wide Valor: 2 Equivalente a DXVA2_NominalRange_16_235. |
DXVA2_NominalRange_0_255 Valor: 1 O intervalo normalizado [0...1] mapeia para [0...255] para amostras de 8 bits ou [0...1023] para amostras de 10 bits. |
DXVA2_NominalRange_16_235 Valor: 2 O intervalo normalizado [0...1] mapeia para [16...235] para amostras de 8 bits ou [64...940] para amostras de 10 bits. |
DXVA2_NominalRange_48_208 Valor: 3 O intervalo normalizado [0..1] mapeia para [48...208] para amostras de 8 bits ou [192...832] para amostras de 10 bits. |
Comentários
Para cores YUV, esses sinalizadores especificam como converter entre Y'CbCr e Y'PbPr. O espaço de cor Y'PbPr tem um intervalo de [0..1] para Y' (luma) e [-0.5...0.5] para Pb/Pr (chroma).
Valor | Descrição |
---|---|
DXVA2_NominalRange_0_255 | Não deve ser usado para dados YUV. |
DXVA2_NominalRange_16_235 |
Para componentes Y'CbCr de 8 bits:
|
DXVA2_NominalRange_48_208 | Para valores Y'CbCr de 8 bits, o intervalo Y' de [0..1] é mapeado para [48...208]. |
Para cores RGB, os sinalizadores diferenciam vários espaços RGB.
Valor | Descrição |
---|---|
DXVA2_NominalRange_0_255 | Srgb |
DXVA2_NominalRange_16_235 | Studio RGB; ITU-R BT.709 |
DXVA2_NominalRange_48_208 | ITU-R BT.1361 RGB |
Os dados de vídeo podem conter valores acima ou abaixo do intervalo nominal.
Se você estiver usando a interface IMFMediaType para descrever o formato de vídeo, o intervalo nominal será especificado no atributo MF_MT_VIDEO_NOMINAL_RANGE .
Requisitos
Cliente mínimo com suporte | Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 [somente aplicativos da área de trabalho] |
Cabeçalho | dxva2api.h |