diff options
author | Gwenole Beauchesne <gwenole.beauchesne@intel.com> | 2011-11-24 17:04:10 +0000 |
---|---|---|
committer | Xiang, Haihao <haihao.xiang@intel.com> | 2013-05-28 16:19:09 +0800 |
commit | 564570925568911b36e984904fd702b2ea12d456 (patch) | |
tree | dc5b8a4b1fadc7b1572f3f0d460e379c49b229f0 | |
parent | fbb0ce2477bed73b5d13ea08a325c8aada481298 (diff) |
API: h264 encode: add more explicit packed header types for H.264.
-rw-r--r-- | va/va_enc_h264.h | 37 |
1 files changed, 36 insertions, 1 deletions
diff --git a/va/va_enc_h264.h b/va/va_enc_h264.h index 540dfdd..974e7dc 100644 --- a/va/va_enc_h264.h +++ b/va/va_enc_h264.h @@ -71,9 +71,44 @@ extern "C" { * associated packed header data buffer shall contain the start code * prefix 0x000001 followed by the complete NAL unit, thus also * including the \c nal_unit_type. + * + * Note: the start code prefix can contain an arbitrary number of leading + * zeros. The driver will skip them for emulation prevention bytes insertion, + * if necessary. */ typedef enum { /** + * \brief Packed Sequence Parameter Set (SPS). + * + * The corresponding packed header data buffer shall contain the + * complete seq_parameter_set_rbsp() syntax element. + * + * Note: packed \c nal_unit_type shall be equal to 7. + */ + VAEncPackedHeaderH264_SPS = VAEncPackedHeaderSequence, + /** + * \brief Packed Picture Parameter Set (PPS). + * + * The corresponding packed header data buffer shall contain the + * complete pic_parameter_set_rbsp() syntax element. + * + * Note: packed \c nal_unit_type shall be equal to 8. + */ + VAEncPackedHeaderH264_PPS = VAEncPackedHeaderPicture, + /** + * \brief Packed slice header. + * + * The corresponding packed header data buffer shall contain the + * \c slice_header() syntax element only, along with any start + * code prefix and NAL unit type preceeding it. i.e. this means + * that the buffer does not contain any of the \c slice_data() or + * the \c rbsp_slice_trailing_bits(). + * + * Note: packed \c nal_unit_type shall be equal to 1 (non-IDR + * picture), or 5 (IDR picture). + */ + VAEncPackedHeaderH264_Slice = VAEncPackedHeaderSlice, + /** * \brief Packed Supplemental Enhancement Information (SEI). * * The corresponding packed header data buffer shall contain the @@ -82,7 +117,7 @@ typedef enum { * * Note: packed \c nal_unit_type shall be equal to 6. */ - VAEncPackedHeaderH264_SEI = (VAEncPackedHeaderMiscMask | 1), + VAEncPackedHeaderH264_SEI = (VAEncPackedHeaderMiscMask | 1), } VAEncPackedHeaderTypeH264; /** |