summaryrefslogtreecommitdiff
path: root/libavcodec/vaapi.h
diff options
context:
space:
mode:
authorGwenole Beauchesne <gbeauchesne@splitted-desktop.com>2009-03-31 08:33:02 +0000
committerGwenole Beauchesne <gbeauchesne@splitted-desktop.com>2009-03-31 08:33:02 +0000
commita3d636aff9d18e66fa3e260f515f6e9dba25bf2f (patch)
tree446296943b297dc0480446b07bff58e83d2f50c1 /libavcodec/vaapi.h
parentccc745cdf488ee0b999ea922c0cf09262f92ed4a (diff)
Improve VA API buffers allocation logic. This also reduces struct vaapi_context
down to ~60 bytes vs. a few KBs before, and gets rid of explicit VA data types. Originally committed as revision 18256 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/vaapi.h')
-rw-r--r--libavcodec/vaapi.h73
1 files changed, 4 insertions, 69 deletions
diff --git a/libavcodec/vaapi.h b/libavcodec/vaapi.h
index 4161a667a5..0c057ceeb2 100644
--- a/libavcodec/vaapi.h
+++ b/libavcodec/vaapi.h
@@ -73,7 +73,7 @@ struct vaapi_context {
* - encoding: unused
* - decoding: Set by libavcodec
*/
- VABufferID pic_param_buf_id;
+ uint32_t pic_param_buf_id;
/**
* VAIQMatrixBuffer ID
@@ -81,7 +81,7 @@ struct vaapi_context {
* - encoding: unused
* - decoding: Set by libavcodec
*/
- VABufferID iq_matrix_buf_id;
+ uint32_t iq_matrix_buf_id;
/**
* VABitPlaneBuffer ID (for VC-1 decoding)
@@ -89,7 +89,7 @@ struct vaapi_context {
* - encoding: unused
* - decoding: Set by libavcodec
*/
- VABufferID bitplane_buf_id;
+ uint32_t bitplane_buf_id;
/**
* Slice parameter/data buffer IDs
@@ -97,7 +97,7 @@ struct vaapi_context {
* - encoding: unused
* - decoding: Set by libavcodec
*/
- VABufferID *slice_buf_ids;
+ uint32_t *slice_buf_ids;
/**
* Number of effective slice buffer IDs to send to the HW
@@ -116,71 +116,6 @@ struct vaapi_context {
unsigned int slice_buf_ids_alloc;
/**
- * Picture parameter buffer
- *
- * - encoding: unused
- * - decoding: Set by libavcodec
- */
- union {
- VAPictureParameterBufferMPEG2 mpeg2;
- VAPictureParameterBufferMPEG4 mpeg4;
- VAPictureParameterBufferH264 h264;
- VAPictureParameterBufferVC1 vc1;
- } pic_param;
-
- /**
- * Size of a VAPictureParameterBuffer element
- *
- * - encoding: unused
- * - decoding: Set by libavcodec
- */
- unsigned int pic_param_size;
-
- /**
- * Inverse quantization matrix buffer
- *
- * - encoding: unused
- * - decoding: Set by libavcodec
- */
- union {
- VAIQMatrixBufferMPEG2 mpeg2;
- VAIQMatrixBufferMPEG4 mpeg4;
- VAIQMatrixBufferH264 h264;
- } iq_matrix;
-
- /**
- * Size of a VAIQMatrixBuffer element
- *
- * - encoding: unused
- * - decoding: Set by libavcodec
- */
- unsigned int iq_matrix_size;
-
- /**
- * Flag: is quantization matrix present?
- *
- * - encoding: unused
- * - decoding: Set by libavcodec
- */
- uint8_t iq_matrix_present;
-
- /**
- * VC-1 bitplane buffer
- *
- * - encoding: unused
- * - decoding: Set by libavcodec
- */
- uint8_t *bitplane_buffer;
-
- /**
- * Size of VC-1 bitplane buffer
- *
- * - encoding: unused
- * - decoding: Set by libavcodec
- */
- unsigned int bitplane_buffer_size;
-
- /**
* Pointer to VASliceParameterBuffers
*
* - encoding: unused