enumeração DXVA2_VideoTransferFunction (dxva2api.h)

Especifica a função de conversão de RGB linear para RGB não linear (R'G'B'). Esses sinalizadores são usados na estrutura DXVA2_ExtendedFormat.

Syntax

typedef enum _DXVA2_VideoTransferFunction {
  DXVA2_VideoTransFuncMask = 0x1f,
  DXVA2_VideoTransFunc_Unknown = 0,
  DXVA2_VideoTransFunc_10 = 1,
  DXVA2_VideoTransFunc_18 = 2,
  DXVA2_VideoTransFunc_20 = 3,
  DXVA2_VideoTransFunc_22 = 4,
  DXVA2_VideoTransFunc_709 = 5,
  DXVA2_VideoTransFunc_240M = 6,
  DXVA2_VideoTransFunc_sRGB = 7,
  DXVA2_VideoTransFunc_28 = 8
} DXVA2_VideoTransferFunction;

Constantes

 
DXVA2_VideoTransFuncMask
Valor: 0x1f
Bitmask para validar valores de sinalizador. Esse valor não é um sinalizador válido.
DXVA2_VideoTransFunc_Unknown
Valor: 0
Desconhecida. Trate como DXVA2_VideoTransFunc_709.
DXVA2_VideoTransFunc_10
Valor: 1
RGB linear (gama = 1,0).
DXVA2_VideoTransFunc_18
Valor: 2
True 1.8 gamma, L' = L^1/1.8.
DXVA2_VideoTransFunc_20
Valor: 3
True 2.0 gamma, L' = L^1/2.0.
DXVA2_VideoTransFunc_22
Valor: 4
True 2.2 gamma, L' = L^1/2.2. Essa função de transferência é usada no ITU-R BT.470-2 System M (NTSC).
DXVA2_VideoTransFunc_709
Valor: 5
Função de transferência ITU-R BT.709. Curva gama 2.2 com um segmento linear no intervalo inferior. Essa função de transferência é usada em BT.709, BT.601, SMPTE 296M, SMPTE 170M, BT.470 e SMPTE 274M. Além disso, o BT-1361 usa essa função dentro do intervalo [0...1].
DXVA2_VideoTransFunc_240M
Valor: 6
Função de transferência SMPTE 240M. Curva gama 2.2 com um segmento linear no intervalo inferior.
DXVA2_VideoTransFunc_sRGB
Valor: 7
Função de transferência sRGB. Curva gama 2.4 com um segmento linear no intervalo inferior.
DXVA2_VideoTransFunc_28
Valor: 8
Verdadeiro gama 2.8. L' = L^1/2,8. Essa função de transferência é usada em ITU-R BT.470-2 Sistema B, G (PAL).

Comentários

A tabela a seguir mostra as fórmulas para as funções de transferência mais comuns. Nessas fórmulas, L é o valor linear e L' é o valor não linear (corrigido por gama). Esses valores são relativos a um intervalo normalizado [0...1].

Espaço de cores Função Transfer
sRGB (8 bits) L' = 12,92L, para L < 0,031308

L' = 1,055L^1/2,4− 0,055, para L >= 0,031308

SISTEMA BT.470-2 B, G L' = L^0,36
SISTEMA BT.470-2 M L' = L^0,45
BT.709 L' = 4,50L, para L < 0,018

L' = 1,099L^0,45− 0,099, para L >= 0,018

Scrgb L' = L
SMPTE 240M L' = 4,0L, para L < 0,0228

L' = 1,1115L^0,45− 0,01115, para L >= 0,0228

 

A tabela a seguir mostra as fórmulas inversas para obter os valores originais corrigidos por gama:

Espaço de cores Função Transfer
sRGB (8 bits) L = 1/12,92L', para L' < 0,03928

L = ((L' + 0,055)/1055)^2,4, para L' >= 0,03928

SISTEMA BT.470-2 B, G L = L'^1/0,36
SISTEMA BT.470-2 M L = L'^1/0,45
BT.709 L = L'/4,50, para L' < 0,081

L = ((L' + 0,099) / 1,099)^1/0,45, para L' >= 0,081

Scrgb L = L'
SMPTE 240M L = L'/4.0, para L' < 0,0913

L= ((L' + 0,1115)/1.1115)^1/0,45, para L' >= 0,0913

 

Essa enumeração é equivalente à enumeração DXVA_VideoTransferFunction usada no DXVA 1.0.

Se você estiver usando a interface IMFMediaType para descrever o formato de vídeo, a função de transferência será especificada no atributo MF_MT_TRANSFER_FUNCTION .

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

Confira também

Informações de cor estendidas

Enumerações do Media Foundation