[Libva] [libva][PATCH v3 3/6] vpp: add support for Motion-Compensated deinterlacing on Ivybridge.
Xiang, Haihao
haihao.xiang at intel.com
Thu May 7 18:04:21 PDT 2015
From: Gwenole Beauchesne <gb.devel at gmail.com>
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne at intel.com>
---
src/i965_device_info.c | 1 +
src/i965_post_processing.c | 4 +++-
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/i965_device_info.c b/src/i965_device_info.c
index 9227d0b..13e3daa 100644
--- a/src/i965_device_info.c
+++ b/src/i965_device_info.c
@@ -162,6 +162,7 @@ static struct hw_codec_info ivb_hw_codec_info = {
.has_accelerated_putimage = 1,
.has_tiled_surface = 1,
.has_di_motion_adptive = 1,
+ .has_di_motion_compensated = 1,
.num_filters = 2,
.filters = {
diff --git a/src/i965_post_processing.c b/src/i965_post_processing.c
index fc67a24..fdc9ff2 100755
--- a/src/i965_post_processing.c
+++ b/src/i965_post_processing.c
@@ -1210,6 +1210,7 @@ pp_dndi_context_init_surface_params(struct pp_dndi_context *dndi_ctx,
dndi_ctx->is_first_frame = 1;
break;
case VAProcDeinterlacingMotionAdaptive:
+ case VAProcDeinterlacingMotionCompensated:
fs = &dndi_ctx->frame_store[DNDI_FRAME_IN_CURRENT];
if (fs->surface_id == VA_INVALID_ID)
dndi_ctx->is_first_frame = 1;
@@ -3884,7 +3885,8 @@ gen7_pp_nv12_dndi_initialize(VADriverContextP ctx, struct i965_post_processing_c
sampler_dndi[index].dw6.dndi_stream_id = 1;
sampler_dndi[index].dw6.dndi_first_frame = dndi_ctx->is_first_frame;
sampler_dndi[index].dw6.progressive_dn = 0;
- sampler_dndi[index].dw6.mcdi_enable = 0;
+ sampler_dndi[index].dw6.mcdi_enable =
+ (deint_params->algorithm == VAProcDeinterlacingMotionCompensated);
sampler_dndi[index].dw6.fmd_tear_threshold = 2;
sampler_dndi[index].dw6.cat_th1 = 0;
sampler_dndi[index].dw6.fmd2_vertical_difference_threshold = 100;
--
1.7.9.5
More information about the Libva
mailing list