[FFmpeg-devel] [PATCH 4/4] fftools/ffmpeg: Remove unnecessary av_packet_unref()

James Almer jamrial at gmail.com
Fri Oct 8 15:28:12 EEST 2021


On 10/8/2021 5:14 AM, Andreas Rheinhardt wrote:
> avcodec_receive_packet() already unreferences the packet on its own.
> 
> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
> ---
>   fftools/ffmpeg.c | 3 ---
>   1 file changed, 3 deletions(-)
> 
> diff --git a/fftools/ffmpeg.c b/fftools/ffmpeg.c
> index 0e38d6d185..14611480f1 100644
> --- a/fftools/ffmpeg.c
> +++ b/fftools/ffmpeg.c
> @@ -1033,7 +1033,6 @@ static void do_audio_out(OutputFile *of, OutputStream *ost,
>           goto error;
>   
>       while (1) {
> -        av_packet_unref(pkt);
>           ret = avcodec_receive_packet(enc, pkt);
>           if (ret == AVERROR(EAGAIN))
>               break;
> @@ -1378,7 +1377,6 @@ static void do_video_out(OutputFile *of,
>           av_frame_remove_side_data(in_picture, AV_FRAME_DATA_A53_CC);
>   
>           while (1) {
> -            av_packet_unref(pkt);
>               ret = avcodec_receive_packet(enc, pkt);
>               update_benchmark("encode_video %d.%d", ost->file_index, ost->index);
>               if (ret == AVERROR(EAGAIN))
> @@ -1997,7 +1995,6 @@ static void flush_encoders(void)
>   
>               update_benchmark(NULL);
>   
> -            av_packet_unref(pkt);
>               while ((ret = avcodec_receive_packet(enc, pkt)) == AVERROR(EAGAIN)) {
>                   ret = avcodec_send_frame(enc, NULL);
>                   if (ret < 0) {

Should be ok.


More information about the ffmpeg-devel mailing list