[FFmpeg-cvslog] flashsv2enc: move blockbuffer realloc to reconfigure_at_keyframe()

Michael Niedermayer git at videolan.org
Fri Sep 7 21:56:41 CEST 2012


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Fri Sep  7 21:28:29 2012 +0200| [dbb9117d1817610ff1e7987a7c5a73b012d96b68] | committer: Michael Niedermayer

flashsv2enc: move blockbuffer realloc to reconfigure_at_keyframe()

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

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

 libavcodec/flashsv2enc.c |   14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

diff --git a/libavcodec/flashsv2enc.c b/libavcodec/flashsv2enc.c
index bc833f4..64e05fb 100644
--- a/libavcodec/flashsv2enc.c
+++ b/libavcodec/flashsv2enc.c
@@ -554,16 +554,9 @@ static int encode_block(FlashSV2Context *s, Palette * palette, Block * b,
                         int dist, int keyframe)
 {
     unsigned buf_size = b->width * b->height * 6;
-    uint8_t *buf;
+    uint8_t *buf = s->blockbuffer;
     int res;
 
-    av_fast_malloc(&s->blockbuffer, &s->blockbuffer_size, buf_size);
-    if (!s->blockbuffer) {
-        av_log(s->avctx, AV_LOG_ERROR, "Could not allocate block buffer.\n");
-        return AVERROR(ENOMEM);
-    }
-    buf = s->blockbuffer;
-
     if (b->flags & COLORSPACE_15_7) {
         encode_15_7(palette, b, src, stride, dist);
     } else {
@@ -826,6 +819,11 @@ static int reconfigure_at_keyframe(FlashSV2Context * s, const uint8_t * image,
         init_blocks(s, s->frame_blocks, s->encbuffer, s->databuffer);
         init_blocks(s, s->key_blocks, s->keybuffer, 0);
 
+        av_fast_malloc(&s->blockbuffer, &s->blockbuffer_size, block_width * block_height * 6);
+        if (!s->blockbuffer) {
+            av_log(s->avctx, AV_LOG_ERROR, "Could not allocate block buffer.\n");
+            return AVERROR(ENOMEM);
+        }
     }
 
     s->use15_7 = optimum_use15_7(s);



More information about the ffmpeg-cvslog mailing list