Compartir a través de


DXVA2_NominalRange enumeración (dxva2api.h)

Describe cómo asignar datos de color a un intervalo normalizado [0...1].

Estas marcas se usan en la estructura DXVA2_ExtendedFormat . Indican si el rango de valores de color incluye el espacio de cabeza (valores por encima del 100 % de blanco) y la habitación (valores por debajo del negro de referencia).

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 los valores de marca. Este valor no es una marca válida.
DXVA2_NominalRange_Unknown
Valor: 0
Intervalo nominal desconocido o no especificado.

Si este valor se usa en el miembro DestFormat de la estructura DXVA2_VideoProcessBltParams , el controlador determinará el intervalo nominal óptimo en función del espacio de colores de destino. Por ejemplo, la superficie de destino suele ser sRGB, que tiene un intervalo nominal de 0 a 255 por canal. Sin embargo, un controlador puede usar una técnica como el control de ganancia automática para maximizar el intervalo dinámico, a la vez que se conservan los valores por encima del blanco de referencia.
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
El intervalo normalizado [0...1] se asigna a [0...255] para muestras de 8 bits o [0...1023] para muestras de 10 bits.
DXVA2_NominalRange_16_235
Valor: 2
El intervalo normalizado [0...1] se asigna a [16...235] para muestras de 8 bits o [64...940] para muestras de 10 bits.
DXVA2_NominalRange_48_208
Valor: 3
El intervalo normalizado [0..1] se asigna a [48...208] para muestras de 8 bits o [192...832] para muestras de 10 bits.

Comentarios

En el caso de los colores YUV, estas marcas especifican cómo convertir entre Y'CbCr e Y'PbPr. El espacio de color Y'PbPr tiene un rango de [0..1] para Y' (luma) y [-0.5...0.5] para Pb/Pr (cromática).

Valor Descripción
DXVA2_NominalRange_0_255 No se debe usar para los datos de YUV.
DXVA2_NominalRange_16_235 Para los componentes Y'CbCr de 8 bits:
  • El intervalo Y de [0...1] se asigna a [16..235] para los valores Y de 8 bits.
  • Los intervalos pb/pr de [-0,5...0,5] se asignan a [16...240] para valores Cb/Cr de 8 bits.
En el caso de las muestras con n bits de precisión, las ecuaciones generales son:
  • Y' = (Y' * 219 + 16) * 2 ^ (n-8)
  • Cb = (Pb * 224 + 128) * 2 ^ (n-8)
  • Cr = (Pr * 224 + 128) * 2 ^ (n-8)
Las ecuaciones inversas que se van a convertir de Y'CbCr a Y'PbPr son:
  • Y' = (Y' / 2 ^ (n-8) - 16) / 219
  • Pb = (Cb / 2 ^ (n-8) - 128) / 224
  • Pr = (Cr / 2 ^ (n-8) - 128) / 224
DXVA2_NominalRange_48_208 Para los valores de Y'CbCr de 8 bits, el intervalo Y' de [0..1] se asigna a [48...208].
 

Para los colores RGB, las marcas diferencian varios espacios RGB.

Valor Descripción
DXVA2_NominalRange_0_255 sRGB
DXVA2_NominalRange_16_235 Studio RGB; UIT-R BT.709
DXVA2_NominalRange_48_208 ITU-R BT.1361 RGB
 

Los datos de vídeo pueden contener valores por encima o por debajo del intervalo nominal.

Nota Los valores denominados DXVA2_NominalRange_Normal y DXVA2_NominalRange_Wide son una posible fuente de confusión. Wide hace referencia al posible intervalo de valores analógicos que se pueden representar, asignando el intervalo nominal [0...1] a un intervalo más estrecho de valores digitales . Dado que el significado de wide en este contexto es ambiguo, se prefieren los valores equivalentes denominados DXVA2_NominalRange_0_255 y DXVA2_NominalRange_16_235. Estos nombres transmiten explícitamente el significado de la enumeración y es menos probable que se malinterprete.
 
Esta enumeración es equivalente a la enumeración DXVA_NominalRange usada en DXVA 1.0, aunque define valores adicionales.

Si usa la interfaz IMFMediaType para describir el formato de vídeo, el intervalo nominal se especifica en el atributo MF_MT_VIDEO_NOMINAL_RANGE .

Requisitos

   
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 [solo aplicaciones de escritorio]
Encabezado dxva2api.h

Consulte también

Información de color extendida

Enumeraciones de Media Foundation