перечисление DXVA2_VideoTransferFunction (dxva2api.h)
Задает функцию преобразования из линейного RGB в нелинейный RGB (R'G'B). Эти флаги используются в структуре DXVA2_ExtendedFormat.
Синтаксис
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;
Константы
DXVA2_VideoTransFuncMask Значение: 0x1f Битовая маска для проверки значений флагов. Это значение не является допустимым флагом. |
DXVA2_VideoTransFunc_Unknown Значение: 0 Неизвестна. Рассматривайте как DXVA2_VideoTransFunc_709. |
DXVA2_VideoTransFunc_10 Значение: 1 Линейный RGB (гамма = 1,0). |
DXVA2_VideoTransFunc_18 Значение: 2 True 1,8 гамма, L' = L^1/1,8. |
DXVA2_VideoTransFunc_20 Значение: 3 True 2,0 гамма, L' = L^1/2,0. |
DXVA2_VideoTransFunc_22 Значение: 4 True 2.2 гамма, L' = L^1/2.2. Эта функция передачи используется в системе M (NTSC) ITU-R BT.470-2. |
DXVA2_VideoTransFunc_709 Значение: 5 Функция передачи ITU-R BT.709. Кривая гамма 2.2 с линейным сегментом в нижнем диапазоне. Эта функция передачи используется в BT.709, BT.601, SMPTE 296M, SMPTE 170M, BT.470 и SMPTE 274M. Кроме того, BT-1361 использует эту функцию в диапазоне [0...1]. |
DXVA2_VideoTransFunc_240M Значение: 6 Функция передачи SMPTE 240M. Кривая гамма 2.2 с линейным сегментом в нижнем диапазоне. |
DXVA2_VideoTransFunc_sRGB Значение: 7 Функция передачи sRGB. Кривая гамма 2.4 с линейным сегментом в нижнем диапазоне. |
DXVA2_VideoTransFunc_28 Значение: 8 True 2.8 гамма. L' = L^1/2.8. Эта функция передачи используется в системе BT.470-2 ITU-R B, G (PAL). |
Комментарии
В следующей таблице показаны формулы для наиболее распространенных функций передачи. В этих формулах L — это линейное значение, а L — нелинейное (гамма-исправленное) значение. Эти значения относятся к нормализованным диапазонам [0...1].
Цветовое пространство | Функция передачи |
---|---|
sRGB (8-разрядная версия) |
L' = 12,92L, для L < 0,031308 L' = 1,055L^1/2,4− 0,055, для L >= 0,031308 |
BT.470-2 Система B, G | L' = L^0,36 |
BT.470-2 Система M | L' = L^0,45 |
BT.709 |
L' = 4,50L, для L < 0,018 L' = 1,099L^0,45− 0,099, для L >= 0,018 |
scRGB | L' = L |
SMPTE 240M |
L' = 4,0L, для L < 0,0228 L' = 1,1115L^0,45− 0,01115, для L >= 0,0228 |
В следующей таблице показаны обратные формулы для получения исходных гамма-исправленных значений:
Цветовое пространство | Функция передачи |
---|---|
sRGB (8-разрядная версия) |
L = 1/12,92L', для L' < 0,03928 L = ((L' + 0,055)/1055)^2,4, для L' >= 0,03928 |
BT.470-2 Система B, G | L = L'^1/0,36 |
BT.470-2 Система M | L = L'^1/0,45 |
BT.709 |
L = L'/4,50, для L' < 0,081 L = ((L' + 0,099) / 1,099)^1/0,45, для L' >= 0,081 |
scRGB | L = L' |
SMPTE 240M |
L = L'/4.0, для L' < 0,0913 L= ((L' + 0,1115)/1,1115)^1/0,45, для L' >= 0,0913 |
Это перечисление эквивалентно перечислению DXVA_VideoTransferFunction , используемому в DXVA 1.0.
Если для описания формата видео используется интерфейс IMFMediaType , функция передачи указывается в атрибуте MF_MT_TRANSFER_FUNCTION .
Требования
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Верхняя часть | dxva2api.h |