diff options
author | Yuanjun Huang <yuanjun.huang@intel.com> | 2015-01-27 08:32:49 +0800 |
---|---|---|
committer | Patrick Tjin <pattjin@google.com> | 2015-02-09 09:43:43 -0800 |
commit | a9def98ead34169ef97a54fc70b2213e16c6f362 (patch) | |
tree | d60a7cebe4f0a7f21ac92c54805e798896689f31 | |
parent | 58ab4ceb5ea3d2733f108cacfcccb93e0c8d84da (diff) | |
download | psb_headers-a9def98ead34169ef97a54fc70b2213e16c6f362.tar.gz |
psb_headers: add mpeg2 related data structure
Add mpeg2 related data structure.
Change-Id: I7217959f2550fdb0d1b2845ef46b001e15bdd00b
Signed-off-by: Yuanjun Huang <yuanjun.huang@intel.com>
-rw-r--r-- | libmediaparser/mixvbp/vbp_manager/include/vbp_loader.h | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/libmediaparser/mixvbp/vbp_manager/include/vbp_loader.h b/libmediaparser/mixvbp/vbp_manager/include/vbp_loader.h index b66faea..7866b12 100644 --- a/libmediaparser/mixvbp/vbp_manager/include/vbp_loader.h +++ b/libmediaparser/mixvbp/vbp_manager/include/vbp_loader.h @@ -112,6 +112,73 @@ typedef struct _vbp_data_mp42 } vbp_data_mp42; /* + * * MPEG2 data structure + * */ + +typedef struct _vbp_codec_data_mpeg2 +{ + uint8 profile_and_level_indication; + + // picture_coding_type + uint8 frame_type; + + // picture_structure + uint8 interlaced; + + // horizontal_size is a 14-bit unsigned integer + uint32 frame_width; + // vertical_size is a 14-bit unsigned integer + uint32 frame_height; + + // a 3-bit integer, 0 for unspecified, PAL/NTSC/SECAM + uint8 video_format; + // 0 short range, 1 full range + uint8 video_range; + + // a 4-bit integer + uint8 aspect_ratio; + uint32 par_width; + uint32 par_height; + + // a 8-bit integer + uint8 matrix_coefficients; + uint8 load_intra_quantiser_matrix; + uint8 load_non_intra_quantiser_matrix; + + // a 30-bit integer + int bit_rate; + + // a 4-bit integer + int frame_rate; +} vbp_codec_data_mpeg2; + +typedef struct _vbp_slice_data_mpeg2 +{ + uint8* buffer_addr; + uint32 slice_offset; + uint32 slice_size; + VASliceParameterBufferMPEG2 slice_param; +} vbp_slice_data_mpeg2; + +typedef struct _vbp_picture_data_mpeg2 +{ + VAPictureParameterBufferMPEG2* pic_parms; + vbp_slice_data_mpeg2* slice_data; + uint32 num_slices; +} vbp_picture_data_mpeg2; + +typedef struct _vbp_data_mpeg2 +{ + /* rolling counter of buffers sent by vbp_parse */ + uint32 buf_number; + vbp_codec_data_mpeg2* codec_data; + VAIQMatrixBufferMPEG2* iq_matrix_buffer; + + uint32 num_pictures; + vbp_picture_data_mpeg2 *pic_data; +} vbp_data_mpeg2; + +/* * H.264 data structure */ |