summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Burgmeier <jan.burgmeier@unicon-software.com>2019-06-14 14:13:05 +0200
committerXiang, Haihao <haihao.xiang@intel.com>2019-08-05 14:17:56 +0800
commite60af2163cc47d1820cf4b22b71321e3c2b0c9f2 (patch)
tree15970a0f3bc91b0920dffd6a56ee775f96988a7c
parentbfd0e7d8334b414683de33ab1d0520562cf4329f (diff)
downloadlibva-intel-driver-e60af2163cc47d1820cf4b22b71321e3c2b0c9f2.tar.gz
Since commit 1591f6c1be689c5265cb5beab18c97771d056cb9 WVC1 videos are
decoded with a green color on sandy bridge platforms. This is because of a wrong ptype before this commit ptype was set to GEN6_VC1_BI_PICTURE if picture_type is GEN6_VC1_I_PICTURE and profile is advanced. With this commit the ptype is correctly set to GEN6_VC1_BI_PICTURE for advanced profiles. Maybe this is also needed for the other generations affected by commit 1591f6c1be689c5265cb5beab18c97771d056cb9 but I have no hardware to test it.
-rw-r--r--src/gen6_mfd.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/gen6_mfd.c b/src/gen6_mfd.c
index 34473aa9..ac15d472 100644
--- a/src/gen6_mfd.c
+++ b/src/gen6_mfd.c
@@ -1482,8 +1482,11 @@ gen6_mfd_vc1_pic_state(VADriverContextP ctx,
loopfilter = pic_param->entrypoint_fields.bits.loopfilter;
}
- if (picture_type == GEN6_VC1_I_PICTURE || picture_type == GEN6_VC1_BI_PICTURE) /* I picture */
+ if (picture_type == GEN6_VC1_I_PICTURE || picture_type == GEN6_VC1_BI_PICTURE) { /* I picture */
trans_ac_y = pic_param->transform_fields.bits.transform_ac_codingset_idx2;
+ if (pic_param->sequence_fields.bits.profile == 3) /* Advanced Profile */
+ ptype = GEN6_VC1_BI_PICTURE;
+ }
else {
trans_ac_y = pic_param->transform_fields.bits.transform_ac_codingset_idx1;
/*