Hello,

Could we have this patch to be in staging branch? Carl and Ping can supply 
detail information upon request.

BR
Oliver

From bafae1f7a006a20ed460712952426f95f3192fd0 Mon Sep 17 00:00:00 2001
From: xsang <[email protected]>
Date: Thu, 5 Feb 2015 12:11:12 +0800
Subject: [PATCH] Add Sequence Display Extension support for MPEG2 encoding

Add new buffer type VAEncMiscParameterTypeExtenstion for MPEG2 Sequence
Extenstion, and add Sequence display extension data structure used for
VAEncMiscParameterTypeExtensionData buffer type.
Sequence extension will follow sequence header in the bitstream.
---
 va/va.h           |  2 ++
 va/va_enc_mpeg2.h | 21 +++++++++++++++++++++
 2 files changed, 23 insertions(+)

diff --git a/va/va.h b/va/va.h
index 5796579..beb99a4 100644
--- a/va/va.h
+++ b/va/va.h
@@ -1547,6 +1547,8 @@ typedef enum
     VAEncMiscParameterTypeDirtyROI      = 13,
     /** \brief Buffer type used for parallel BRC parameters. */
     VAEncMiscParameterTypeParallelBRC   = 14,
+    /** \brief Buffer type used for extension data parameters. */
+    VAEncMiscParameterTypeExtensionData = 15,

     /* Intel specific types start at 1001 */
     /* VAEntrypointEncFEIIntel */
diff --git a/va/va_enc_mpeg2.h b/va/va_enc_mpeg2.h
index cee974b..ae6c930 100644
--- a/va/va_enc_mpeg2.h
+++ b/va/va_enc_mpeg2.h
@@ -282,6 +282,27 @@ typedef struct _VAEncSliceParameterBufferMPEG2 {
     int is_intra_slice;
 } VAEncSliceParameterBufferMPEG2;

+/** 
+ * \brief Sequence display extension data structure used for
+ * VAEncMiscParameterTypeExtensionData buffer type.
+ *
+ * The element definition in this structure has 1 : 1 correspondence
+ * with the same element defined in sequence_display_extension()
+ * from mpeg2 spec.
+ *
+ */
+typedef struct _VAEncMiscParameterExtensionDataSeqDisplayMPEG2
+{
+    unsigned char extension_start_code_identifier;
+    unsigned char video_format;
+    unsigned char colour_description;
+    unsigned char colour_primaries;
+    unsigned char transfer_characteristics;
+    unsigned char matrix_coefficients;
+    unsigned short display_horizontal_size;
+    unsigned short display_vertical_size;
+} VAEncMiscParameterExtensionDataSeqDisplayMPEG2;
+
 /**@}*/

 #ifdef __cplusplus
_______________________________________________
Libva mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/libva

Reply via email to