hardware/intel/libva
Revision | ddb1a3247bab99832366429888522a314526e98c (tree) |
---|---|
Time | 2009-07-08 18:42:05 |
Author | Gwenole Beauchesne <gbeauchesne@spli...> |
Commiter | Austin Yuan |
Add VASliceParameterBufferBase.
Signed-off-by: Austin Yuan <shengquan.yuan@intel.com>
@@ -466,6 +466,27 @@ typedef enum | ||
466 | 466 | } VABufferType; |
467 | 467 | |
468 | 468 | |
469 | +/* | |
470 | + * There will be cases where the bitstream buffer will not have enough room to hold | |
471 | + * the data for the entire slice, and the following flags will be used in the slice | |
472 | + * parameter to signal to the server for the possible cases. | |
473 | + * If a slice parameter buffer and slice data buffer pair is sent to the server with | |
474 | + * the slice data partially in the slice data buffer (BEGIN and MIDDLE cases below), | |
475 | + * then a slice parameter and data buffer needs to be sent again to complete this slice. | |
476 | + */ | |
477 | +#define VA_SLICE_DATA_FLAG_ALL 0x00 /* whole slice is in the buffer */ | |
478 | +#define VA_SLICE_DATA_FLAG_BEGIN 0x01 /* The beginning of the slice is in the buffer but the end if not */ | |
479 | +#define VA_SLICE_DATA_FLAG_MIDDLE 0x02 /* Neither beginning nor end of the slice is in the buffer */ | |
480 | +#define VA_SLICE_DATA_FLAG_END 0x04 /* end of the slice is in the buffer */ | |
481 | + | |
482 | +/* Codec-independent Slice Parameter Buffer base */ | |
483 | +typedef struct _VASliceParameterBufferBase | |
484 | +{ | |
485 | + unsigned int slice_data_size; /* number of bytes in the slice data buffer for this slice */ | |
486 | + unsigned int slice_data_offset; /* the offset to the first byte of slice data */ | |
487 | + unsigned int slice_data_flag; /* see VA_SLICE_DATA_FLAG_XXX definitions */ | |
488 | +} VASliceParameterBufferBase; | |
489 | + | |
469 | 490 | /**************************** |
470 | 491 | * MPEG-2 data structures |
471 | 492 | ****************************/ |
@@ -517,19 +538,6 @@ typedef struct _VAIQMatrixBufferMPEG2 | ||
517 | 538 | unsigned char chroma_non_intra_quantiser_matrix[64]; |
518 | 539 | } VAIQMatrixBufferMPEG2; |
519 | 540 | |
520 | -/* | |
521 | - * There will be cases where the bitstream buffer will not have enough room to hold | |
522 | - * the data for the entire slice, and the following flags will be used in the slice | |
523 | - * parameter to signal to the server for the possible cases. | |
524 | - * If a slice parameter buffer and slice data buffer pair is sent to the server with | |
525 | - * the slice data partially in the slice data buffer (BEGIN and MIDDLE cases below), | |
526 | - * then a slice parameter and data buffer needs to be sent again to complete this slice. | |
527 | - */ | |
528 | -#define VA_SLICE_DATA_FLAG_ALL 0x00 /* whole slice is in the buffer */ | |
529 | -#define VA_SLICE_DATA_FLAG_BEGIN 0x01 /* The beginning of the slice is in the buffer but the end if not */ | |
530 | -#define VA_SLICE_DATA_FLAG_MIDDLE 0x02 /* Neither beginning nor end of the slice is in the buffer */ | |
531 | -#define VA_SLICE_DATA_FLAG_END 0x04 /* end of the slice is in the buffer */ | |
532 | - | |
533 | 541 | /* MPEG-2 Slice Parameter Buffer */ |
534 | 542 | typedef struct _VASliceParameterBufferMPEG2 |
535 | 543 | { |