vlc | branch: master | Francois Cartegnie <[email protected]> | Sat Jun 11 14:01:47 2016 +0200| [27c6f383304fe56d081df95a2f1b0754f0a1696b] | committer: Thomas Guillem
packetizer: h264: parse vui bitstream restrictions Signed-off-by: Thomas Guillem <[email protected]> > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=27c6f383304fe56d081df95a2f1b0754f0a1696b --- modules/packetizer/h264_nal.c | 14 ++++++++++++-- modules/packetizer/h264_nal.h | 4 ++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/modules/packetizer/h264_nal.c b/modules/packetizer/h264_nal.c index 09744c3..1b0a902 100644 --- a/modules/packetizer/h264_nal.c +++ b/modules/packetizer/h264_nal.c @@ -453,12 +453,22 @@ static bool h264_parse_sequence_parameter_set_rbsp( bs_t *p_bs, } if( p_sps->vui.b_hrd_parameters_present_flag ) - bs_read( p_bs, 1 ); + bs_read( p_bs, 1 ); /* low delay hrd */ /* pic struct info */ p_sps->vui.b_pic_struct_present_flag = bs_read( p_bs, 1 ); - /* + unparsed remains */ + p_sps->vui.b_bitstream_restriction_flag = bs_read( p_bs, 1 ); + if( p_sps->vui.b_bitstream_restriction_flag ) + { + bs_read( p_bs, 1 ); /* motion vector pic boundaries */ + bs_read_ue( p_bs ); /* max bytes per pic */ + bs_read_ue( p_bs ); /* max bits per mb */ + bs_read_ue( p_bs ); /* log2 max mv h */ + bs_read_ue( p_bs ); /* log2 max mv v */ + p_sps->vui.i_max_num_reorder_frames = bs_read_ue( p_bs ); + bs_read_ue( p_bs ); /* max dec frame buffering */ + } } return true; diff --git a/modules/packetizer/h264_nal.h b/modules/packetizer/h264_nal.h index 3ba2f1b..f10d96c 100644 --- a/modules/packetizer/h264_nal.h +++ b/modules/packetizer/h264_nal.h @@ -124,6 +124,10 @@ struct h264_sequence_parameter_set_t bool b_hrd_parameters_present_flag; uint8_t i_cpb_removal_delay_length_minus1; uint8_t i_dpb_output_delay_length_minus1; + + /* restrictions */ + uint8_t b_bitstream_restriction_flag; + uint8_t i_max_num_reorder_frames; } vui; }; _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
