From: Xiang, Haihao Date: Fri, 15 Jul 2011 08:34:47 +0000 (+0800) Subject: i965_drv_video: handle VPP buffers X-Git-Tag: 1.0_branch~228 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f64455926683269f49577df456c307ce85fe5038;p=profile%2Fivi%2Fvaapi-intel-driver.git i965_drv_video: handle VPP buffers Signed-off-by: Xiang, Haihao --- diff --git a/src/i965_drv_video.c b/src/i965_drv_video.c index 2557dd5..3f14015 100644 --- a/src/i965_drv_video.c +++ b/src/i965_drv_video.c @@ -1014,6 +1014,11 @@ i965_create_buffer_internal(VADriverContextP ctx, case VAEncPackedSequenceParameterBufferType: case VAEncPackedPictureParameterBufferType: case VAEncPackedSliceParameterBufferType: + case VAProcPipelineParameterBufferType: + case VAProcInputParameterBufferType: + case VAProcFilterBaseParameterBufferType: + case VAProcFilterDeinterlacingParameterBufferType: + case VAProcFilterProcAmpParameterBufferType: /* Ok */ break; @@ -1269,6 +1274,10 @@ i965_BeginPicture(VADriverContextP ctx, vaStatus = VA_STATUS_SUCCESS; break; + case VAProfileNone: + vaStatus = VA_STATUS_SUCCESS; + break; + default: assert(0); vaStatus = VA_STATUS_ERROR_UNSUPPORTED_PROFILE; diff --git a/src/i965_post_processing.c b/src/i965_post_processing.c index cb10040..b2e7435 100644 --- a/src/i965_post_processing.c +++ b/src/i965_post_processing.c @@ -2397,14 +2397,18 @@ i965_proc_picture(VADriverContextP ctx, union codec_state *codec_state, struct hw_context *hw_context) { + struct i965_driver_data *i965 = i965_driver_data(ctx); struct i965_proc_context *proc_context = (struct i965_proc_context *)hw_context; struct proc_state *proc_state = &codec_state->proc; VAProcPipelineParameterBuffer *pipeline_param = (VAProcPipelineParameterBuffer *)proc_state->pipeline_param->buffer; VAProcInputParameterBuffer *input_param = (VAProcInputParameterBuffer *)proc_state->input_param->buffer; + struct object_surface *obj_surface; assert(input_param->surface != VA_INVALID_ID); assert(proc_state->current_render_target != VA_INVALID_ID); + obj_surface = SURFACE(proc_state->current_render_target); + i965_check_alloc_surface_bo(ctx, obj_surface, 0, VA_FOURCC('N','V','1','2')); i965_post_processing_internal(ctx, &proc_context->pp_context, input_param->surface, proc_state->current_render_target, &input_param->region, &pipeline_param->output_region,