• R/O
  • HTTP
  • SSH
  • HTTPS

Commit

Tags
No Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

hardware/intel/common/libva


Commit MetaInfo

Revisão075566a6e1e672e8ff88c54c08503539cb8bd360 (tree)
Hora2017-11-22 16:27:31
Autorpylee <penne.y.lee@inte...>
CommiterXiang, Haihao

Mensagem de Log

add VAConfigAttribDecJPEG attributes

VAConfigAttribDecJPEG is for JPEG decode capabilities such as rotation

Signed-off-by: Carl.Zhang <carl.zhang@intel.com>

Mudança Sumário

Diff

--- a/va/va.h
+++ b/va/va.h
@@ -427,7 +427,14 @@ typedef enum
427427 * See \c VA_DEC_SLICE_MODE_xxx for the list of slice decoding modes.
428428 */
429429 VAConfigAttribDecSliceMode = 6,
430-
430+ /**
431+ * \brief JPEG decoding attribute. Read-only.
432+ *
433+ * This attribute exposes a number of capabilities of the underlying
434+ * JPEG implementation. The attribute value is partitioned into fields as defined in the
435+ * VAConfigAttribValDecJPEG union.
436+ */
437+ VAConfigAttribDecJPEG = 7,
431438 /** @name Attributes for encoding */
432439 /**@{*/
433440 /**
@@ -615,6 +622,19 @@ typedef struct _VAConfigAttrib {
615622 #define VA_DEC_SLICE_MODE_NORMAL 0x00000001
616623 /** \brief Driver supports base mode for slice decoding */
617624 #define VA_DEC_SLICE_MODE_BASE 0x00000002
625+
626+/** @name Attribute values for VAConfigAttribDecJPEG */
627+/**@{*/
628+typedef union _VAConfigAttribValDecJPEG {
629+ struct{
630+ /** \brief Set to (1 << VA_ROTATION_xxx) for supported rotation angles. */
631+ uint32_t rotation : 4;
632+ /** \brief Reserved for future use. */
633+ uint32_t reserved : 28;
634+ }bits;
635+ uint32_t value;
636+ uint32_t va_reserved[VA_PADDING_LOW];
637+} VAConfigAttribValDecJPEG;
618638 /**@}*/
619639
620640 /** @name Attribute values for VAConfigAttribEncPackedHeaders */
--- a/va/va_dec_jpeg.h
+++ b/va/va_dec_jpeg.h
@@ -71,8 +71,12 @@ typedef struct _VAPictureParameterBufferJPEGBaseline {
7171 /** \brief Number of components in frame (Nf). */
7272 uint8_t num_components;
7373
74+ /** \brief Input color space 0: YUV, 1: RGB, 2: BGR, others: reserved */
75+ uint8_t color_space;
76+ /** \brief Set to VA_ROTATION_* for a single rotation angle reported by VAConfigAttribDecJPEG. */
77+ uint32_t rotation;
7478 /** \brief Reserved bytes for future use, must be zero */
75- uint32_t va_reserved[VA_PADDING_MEDIUM];
79+ uint32_t va_reserved[VA_PADDING_MEDIUM - 1];
7680 } VAPictureParameterBufferJPEGBaseline;
7781
7882 /**
--- a/va/va_str.c
+++ b/va/va_str.c
@@ -98,6 +98,7 @@ const char *vaConfigAttribTypeStr(VAConfigAttribType configAttribType)
9898 TOSTR(VAConfigAttribEncRateControlExt);
9999 TOSTR(VAConfigAttribFEIFunctionType);
100100 TOSTR(VAConfigAttribFEIMVPredictors);
101+ TOSTR(VAConfigAttribDecJPEG);
101102 case VAConfigAttribTypeMax: break;
102103 }
103104 return "<unknown config attribute type>";