diff options
author | Paul Kocialkowski <paul.kocialkowski@bootlin.com> | 2018-07-11 15:16:52 +0200 |
---|---|---|
committer | Paul Kocialkowski <paul.kocialkowski@bootlin.com> | 2018-07-11 15:16:52 +0200 |
commit | 9f2c069f76260c344839f4522fa6c0887055ae53 (patch) | |
tree | 0c908d4a3df09d7d3eb8f05c2e5bede9cd52095b /src/surface.h | |
parent | 2ca67372f8087d27891057903f28595a2145e9fc (diff) | |
download | libva-v4l2-request-9f2c069f76260c344839f4522fa6c0887055ae53.tar.gz libva-v4l2-request-9f2c069f76260c344839f4522fa6c0887055ae53.tar.bz2 libva-v4l2-request-9f2c069f76260c344839f4522fa6c0887055ae53.zip |
Rework buffer management to be more generic and support untiled format
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
Diffstat (limited to 'src/surface.h')
-rw-r--r-- | src/surface.h | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/surface.h b/src/surface.h index 1bbd868..b749c58 100644 --- a/src/surface.h +++ b/src/surface.h @@ -26,6 +26,8 @@ #ifndef _SURFACE_H_ #define _SURFACE_H_ +#include <linux/videodev2.h> + #include <va/va_backend.h> #include "object_heap.h" @@ -45,10 +47,17 @@ struct object_surface { unsigned int source_size; unsigned int destination_index; - void *destination_data[2]; - unsigned int destination_size[2]; + void *destination_map[VIDEO_MAX_PLANES]; + unsigned int destination_map_lengths[VIDEO_MAX_PLANES]; + unsigned int destination_map_offsets[VIDEO_MAX_PLANES]; + void *destination_data[VIDEO_MAX_PLANES]; + unsigned int destination_sizes[VIDEO_MAX_PLANES]; + unsigned int destination_offsets[VIDEO_MAX_PLANES]; + unsigned int destination_bytesperlines[VIDEO_MAX_PLANES]; + unsigned int destination_planes_count; + unsigned int destination_buffers_count; - struct v4l2_ctrl_mpeg2_slice_header mpeg2_header; + struct v4l2_ctrl_mpeg2_slice_params mpeg2_slice_params; unsigned int slices_size; int request_fd; |