summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Zhang <carl.zhang@intel.com>2019-07-10 07:26:36 -0400
committerXinfengZhang <carl.zhang@intel.com>2019-09-06 14:14:49 +0800
commit77c7bbb45c009721bc953506c1e4c8a339824b61 (patch)
tree5a852e0c5b1d53b54c34d77b63bc87b1d04b972e
parent8fd400cec8828f72cb053b887f6f833e368756d0 (diff)
downloadlibva-77c7bbb45c009721bc953506c1e4c8a339824b61.tar.gz
add multiple frame capability report
Signed-off-by: Carl Zhang <carl.zhang@intel.com>
-rwxr-xr-xva/va.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/va/va.h b/va/va.h
index 63d4bb7..7a8ca85 100755
--- a/va/va.h
+++ b/va/va.h
@@ -773,6 +773,10 @@ typedef enum
* previous frame (PoC < current).
*/
VAConfigAttribPredictionDirection = 39,
+ /** \brief combined submission of multiple frames from different streams, it is optimization for different HW
+ * implementation, multiple frames encode/decode can improve HW concurrency
+ */
+ VAConfigAttribMultipleFrame = 40,
/**@}*/
VAConfigAttribTypeMax
} VAConfigAttribType;
@@ -1111,6 +1115,21 @@ typedef union _VAConfigAttribValEncRateControlExt {
uint32_t value;
} VAConfigAttribValEncRateControlExt;
+/** \brief Attribute value for VAConfigAttribMultipleFrame*/
+typedef union _VAConfigAttribValMultipleFrame {
+ struct {
+ /** \brief max num of concurrent frames from different stream */
+ uint32_t max_num_concurrent_frames : 8;
+ /** \brief indicate whether all stream must support same quality level
+ * if mixed_quality_level == 0, same quality level setting for multple streams is required
+ * if mixed_quality_level == 1, different stream can have different quality level*/
+ uint32_t mixed_quality_level : 1;
+ /** \brief reserved bit for future, must be zero */
+ uint32_t reserved : 23;
+ } bits;
+ uint32_t value;
+}VAConfigAttribValMultipleFrame;
+
/** @name Attribute values for VAConfigAttribProcessingRate. */
/**@{*/
/** \brief Driver does not support processing rate report */