DXVA_Highlight 结构 (dxva.h)

DXVA_Highlight结构由主机解码器发送到加速器,以指定子图片的突出显示矩形区域,并使用 DCCMD 数据和 DPXD 表面创建 alpha 混合图面。

语法

typedef struct _DXVA_Highlight {
  WORD wHighlightActive;
  WORD wHighlightIndices;
  WORD wHighlightAlphas;
  RECT HighlightRect;
} DXVA_Highlight, *LPDXVA_Highlight;

成员

wHighlightActive

指示矩形突出显示区域是否处于活动状态。 零表示非活动,1 表示活动。 如果处于非活动状态,则突出显示数据必须对混合图片的内容没有影响。

wHighlightIndices

包含四个调色板索引。 每个调色板索引由 4 位组成。 DXPD 突出显示的矩形区域中的每个 2 位索引都用于在这四个调色板索引之间进行选择。 4 个最有效位用于索引 3,接下来的 4 位用于索引 2,接下来的 4 位用于索引 1,4 个最小有效位用于索引 0。

wHighlightAlphas

包含四个不透明度值。 每个不透明度值由 4 位组成。 DXPD 突出显示的矩形区域中的每个 2 位索引都用于在这四个不透明度值之间进行选择。 4 个最有效位用于索引 3,接下来的 4 位用于索引 2,接下来的 4 位用于索引 1,4 个最小有效位用于索引 0。

这些 4 位不透明度值分别称为 SampleAlpha4 变量,解释如下:

  • 值零表示相应位置的图形内容是透明的 (,因此由 wHighlightIndices 的相应位索引的调色板条目对生成的混合图片) 没有影响。 对于零值,指定的混合是使用视频图片内容而不进行任何更改。
  • 值 15 表示相应位置的图形内容不透明 (,因此 由 wHighlightIndices 的相应位索引的调色板条目完全确定生成的混合图片) 。
  • 对于非零值,使用以下表达式找到指定的混合:
  • ( ( ( (SampleAlpha4 + 1) x (图形值) ) + ( ( (15 - SampleAlpha4) x (图片值) ) + 8 ) >> 4

HighlightRect

指定一个 RECT 结构,该结构定义突出显示矩形的区域。

以下限制适用于 RECT 维度:

  • lefttop 必须大于或等于零。
  • 必须分别大于
  • 不能超过 720, 底部 不能超过 576。

注解

DXVA_Highlight结构是以与 DVD 论坛指定的 DVD 视频规范兼容的方式制定的。

注意 DVD 规范定义子图片矩形区域的方式与 Microsoft 使用的约定之间存在差异。 本部分遵循 Microsoft 约定,因此图片左上角的宽度为 10 且高度为 10 的矩形由 top = 0、 left = 0、 right = 10、 bottom = 10 定义。 DVD 规范定义 = 9, 底部 = 9。
 

要求

要求
Header dxva.h (包括 Dxva.h)

另请参阅

矩形