[Libva] [PATCH] VPP: Set the alpha channel when doing the conversion from NV12 to RGBA on Ivy/Haswell/BDW

Zhao Yakui yakui.zhao at intel.com
Mon Apr 21 20:05:18 PDT 2014


Currently zero is written to alpha channel when doing the conversion
from NV12 to RGBA(BGRA), which affects the following the rendering operation.

Signed-off-by: Zhao Yakui <yakui.zhao at intel.com>
---
 src/gen8_post_processing.c |    1 +
 src/i965_post_processing.c |    1 +
 src/i965_post_processing.h |    2 +-
 3 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/gen8_post_processing.c b/src/gen8_post_processing.c
index de69ab5..ca6d67f 100644
--- a/src/gen8_post_processing.c
+++ b/src/gen8_post_processing.c
@@ -999,6 +999,7 @@ gen8_pp_plx_avs_initialize(VADriverContextP ctx, struct i965_post_processing_con
     pp_static_parameter->grf2.avs_wa_width = src_width;
     pp_static_parameter->grf2.avs_wa_one_div_256_width = (float) 1.0 / (256 * src_width);
     pp_static_parameter->grf2.avs_wa_five_div_256_width = (float) 5.0 / (256 * src_width);
+    pp_static_parameter->grf2.alpha = 255;
 
     pp_static_parameter->grf3.sampler_load_horizontal_scaling_step_ratio = (float) pp_avs_context->src_w / dw;
     pp_static_parameter->grf4.sampler_load_vertical_scaling_step = (float) src_rect->height / src_height / dst_rect->height;
diff --git a/src/i965_post_processing.c b/src/i965_post_processing.c
index 2eafa7e..3d9cff3 100755
--- a/src/i965_post_processing.c
+++ b/src/i965_post_processing.c
@@ -3015,6 +3015,7 @@ gen7_pp_plx_avs_initialize(VADriverContextP ctx, struct i965_post_processing_con
     pp_static_parameter->grf2.avs_wa_width = dw;
     pp_static_parameter->grf2.avs_wa_one_div_256_width = (float) 1.0 / (256 * dw);
     pp_static_parameter->grf2.avs_wa_five_div_256_width = (float) 5.0 / (256 * dw);
+    pp_static_parameter->grf2.alpha = 255;
 
     pp_static_parameter->grf3.sampler_load_horizontal_scaling_step_ratio = (float) pp_avs_context->src_w / dw;
     pp_static_parameter->grf4.sampler_load_vertical_scaling_step = (float) src_rect->height / src_height / dst_rect->height;
diff --git a/src/i965_post_processing.h b/src/i965_post_processing.h
index 0ed4fcb..c46c568 100755
--- a/src/i965_post_processing.h
+++ b/src/i965_post_processing.h
@@ -393,7 +393,7 @@ struct gen7_pp_static_parameter
         unsigned int di_destination_packed_y_component_offset:8;
         unsigned int di_destination_packed_u_component_offset:8;
         unsigned int di_destination_packed_v_component_offset:8;
-        unsigned int pad0:8;
+        unsigned int alpha:8;
     } grf2;
 
     struct {
-- 
1.7.10.1



More information about the Libva mailing list