X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavcodec%2Favcodec.c;h=c4083919bb9403cff23ebe1a7705e966c9934fd0;hb=d07534b5f5f20b4f780f5b0284aca6354da00695;hp=01fe8a6d9786b3d9d54c3ed4effd650932829cd6;hpb=e8fdb0db16c5ca8ad382b20874b4a454be6b79ae;p=ffmpeg diff --git a/libavcodec/avcodec.c b/libavcodec/avcodec.c index 01fe8a6d978..c4083919bb9 100644 --- a/libavcodec/avcodec.c +++ b/libavcodec/avcodec.c @@ -181,15 +181,6 @@ int attribute_align_arg avcodec_open2(AVCodecContext *avctx, const AVCodec *code } avctx->internal = avci; -#if FF_API_OLD_ENCDEC - avci->to_free = av_frame_alloc(); - avci->compat_decode_frame = av_frame_alloc(); - avci->compat_encode_packet = av_packet_alloc(); - if (!avci->to_free || !avci->compat_decode_frame || !avci->compat_encode_packet) { - ret = AVERROR(ENOMEM); - goto free_and_end; - } -#endif avci->buffer_frame = av_frame_alloc(); avci->buffer_pkt = av_packet_alloc(); avci->es.in_frame = av_frame_alloc(); @@ -392,6 +383,8 @@ free_and_end: avctx->codec->caps_internal & FF_CODEC_CAP_INIT_CLEANUP))) avctx->codec->close(avctx); + if (CONFIG_FRAME_THREAD_ENCODER && avci->frame_thread_encoder) + ff_frame_thread_encoder_free(avctx); if (HAVE_THREADS && avci->thread_ctx) ff_thread_free(avctx); @@ -400,11 +393,6 @@ free_and_end: av_opt_free(avctx); if (av_codec_is_encoder(avctx->codec)) { -#if FF_API_CODED_FRAME -FF_DISABLE_DEPRECATION_WARNINGS - av_frame_free(&avctx->coded_frame); -FF_ENABLE_DEPRECATION_WARNINGS -#endif av_freep(&avctx->extradata); avctx->extradata_size = 0; } @@ -414,11 +402,6 @@ FF_ENABLE_DEPRECATION_WARNINGS if (av_codec_is_decoder(avctx->codec)) av_freep(&avctx->subtitle_header); -#if FF_API_OLD_ENCDEC - av_frame_free(&avci->to_free); - av_frame_free(&avci->compat_decode_frame); - av_packet_free(&avci->compat_encode_packet); -#endif av_frame_free(&avci->buffer_frame); av_packet_free(&avci->buffer_pkt); av_packet_free(&avci->last_pkt_props); @@ -458,10 +441,6 @@ void avcodec_flush_buffers(AVCodecContext *avctx) avci->draining_done = 0; avci->nb_draining_errors = 0; av_frame_unref(avci->buffer_frame); -#if FF_API_OLD_ENCDEC - av_frame_unref(avci->compat_decode_frame); - av_packet_unref(avci->compat_encode_packet); -#endif av_packet_unref(avci->buffer_pkt); av_packet_unref(avci->last_pkt_props); @@ -486,13 +465,6 @@ void avcodec_flush_buffers(AVCodecContext *avctx) if (av_codec_is_decoder(avctx->codec)) av_bsf_flush(avci->bsf); - -#if FF_API_OLD_ENCDEC -FF_DISABLE_DEPRECATION_WARNINGS - if (!avctx->refcounted_frames) - av_frame_unref(avci->to_free); -FF_ENABLE_DEPRECATION_WARNINGS -#endif } void avsubtitle_free(AVSubtitle *sub) @@ -534,11 +506,6 @@ av_cold int avcodec_close(AVCodecContext *avctx) avctx->codec->close(avctx); avci->byte_buffer_size = 0; av_freep(&avci->byte_buffer); -#if FF_API_OLD_ENCDEC - av_frame_free(&avci->to_free); - av_frame_free(&avci->compat_decode_frame); - av_packet_free(&avci->compat_encode_packet); -#endif av_frame_free(&avci->buffer_frame); av_packet_free(&avci->buffer_pkt); av_packet_unref(avci->last_pkt_props); @@ -578,11 +545,6 @@ av_cold int avcodec_close(AVCodecContext *avctx) av_freep(&avctx->priv_data); if (av_codec_is_encoder(avctx->codec)) { av_freep(&avctx->extradata); -#if FF_API_CODED_FRAME -FF_DISABLE_DEPRECATION_WARNINGS - av_frame_free(&avctx->coded_frame); -FF_ENABLE_DEPRECATION_WARNINGS -#endif } else if (av_codec_is_decoder(avctx->codec)) av_freep(&avctx->subtitle_header);