[FFmpeg-cvslog] smacker: remove unnecessary call to avctx->release_buffer in decode_frame()

Stefano Sabatini git at videolan.org
Thu Apr 28 04:28:30 CEST 2011


ffmpeg | branch: master | Stefano Sabatini <stefano.sabatini-lala at poste.it> | Tue Apr 26 11:37:36 2011 +0200| [4f2954e2327c211f3fbe20b84f4881e1f8df1528] | committer: Ronald S. Bultje

smacker: remove unnecessary call to avctx->release_buffer in decode_frame()

The release_buffer was cleaning the provided frame, thus causing the
successive call to avctx->reget_buffer() to allocate a new frame.  In
case the returned frame was not the same one previously returned but a
new one with different data, it resulted in artifacts.

Signed-off-by: Ronald S. Bultje <rsbultje at gmail.com>

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

 libavcodec/smacker.c |    2 --
 1 files changed, 0 insertions(+), 2 deletions(-)

diff --git a/libavcodec/smacker.c b/libavcodec/smacker.c
index 3a97b72..aef5e25 100644
--- a/libavcodec/smacker.c
+++ b/libavcodec/smacker.c
@@ -360,8 +360,6 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *data_size, AVPac
 
     if(buf_size <= 769)
         return 0;
-    if(smk->pic.data[0])
-            avctx->release_buffer(avctx, &smk->pic);
 
     smk->pic.reference = 1;
     smk->pic.buffer_hints = FF_BUFFER_HINTS_VALID | FF_BUFFER_HINTS_PRESERVE | FF_BUFFER_HINTS_REUSABLE;



More information about the ffmpeg-cvslog mailing list