st/va: add h264 decoder level support
authorLeo Liu <leo.liu@amd.com>
Thu, 12 Mar 2015 18:29:21 +0000 (14:29 -0400)
committerMarek Olšák <marek.olsak@amd.com>
Tue, 28 Apr 2015 15:42:52 +0000 (17:42 +0200)
Signed-off-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
src/gallium/state_trackers/va/context.c

index a7a55f961398ca5002d49c8a5c9de9649e66ee14..0a733b39004247b44fd4c65476c80e8319dfec46 100644 (file)
@@ -167,6 +167,11 @@ vlVaCreateContext(VADriverContextP ctx, VAConfigID config_id, int picture_width,
    templat.max_references = num_render_targets;
    templat.expect_chunked_decode = true;
 
+   if (u_reduce_video_profile(templat.profile) ==
+       PIPE_VIDEO_FORMAT_MPEG4_AVC)
+      templat.level = u_get_h264_level(templat.width, templat.height,
+                            &templat.max_references);
+
    context->decoder = drv->pipe->create_video_codec(drv->pipe, &templat);
    if (!context->decoder) {
       FREE(context);