diff --git a/libavcodec/h264.c b/libavcodec/h264.c index 29493a3472..b64a527677 100644 --- a/libavcodec/h264.c +++ b/libavcodec/h264.c @@ -6925,6 +6925,7 @@ static inline int decode_hrd_parameters(H264Context *h, SPS *sps){ sps->cpb_removal_delay_length = get_bits(&s->gb, 5) + 1; sps->dpb_output_delay_length = get_bits(&s->gb, 5) + 1; sps->time_offset_length = get_bits(&s->gb, 5); + sps->cpb_cnt = cpb_count; return 0; } diff --git a/libavcodec/h264.h b/libavcodec/h264.h index 43201d32ec..4a77d25d7d 100644 --- a/libavcodec/h264.h +++ b/libavcodec/h264.h @@ -179,6 +179,7 @@ typedef struct SPS{ int vcl_hrd_parameters_present_flag; int pic_struct_present_flag; int time_offset_length; + int cpb_cnt; ///< See H.264 E.1.2 int initial_cpb_removal_delay_length; ///< initial_cpb_removal_delay_length_minus1 +1 int cpb_removal_delay_length; ///< cpb_removal_delay_length_minus1 + 1 int dpb_output_delay_length; ///< dpb_output_delay_length_minus1 + 1