DXVA2_VideoTransferFunction列舉 (dxva2api.h)
指定從線性 RGB 到非線性 RGB 的轉換函式, (R'G'B') 。 這些旗標會用於 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;
常數
DXVA2_VideoTransFuncMask 值: 0x1f 用來驗證旗標值的位元遮罩。 此值不是有效的旗標。 |
DXVA2_VideoTransFunc_Unknown 值: 0 未知。 視為DXVA2_VideoTransFunc_709。 |
DXVA2_VideoTransFunc_10 值: 1 線性 RGB (gamma = 1.0) 。 |
DXVA2_VideoTransFunc_18 值: 2 True 1.8 gamma, L' = L^1/1.8。 |
DXVA2_VideoTransFunc_20 值: 3 True 2.0 gamma, L' = L^1/2.0。 |
DXVA2_VideoTransFunc_22 值: 4 True 2.2 gamma, L' = L^1/2.2。 此傳輸函式用於 (NTSC) 的 BT-R BT.470-2 系統 M。 |
DXVA2_VideoTransFunc_709 值: 5 BT-R BT.709 傳輸函式。 Gamma 2.2 曲線,其線性線段位於較低範圍。 此傳輸函式用於 BT.709、BT.601、SMPTE 296M、SMPTE 170M、BT.470 和 SMPTE 274M。 此外,BT-1361 也會在 [0...1] 範圍內使用此函式。 |
DXVA2_VideoTransFunc_240M 值: 6 SMPTE 240M 傳輸函式。 Gamma 2.2 曲線,其線性線段位於較低範圍。 |
DXVA2_VideoTransFunc_sRGB 值: 7 sRGB 傳輸函式。 Gamma 2.4 曲線,其線性線段位於較低範圍。 |
DXVA2_VideoTransFunc_28 值: 8 True 2.8 gamma。 L' = L^1/2.8。 此傳輸函式會用於 (PAL) 的 BT-R BT.470-2 系統 B。 |
備註
下表顯示最常見傳輸函式的公式。 在這些公式中,L 是線性值,L' 是修正) 值的非線性 (gamma。 這些值相對於標準化範圍 [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 |
下表顯示反向公式,以取得原始的 gamma 更正值:
色彩空間 | 傳送函式 |
---|---|
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 1.0 中使用的 DXVA_VideoTransferFunction 列舉。
如果您使用 IMFMediaType 介面來描述視訊格式,則會在 MF_MT_TRANSFER_FUNCTION 屬性中指定傳輸函式。
需求
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
標頭 | dxva2api.h |