diff options
author | Xiang, Haihao <haihao.xiang@intel.com> | 2013-01-09 15:55:54 +0800 |
---|---|---|
committer | Xiang, Haihao <haihao.xiang@intel.com> | 2013-01-09 15:55:54 +0800 |
commit | 0946885680ec327ed46f316c65f0168e2ca5655a (patch) | |
tree | ffeb00885c3656a073265f7136aeaf894bc67249 | |
parent | 660cb88ec00a896eefc9580e691d0a07fb2870ec (diff) | |
download | vaapi-intel-driver-0946885680ec327ed46f316c65f0168e2ca5655a.tar.gz vaapi-intel-driver-0946885680ec327ed46f316c65f0168e2ca5655a.tar.bz2 vaapi-intel-driver-0946885680ec327ed46f316c65f0168e2ca5655a.zip |
Fix ttmbf/ttfrm when vstransform is 0 on HSW
This is the same fix of c7d23b1
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
-rw-r--r-- | src/gen75_mfd.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/gen75_mfd.c b/src/gen75_mfd.c index a4269f8..f2aad00 100644 --- a/src/gen75_mfd.c +++ b/src/gen75_mfd.c @@ -1919,9 +1919,20 @@ gen75_mfd_vc1_pic_state(VADriverContextP ctx, if (picture_type == GEN7_VC1_I_PICTURE || picture_type == GEN7_VC1_BI_PICTURE) /* I picture */ trans_ac_y = pic_param->transform_fields.bits.transform_ac_codingset_idx2; - else + else { trans_ac_y = pic_param->transform_fields.bits.transform_ac_codingset_idx1; + /* + * 8.3.6.2.1 Transform Type Selection + * If variable-sized transform coding is not enabled, + * then the 8x8 transform shall be used for all blocks. + * it is also MFX_VC1_PIC_STATE requirement. + */ + if (pic_param->transform_fields.bits.variable_sized_transform_flag == 0) { + pic_param->transform_fields.bits.mb_level_transform_type_flag = 1; + pic_param->transform_fields.bits.frame_level_transform_type = 0; + } + } if (picture_type == GEN7_VC1_B_PICTURE) { struct gen7_vc1_surface *gen7_vc1_surface = NULL; |