From 04385218885935df99ec9f98ab73bb461775d28b Mon Sep 17 00:00:00 2001 From: Anton Khirnov Date: Mon, 26 Oct 2020 14:10:55 +0100 Subject: [PATCH] lavc: un-avpriv avpriv_bprint_to_extradata() It has not been used outside of lavc since 6f69f7a8bf6. Also, move it to the only place where it is used. --- libavcodec/dvdsubenc.c | 25 ++++++++++++++++++++++++- libavcodec/internal.h | 5 ----- libavcodec/utils.c | 23 ----------------------- 3 files changed, 24 insertions(+), 29 deletions(-) diff --git a/libavcodec/dvdsubenc.c b/libavcodec/dvdsubenc.c index e54b5f0d7bf..9fa9d5b6d70 100644 --- a/libavcodec/dvdsubenc.c +++ b/libavcodec/dvdsubenc.c @@ -424,6 +424,29 @@ fail: return ret; } +static int bprint_to_extradata(AVCodecContext *avctx, struct AVBPrint *buf) +{ + int ret; + char *str; + + ret = av_bprint_finalize(buf, &str); + if (ret < 0) + return ret; + if (!av_bprint_is_complete(buf)) { + av_free(str); + return AVERROR(ENOMEM); + } + + avctx->extradata = str; + /* Note: the string is NUL terminated (so extradata can be read as a + * string), but the ending character is not accounted in the size (in + * binary formats you are likely not supposed to mux that character). When + * extradata is copied, it is also padded with AV_INPUT_BUFFER_PADDING_SIZE + * zeros. */ + avctx->extradata_size = buf->len; + return 0; +} + static int dvdsub_init(AVCodecContext *avctx) { DVDSubtitleContext *dvdc = avctx->priv_data; @@ -451,7 +474,7 @@ static int dvdsub_init(AVCodecContext *avctx) av_bprintf(&extradata, " %06"PRIx32"%c", dvdc->global_palette[i] & 0xFFFFFF, i < 15 ? ',' : '\n'); - ret = avpriv_bprint_to_extradata(avctx, &extradata); + ret = bprint_to_extradata(avctx, &extradata); if (ret < 0) return ret; diff --git a/libavcodec/internal.h b/libavcodec/internal.h index ce4dbbc2b95..17defb9b50e 100644 --- a/libavcodec/internal.h +++ b/libavcodec/internal.h @@ -313,11 +313,6 @@ int avpriv_h264_has_num_reorder_frames(AVCodecContext *avctx); */ int ff_codec_open2_recursive(AVCodecContext *avctx, const AVCodec *codec, AVDictionary **options); -/** - * Finalize buf into extradata and set its size appropriately. - */ -int avpriv_bprint_to_extradata(AVCodecContext *avctx, struct AVBPrint *buf); - const uint8_t *avpriv_find_start_code(const uint8_t *p, const uint8_t *end, uint32_t *state); diff --git a/libavcodec/utils.c b/libavcodec/utils.c index 93ac1cd9f0c..fb40962c475 100644 --- a/libavcodec/utils.c +++ b/libavcodec/utils.c @@ -1946,29 +1946,6 @@ int avcodec_is_open(AVCodecContext *s) return !!s->internal; } -int avpriv_bprint_to_extradata(AVCodecContext *avctx, struct AVBPrint *buf) -{ - int ret; - char *str; - - ret = av_bprint_finalize(buf, &str); - if (ret < 0) - return ret; - if (!av_bprint_is_complete(buf)) { - av_free(str); - return AVERROR(ENOMEM); - } - - avctx->extradata = str; - /* Note: the string is NUL terminated (so extradata can be read as a - * string), but the ending character is not accounted in the size (in - * binary formats you are likely not supposed to mux that character). When - * extradata is copied, it is also padded with AV_INPUT_BUFFER_PADDING_SIZE - * zeros. */ - avctx->extradata_size = buf->len; - return 0; -} - const uint8_t *avpriv_find_start_code(const uint8_t *av_restrict p, const uint8_t *end, uint32_t *av_restrict state) -- 2.39.2