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_1 或 DXVA_MBctrl_P_OffHostIDCT_1。 TCoefIDX 包含指定扫描顺序中当前系数之前的零值系数数,之后是块的最后一个传输系数(或者相对于块开头(如果前面没有)。 反扫描顺序中最后一个发送系数之后的任何剩余系数都隐含为值 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) |