diff options
author | Clément Bœsch <u@pkh.me> | 2016-06-19 12:17:41 +0200 |
---|---|---|
committer | Clément Bœsch <u@pkh.me> | 2016-06-19 12:17:41 +0200 |
commit | 0bf5fd2e19b081ce17e523944c2735586b008159 (patch) | |
tree | 72ff0ebd574dd615d59175c500dc8bb1b7428b5f /libavcodec/h264_parse.h | |
parent | 8a135a55b3570441b6147c94f24c71e5c81ac916 (diff) | |
parent | 98c97994c5b90bdae02accb155eeceeb5224b8ef (diff) | |
download | ffmpeg-0bf5fd2e19b081ce17e523944c2735586b008159.tar.gz |
Merge commit '98c97994c5b90bdae02accb155eeceeb5224b8ef'
* commit '98c97994c5b90bdae02accb155eeceeb5224b8ef':
h264: decouple extradata parsing from the decoder
Main changes:
- move get_avc_nalsize() inside h264_parser.c and make it use
H264ParseContext instead of H264Context. This helps fixing
fate-flv-demux.
- Also use is_avc/nal_length_size from the H264ParseContext in various
places instead of the H264Context one as that's the fields now filled
by ff_h264_decode_extradata()
- h264_parse: dont fail decode_extradata_ps() due to nal split failure.
Change by Michael to fix decoding of h264/ref_10.avi.
Merged-by: Clément Bœsch <u@pkh.me>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavcodec/h264_parse.h')
-rw-r--r-- | libavcodec/h264_parse.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libavcodec/h264_parse.h b/libavcodec/h264_parse.h index 413f04d90b..5ff3dc30a6 100644 --- a/libavcodec/h264_parse.h +++ b/libavcodec/h264_parse.h @@ -54,6 +54,7 @@ typedef struct H264POCContext { struct SPS; struct PPS; +struct H264ParamSets; int ff_h264_pred_weight_table(GetBitContext *gb, const struct SPS *sps, const int *ref_count, int slice_type_nos, @@ -82,4 +83,8 @@ 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); +int ff_h264_decode_extradata(const uint8_t *data, int size, struct H264ParamSets *ps, + int *is_avc, int *nal_length_size, + int err_recognition, void *logctx); + #endif /* AVCODEC_H264_PARSE_H */ |