[FFmpeg-cvslog] avcodec/binkaudio: Use AVCodecInternal.in_pkt for buffer packet

Andreas Rheinhardt git at videolan.org
Sun Nov 7 19:40:15 EET 2021


ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinhardt at outlook.com> | Mon Oct 11 10:02:51 2021 +0200| [e3533006225d35107c29f984ef4c4bbd9eefeb1c] | committer: Andreas Rheinhardt

avcodec/binkaudio: Use AVCodecInternal.in_pkt for buffer packet

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=e3533006225d35107c29f984ef4c4bbd9eefeb1c
---

 libavcodec/binkaudio.c | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/libavcodec/binkaudio.c b/libavcodec/binkaudio.c
index 59ecab25c6..f808141ba5 100644
--- a/libavcodec/binkaudio.c
+++ b/libavcodec/binkaudio.c
@@ -140,9 +140,7 @@ static av_cold int decode_init(AVCodecContext *avctx)
     if (ret < 0)
         return ret;
 
-    s->pkt = av_packet_alloc();
-    if (!s->pkt)
-        return AVERROR(ENOMEM);
+    s->pkt = avctx->internal->in_pkt;
 
     return 0;
 }
@@ -277,8 +275,6 @@ static av_cold int decode_end(AVCodecContext *avctx)
     else if (CONFIG_BINKAUDIO_DCT_DECODER)
         ff_dct_end(&s->trans.dct);
 
-    av_packet_free(&s->pkt);
-
     return 0;
 }
 
@@ -341,7 +337,8 @@ static void decode_flush(AVCodecContext *avctx)
 {
     BinkAudioContext *const s = avctx->priv_data;
 
-    av_packet_unref(s->pkt);
+    /* s->pkt coincides with avctx->internal->in_pkt
+     * and is unreferenced generically when flushing. */
     s->first = 1;
 }
 



More information about the ffmpeg-cvslog mailing list