summaryrefslogtreecommitdiff
path: root/src/shaders
diff options
context:
space:
mode:
authorZhao Yakui <yakui.zhao@intel.com>2013-10-14 09:56:30 +0800
committerXiang, Haihao <haihao.xiang@intel.com>2013-11-13 15:32:51 +0800
commit7b6c3bfa1111b26a5519438a9eca67ff88d7ef04 (patch)
treeaf222e7f0492c80e5fef2e912a41912669dc0878 /src/shaders
parent0bb182049c3d290ed8affdf2b462b379d6f7de55 (diff)
downloadlibva-intel-driver-7b6c3bfa1111b26a5519438a9eca67ff88d7ef04.tar.gz
libva-intel-driver-7b6c3bfa1111b26a5519438a9eca67ff88d7ef04.tar.bz2
libva-intel-driver-7b6c3bfa1111b26a5519438a9eca67ff88d7ef04.zip
Fix one error of VME shader for MPEG2 encoding
Otherwise the MPEG2 encoding will use the incorrect prediction result for the macroblocks in the first row if the MVP is used. Signed-off-by: Zhao Yakui <yakui.zhao@intel.com> (cherry picked from commit 44889dc0f3054cce226d5c09d431022fdffe3aac)
Diffstat (limited to 'src/shaders')
-rw-r--r--src/shaders/vme/mpeg2_inter_haswell.asm2
-rw-r--r--src/shaders/vme/mpeg2_inter_haswell.g75b2
-rw-r--r--src/shaders/vme/mpeg2_inter_ivb.asm2
-rw-r--r--src/shaders/vme/mpeg2_inter_ivb.g7b2
4 files changed, 4 insertions, 4 deletions
diff --git a/src/shaders/vme/mpeg2_inter_haswell.asm b/src/shaders/vme/mpeg2_inter_haswell.asm
index 0e91a04..c224cf0 100644
--- a/src/shaders/vme/mpeg2_inter_haswell.asm
+++ b/src/shaders/vme/mpeg2_inter_haswell.asm
@@ -291,7 +291,7 @@ mb_mvp_start:
add (1) tmp_reg0.0<1>:d mbb_result.0<0,1,0>:d mbc_result.0<0,1,0>:d {align1};
cmp.z.f0.0 (1) null:d tmp_reg0.0<0,1,0>:d 0:d {align1};
(-f0.0) jmpi (1) mb_median_start;
-cmp.nz.f0.0 (1) null:d mba_result.0<0,1,0>:d 1:d {align1};
+cmp.nz.f0.0 (1) null:d mba_result.0<0,1,0>:d 0:d {align1};
(f0.0) mov (1) mbb_result.4<1>:ud mba_result.4<0,1,0>:ud {align1};
(f0.0) mov (1) mbc_result.4<1>:ud mba_result.4<0,1,0>:ud {align1};
(f0.0) mov (1) mbb_result.20<1>:uw mba_result.20<0,1,0>:uw {align1};
diff --git a/src/shaders/vme/mpeg2_inter_haswell.g75b b/src/shaders/vme/mpeg2_inter_haswell.g75b
index d6625e3..25c629d 100644
--- a/src/shaders/vme/mpeg2_inter_haswell.g75b
+++ b/src/shaders/vme/mpeg2_inter_haswell.g75b
@@ -97,7 +97,7 @@
{ 0x00000040, 0x240014a5, 0x00000b00, 0x00000b20 },
{ 0x01000010, 0x20001ca4, 0x00000400, 0x00000000 },
{ 0x00110020, 0x34001c00, 0x00001400, 0x00000080 },
- { 0x02000010, 0x20001ca4, 0x00000ae0, 0x00000001 },
+ { 0x02000010, 0x20001ca4, 0x00000ae0, 0x00000000 },
{ 0x00010001, 0x2b040021, 0x00000ae4, 0x00000000 },
{ 0x00010001, 0x2b240021, 0x00000ae4, 0x00000000 },
{ 0x00010001, 0x2b140129, 0x00000af4, 0x00000000 },
diff --git a/src/shaders/vme/mpeg2_inter_ivb.asm b/src/shaders/vme/mpeg2_inter_ivb.asm
index 261e74c..dde9643 100644
--- a/src/shaders/vme/mpeg2_inter_ivb.asm
+++ b/src/shaders/vme/mpeg2_inter_ivb.asm
@@ -304,7 +304,7 @@ mb_mvp_start:
add (1) tmp_reg0.0<1>:d mbb_result.0<0,1,0>:d mbc_result.0<0,1,0>:d {align1};
cmp.z.f0.0 (1) null:d tmp_reg0.0<0,1,0>:d 0:d {align1};
(-f0.0) jmpi (1) mb_median_start;
-cmp.nz.f0.0 (1) null:d mba_result.0<0,1,0>:d 1:d {align1};
+cmp.nz.f0.0 (1) null:d mba_result.0<0,1,0>:d 0:d {align1};
(f0.0) mov (1) mbb_result.4<1>:ud mba_result.4<0,1,0>:ud {align1};
(f0.0) mov (1) mbc_result.4<1>:ud mba_result.4<0,1,0>:ud {align1};
(f0.0) mov (1) mbb_result.20<1>:uw mba_result.20<0,1,0>:uw {align1};
diff --git a/src/shaders/vme/mpeg2_inter_ivb.g7b b/src/shaders/vme/mpeg2_inter_ivb.g7b
index 2ef3b13..1ffcdd5 100644
--- a/src/shaders/vme/mpeg2_inter_ivb.g7b
+++ b/src/shaders/vme/mpeg2_inter_ivb.g7b
@@ -105,7 +105,7 @@
{ 0x00000040, 0x240014a5, 0x00000b00, 0x00000b20 },
{ 0x01000010, 0x20001ca4, 0x00000400, 0x00000000 },
{ 0x00110020, 0x34001c00, 0x00001400, 0x00000010 },
- { 0x02000010, 0x20001ca4, 0x00000ae0, 0x00000001 },
+ { 0x02000010, 0x20001ca4, 0x00000ae0, 0x00000000 },
{ 0x00010001, 0x2b040021, 0x00000ae4, 0x00000000 },
{ 0x00010001, 0x2b240021, 0x00000ae4, 0x00000000 },
{ 0x00010001, 0x2b140129, 0x00000af4, 0x00000000 },