1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-01-13 21:28:01 +02:00

flashsv2enc: move blockbuffer realloc to reconfigure_at_keyframe()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2012-09-07 21:28:29 +02:00
parent 9b6467fd46
commit dbb9117d18

View File

@ -554,16 +554,9 @@ static int encode_block(FlashSV2Context *s, Palette * palette, Block * b,
int dist, int keyframe) int dist, int keyframe)
{ {
unsigned buf_size = b->width * b->height * 6; unsigned buf_size = b->width * b->height * 6;
uint8_t *buf; uint8_t *buf = s->blockbuffer;
int res; 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) { if (b->flags & COLORSPACE_15_7) {
encode_15_7(palette, b, src, stride, dist); encode_15_7(palette, b, src, stride, dist);
} else { } 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->frame_blocks, s->encbuffer, s->databuffer);
init_blocks(s, s->key_blocks, s->keybuffer, 0); 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); s->use15_7 = optimum_use15_7(s);