diff options
author | Christian König <[email protected]> | 2011-12-23 16:14:31 +0100 |
---|---|---|
committer | Christian König <[email protected]> | 2012-01-09 12:21:22 +0100 |
commit | 8c2bfa34a0d70ab08de44e3b091b3a097abbad97 (patch) | |
tree | bb5d09aa8b41d759dff310bbd230c32db797d2dc /src/gallium/include | |
parent | 37240d2132d25588ad05ae5394c237f45d8ad881 (diff) |
vl: replace decode_buffers with auxiliary data field
Based on patches from Maarten Lankhorst <[email protected]>
Signed-off-by: Christian König <[email protected]>
Acked-by: Maarten Lankhorst <[email protected]>
Diffstat (limited to 'src/gallium/include')
-rw-r--r-- | src/gallium/include/pipe/p_context.h | 3 | ||||
-rw-r--r-- | src/gallium/include/pipe/p_video_decoder.h | 30 | ||||
-rw-r--r-- | src/gallium/include/pipe/p_video_enums.h | 3 |
3 files changed, 18 insertions, 18 deletions
diff --git a/src/gallium/include/pipe/p_context.h b/src/gallium/include/pipe/p_context.h index de79a9bfff1..f7ee52298a8 100644 --- a/src/gallium/include/pipe/p_context.h +++ b/src/gallium/include/pipe/p_context.h @@ -410,7 +410,8 @@ struct pipe_context { enum pipe_video_profile profile, enum pipe_video_entrypoint entrypoint, enum pipe_video_chroma_format chroma_format, - unsigned width, unsigned height, unsigned max_references ); + unsigned width, unsigned height, unsigned max_references, + bool expect_chunked_decode); /** * Creates a video buffer as decoding target diff --git a/src/gallium/include/pipe/p_video_decoder.h b/src/gallium/include/pipe/p_video_decoder.h index aa535898f2d..69e59a6fa4b 100644 --- a/src/gallium/include/pipe/p_video_decoder.h +++ b/src/gallium/include/pipe/p_video_decoder.h @@ -60,21 +60,6 @@ struct pipe_video_decoder void (*destroy)(struct pipe_video_decoder *decoder); /** - * Creates a decoder buffer - */ - void *(*create_buffer)(struct pipe_video_decoder *decoder); - - /** - * Destroys a decoder buffer - */ - void (*destroy_buffer)(struct pipe_video_decoder *decoder, void *buffer); - - /** - * set the current decoder buffer - */ - void (*set_decode_buffer)(struct pipe_video_decoder *decoder, void *buffer); - - /** * set the picture parameters for the next frame * only used for bitstream decoding */ @@ -163,6 +148,21 @@ struct pipe_video_buffer * get a individual surfaces for each plane */ struct pipe_surface **(*get_surfaces)(struct pipe_video_buffer *buffer); + + /* + * auxiliary associated data + */ + void *associated_data; + + /* + * decoder where the associated data came from + */ + struct pipe_video_decoder *decoder; + + /* + * destroy the associated data + */ + void (*destroy_associated_data)(void *associated_data); }; #ifdef __cplusplus diff --git a/src/gallium/include/pipe/p_video_enums.h b/src/gallium/include/pipe/p_video_enums.h index ea25a25883d..13786067d53 100644 --- a/src/gallium/include/pipe/p_video_enums.h +++ b/src/gallium/include/pipe/p_video_enums.h @@ -50,8 +50,7 @@ enum pipe_video_cap PIPE_VIDEO_CAP_SUPPORTED = 0, PIPE_VIDEO_CAP_NPOT_TEXTURES = 1, PIPE_VIDEO_CAP_MAX_WIDTH = 2, - PIPE_VIDEO_CAP_MAX_HEIGHT = 3, - PIPE_VIDEO_CAP_NUM_BUFFERS_DESIRED = 4 + PIPE_VIDEO_CAP_MAX_HEIGHT = 3 }; enum pipe_video_codec |