DXVADDI_AYUVSAMPLE8結構 (d3dumddi.h)
DXVADDI_AYUVSAMPLE8 結構描述 8 位 Cr、Cb 和 Y 色彩值,以及相關聯的不透明度。
語法
typedef struct _DXVADDI_AYUVSAMPLE8 {
[in] UCHAR Cr;
[in] UCHAR Cb;
[in] UCHAR Y;
[in] UCHAR Alpha;
} DXVADDI_AYUVSAMPLE8;
成員
[in] Cr
8 位的 chrominance (V) 樣本值。
[in] Cb
8 位的 chrominance (U) 樣本值。
[in] Y
8 位亮度 (Y) 樣本值。
[in] Alpha
當像素作為來源圖形來混合另一張圖片時,圖元的8位不透明度。
言論
Alpha 成員中的值為 0,表示圖元是透明的(讓其他專案對產生的混合圖片沒有任何影響),而 255 的值表示圖元不透明(讓其他專案完全決定產生的混合圖片樣本的值)。
對於 Alpha的非零值,要使用的混合是由下列表達式計算:
( ( ( (Alpha + 1) x (graphic value) ) + ( (255 - Alpha) x (picture value) ) ) + 128 ) >> 8
如果 Alpha 為 0,要使用的指定混合是圖片值而不改變。
色彩值是根據 ITU-R BT.601 縮放,您可以從 國際電信聯盟 網站瞭解。 因此,黑色由 Y=16、Cb=Cr=128 名義指定,並以 Y=235、Cb=Cr=128 名義指定白色。
注意
如果Alpha混合表面源自 DVD 視訊子圖形,則從 DVD 視訊所使用的 4 位 Alpha 轉換成 Alpha 所指定的 8 位 Alpha,是將 4 位 Alpha 值對應至零的 8 位 Alpha 值,並將所有非零 4 位 Alpha 轉換為 8 位 Alpha,方法是執行左移將所有非零 4 位 Alpha 轉換成 8 位 Alpha為四個位置,並新增常數 15。
AYUV Alpha 混合表面的寬度和高度會指定於 緩衝區描述清單中, 由 DXVADDI_DECODEBUFFERDESC 結構所定義。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows Vista |
標頭 | d3dumddi.h (包括 D3dumddi.h) |