From c8dcff0cdb17d0aa03ac729eba12d1a20f1f59c8 Mon Sep 17 00:00:00 2001 From: Anton Khirnov Date: Mon, 21 Mar 2016 16:14:31 +0100 Subject: h264: factor out calculating the POC count into a separate file This will allow decoupling the parser from the decoder. --- libavcodec/h264_parse.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'libavcodec/h264_parse.h') diff --git a/libavcodec/h264_parse.h b/libavcodec/h264_parse.h index 23676b36c7..c47b420e49 100644 --- a/libavcodec/h264_parse.h +++ b/libavcodec/h264_parse.h @@ -39,6 +39,19 @@ typedef struct H264PredWeightTable { int implicit_weight[48][48][2]; } H264PredWeightTable; +typedef struct H264POCContext { + int poc_lsb; + int poc_msb; + int delta_poc_bottom; + int delta_poc[2]; + int frame_num; + int prev_poc_msb; ///< poc_msb of the last reference pic for POC type 0 + int prev_poc_lsb; ///< poc_lsb of the last reference pic for POC type 0 + int frame_num_offset; ///< for POC type 2 + int prev_frame_num_offset; ///< for POC type 2 + int prev_frame_num; ///< frame_num of the last pic for POC type 1/2 +} H264POCContext; + struct SPS; struct PPS; @@ -65,4 +78,8 @@ int ff_h264_parse_ref_count(int *plist_count, int ref_count[2], GetBitContext *gb, const struct PPS *pps, int slice_type_nos, int picture_structure); +int ff_h264_init_poc(int pic_field_poc[2], int *pic_poc, + const struct SPS *sps, H264POCContext *poc, + int picture_structure, int nal_ref_idc); + #endif /* AVCODEC_H264_PARSE_H */ -- cgit v1.2.3