summaryrefslogtreecommitdiff
path: root/va/va.h
diff options
context:
space:
mode:
Diffstat (limited to 'va/va.h')
-rw-r--r--va/va.h47
1 files changed, 27 insertions, 20 deletions
diff --git a/va/va.h b/va/va.h
index 01694a9..78567ba 100644
--- a/va/va.h
+++ b/va/va.h
@@ -390,6 +390,14 @@ typedef enum
*/
VAConfigAttribEncMacroblockInfo = 16,
/**
+ * \brief JPEG encoding attribute. Read-only.
+ *
+ * This attribute exposes a number of capabilities of the underlying
+ * JPEG implementation. The attribute value is partitioned into fields as defined in the
+ * VAConfigAttribValEncJPEG union.
+ */
+ VAConfigAttribEncJPEG = 20,
+ /**
* \brief Encoding quality range attribute. Read-only.
*
* This attribute conveys whether the driver supports different quality level settings
@@ -481,6 +489,25 @@ typedef struct _VAConfigAttrib {
#define VA_ENC_SLICE_STRUCTURE_ARBITRARY_MACROBLOCKS 0x00000002
/**@}*/
+/** \brief Attribute value for VAConfigAttribEncJPEG */
+typedef union _VAConfigAttribValEncJPEG {
+ struct {
+ /** \brief set to 1 for arithmatic coding. */
+ unsigned int arithmatic_coding_mode : 1;
+ /** \brief set to 1 for progressive dct. */
+ unsigned int progressive_dct_mode : 1;
+ /** \brief set to 1 for non-interleaved. */
+ unsigned int non_interleaved_mode : 1;
+ /** \brief set to 1 for differential. */
+ unsigned int differential_mode : 1;
+ unsigned int max_num_components : 3;
+ unsigned int max_num_scans : 4;
+ unsigned int max_num_huffman_tables : 3;
+ unsigned int max_num_quantization_tables : 3;
+ } bits;
+ unsigned int value;
+} VAConfigAttribValEncJPEG;
+
/**
* if an attribute is not applicable for a given
* profile/entrypoint pair, then set the value to the following
@@ -1122,26 +1149,6 @@ typedef struct _VASliceParameterBufferBase
unsigned int slice_data_flag; /* see VA_SLICE_DATA_FLAG_XXX definitions */
} VASliceParameterBufferBase;
-
-/****************************
- * JEPG data structure
- ***************************/
-typedef struct _VAQMatrixBufferJPEG
-{
- int load_lum_quantiser_matrix;
- int load_chroma_quantiser_matrix;
- unsigned char lum_quantiser_matrix[64];
- unsigned char chroma_quantiser_matrix[64];
-} VAQMatrixBufferJPEG;
-
-typedef struct _VAEncPictureParameterBufferJPEG
-{
- VASurfaceID reconstructed_picture;
- unsigned short picture_width;
- unsigned short picture_height;
- VABufferID coded_buf;
-} VAEncPictureParameterBufferJPEG;
-
#include <va/va_dec_jpeg.h>
/****************************