summaryrefslogtreecommitdiff
path: root/src/gen7_mfd.c
diff options
context:
space:
mode:
authorZhao Halley <halley.zhao@intel.com>2012-09-21 10:30:55 +0800
committerXiang, Haihao <haihao.xiang@intel.com>2012-09-27 03:08:25 -0400
commitf557dd6ad06c31bcf787468e804c948ecc4cf39b (patch)
treeebf857f013de80624cc906937acede79e87efd53 /src/gen7_mfd.c
parent421b0b764ac772017f797eadd34aa933e70aeb1c (diff)
downloadlibva-intel-driver-f557dd6ad06c31bcf787468e804c948ecc4cf39b.tar.gz
libva-intel-driver-f557dd6ad06c31bcf787468e804c948ecc4cf39b.tar.bz2
libva-intel-driver-f557dd6ad06c31bcf787468e804c948ecc4cf39b.zip
fix ttmbf/ttfrm when vstransform is 0
(cherry picked from commit c7d23b1e9376808dfa88192ee66a1af5acdf3b16)
Diffstat (limited to 'src/gen7_mfd.c')
-rwxr-xr-x[-rw-r--r--]src/gen7_mfd.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/gen7_mfd.c b/src/gen7_mfd.c
index d8581ed..2d75baf 100644..100755
--- a/src/gen7_mfd.c
+++ b/src/gen7_mfd.c
@@ -1633,8 +1633,19 @@ gen7_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) {