From e5af9203098a889f36b759652615046254d45102 Mon Sep 17 00:00:00 2001 From: Andreas Rheinhardt Date: Sun, 7 Mar 2021 00:28:14 +0100 Subject: avcodec: Move all AVCodecParser.split functions to remove_extradata_bsf The remove_extradata bsf is the only user of these functions. Signed-off-by: Andreas Rheinhardt Signed-off-by: James Almer --- libavcodec/hevc_parser.c | 34 ---------------------------------- 1 file changed, 34 deletions(-) (limited to 'libavcodec/hevc_parser.c') diff --git a/libavcodec/hevc_parser.c b/libavcodec/hevc_parser.c index 320d4eb562..c944a6aacd 100644 --- a/libavcodec/hevc_parser.c +++ b/libavcodec/hevc_parser.c @@ -336,39 +336,6 @@ static int hevc_parse(AVCodecParserContext *s, AVCodecContext *avctx, return next; } -// Split after the parameter sets at the beginning of the stream if they exist. -static int hevc_split(AVCodecContext *avctx, const uint8_t *buf, int buf_size) -{ - const uint8_t *ptr = buf, *end = buf + buf_size; - uint32_t state = -1; - int has_vps = 0; - int has_sps = 0; - int has_pps = 0; - int nut; - - while (ptr < end) { - ptr = avpriv_find_start_code(ptr, end, &state); - if ((state >> 8) != START_CODE) - break; - nut = (state >> 1) & 0x3F; - if (nut == HEVC_NAL_VPS) - has_vps = 1; - else if (nut == HEVC_NAL_SPS) - has_sps = 1; - else if (nut == HEVC_NAL_PPS) - has_pps = 1; - else if ((nut != HEVC_NAL_SEI_PREFIX || has_pps) && - nut != HEVC_NAL_AUD) { - if (has_vps && has_sps) { - while (ptr - 4 > buf && ptr[-5] == 0) - ptr--; - return ptr - 4 - buf; - } - } - } - return 0; -} - static void hevc_parser_close(AVCodecParserContext *s) { HEVCParserContext *ctx = s->priv_data; @@ -385,5 +352,4 @@ const AVCodecParser ff_hevc_parser = { .priv_data_size = sizeof(HEVCParserContext), .parser_parse = hevc_parse, .parser_close = hevc_parser_close, - .split = hevc_split, }; -- cgit v1.2.3