DXVA_AYUVsample2结构 (dxva.h)

主机解码器将DXVA_AYUVsample2结构发送到加速器,以指定 Y、Cb、Cr 颜色值和关联的不透明度。

语法

typedef struct _DXVA_AYUVsample2 {
  BYTE bCrValue;
  BYTE bCbValue;
  BYTE bY_Value;
  BYTE bSampleAlpha8;
} DXVA_AYUVsample2, *LPDXVA_AYUVsample2;

成员

bCrValue

将 chrominance (Cr) 样本值(按 ITU-R Rec. BT.601 缩放)指定为无符号值。 因此,黑色名义上由 Y=16、Cb=Cr=128 指定,颜色白色由 Y=235、Cb=Cr=128 指定。

bCbValue

将 chrominance (Cb) 样本值(按 ITU-R Rec. BT.601 缩放)指定为无符号值。 因此,黑色名义上由 Y=16、Cb=Cr=128 指定,颜色白色由 Y=235、Cb=Cr=128 指定。

bY_Value

将亮度(Y)样本值(按 ITU-R Rec. BT.601 缩放)指定为无符号值。 因此,黑色名义上由 Y=16、Cb=Cr=128 指定,颜色白色由 Y=235、Cb=Cr=128 指定。

bSampleAlpha8

指定用作与另一张图片混合的源图形时像素的不透明度。 对于 Windows Server 2003 SP1 和 Windows XP SP2,不使用不透明度级别,驱动程序应忽略该级别。

言论

bSampleAlpha8 的值为零表示像素是透明的(以便其他条目对生成的混合图片没有影响),值为 255 表示像素不透明(以便其他条目完全确定生成的混合图片样本的值)。

对于 bSampleAlpha8的非零值,要使用的混合由以下表达式计算:

(((bSampleAlpha8+1) x (图形值) + (255 - bSampleAlpha8) x (图片值) ) + 128 ) >> 8

对于 bSampleAlpha8的零值,要使用的指定混合是图片值而不更改。

注意 如果 alpha 混合图面源自 DVD 视频子图片, 从 DVD 视频使用的 4 位 alpha 转换为 bSampleAlpha8 指定的 8 位 alpha 的首选方法是将 4 位 alpha 值映射到零的 8 位 alpha 值,并通过执行四个位置的左移将所有非零 4 位 alphas 转换为 8 位 alphas并添加常量 15。
 
AYUV alpha 混合图面的宽度和高度是在 DXVA_BufferDescription 结构定义的关联 缓冲区说明 列表中指定的。

DXVA_AYUVsample2 结构用于 DirectX VA AYUV 混合图面中的每个示例,用于 DXVA_BlendCombination 结构中的 OutsideYUVcolor,以及 16 个条目 AYUV alpha 混合调色板中的每个条目。

要求

要求 价值
标头 dxva.h (包括 Dxva.h)

另请参阅

DXVA_BlendCombination

DXVA_BufferDescription