DXVA_TCoef4Group结构 (dxva.h)

主机解码器将DXVA_TCoef4Group结构发送到加速器,以指定 IDCT 系数值。

语法

typedef struct _DXVA_TCoef4Group {
  BYTE  TCoefIDX[4];
  SHORT TCoefValue[4];
} DXVA_TCoef4Group, *LPDXVA_TCoef4Group;

成员

TCoefIDX[4]

指定块中系数的扫描索引。 以 MBscanMethod 变量(宏块控制命令 成员 的位 6 和 7)指定的扫描顺序中当前系数之前的零值系数数表示。 这些命令在以下结构中定义:DXVA_MBctrl_I_OffHostIDCT_1DXVA_MBctrl_P_OffHostIDCT_1TCoefIDX 包含指定扫描顺序中当前系数之前的零值系数数,之后是块的最后一个传输系数(或者相对于块开头(如果前面没有)。 反扫描顺序中最后一个发送系数之后的任何剩余系数都隐含为值 0。

TCoefIDX 必须始终小于 64。

TCoefValue[4]

指定块中系数的值。 TCoefValue 必须在主机 Low-Level IDCT 处理元素 中指定的适当范围剪切,然后才能将系数值传递给 IDCT作的加速器。 MPEG-2 不匹配控制(如有必要)也是主机的责任,而不是加速器(这可能需要创建额外的“幻影”非零系数)。

言论

仅当 DXVA_ConfigPictureDecode 结构的这两个成员设置为以下值时,才使用DXVA_TCoef4Group结构:bConfig4GroupedCoefs 为 1,bConfigHostInverseScan 为零。

在DXVA_TCoef4Group结构中,四个转换系数组与关联的运行长度值一起发送。 DXVA_TCoef4Group中每个数组的 个元素包含实际系数或运行长度列表的元素 3-i(因此第一个系数或索引进入元素 3、第二个元素 2 等)。 如果只有 NC< 4 个非零系数仍需为块发送, 然后,TCoefIDX[i] 必须为 63(十六进制0x3F),TCoefValue[i] 对于 i = 0 到 3-NC,应等于 TCoefValue[4-NC] 。

要求

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

另请参阅

DXVA_ConfigPictureDecode