[Libva] [PATCH libva-intel-driver master 2/2] Return error when trying to decoding an interlaced VC-1 video

Xiang, Haihao haihao.xiang at intel.com
Sun May 4 22:00:22 PDT 2014


From: "Xiang, Haihao" <haihao.xiang at intel.com>

https://bugs.freedesktop.org/show_bug.cgi?id=77386

Signed-off-by: Xiang, Haihao <haihao.xiang at intel.com>
---
 src/i965_decoder_utils.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/i965_decoder_utils.c b/src/i965_decoder_utils.c
index 2533381..617bc15 100644
--- a/src/i965_decoder_utils.c
+++ b/src/i965_decoder_utils.c
@@ -654,7 +654,12 @@ intel_decoder_check_vc1_parameter(VADriverContextP ctx,
     VAPictureParameterBufferVC1 *pic_param = (VAPictureParameterBufferVC1 *)decode_state->pic_param->buffer;
     struct object_surface *obj_surface;	
     int i = 0;
-    
+
+    if (pic_param->sequence_fields.bits.interlace == 1 &&
+        pic_param->picture_fields.bits.frame_coding_mode != 0) { /* frame-interlace or field-interlace */
+        return VA_STATUS_ERROR_DECODING_ERROR;
+    }
+
     if (pic_param->picture_fields.bits.picture_type == 0 ||
         pic_param->picture_fields.bits.picture_type == 3) {
     } else if (pic_param->picture_fields.bits.picture_type == 1 ||
-- 
1.8.3.2



More information about the Libva mailing list