aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/mpegvideo_enc.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2015-05-25 04:54:41 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2015-07-20 04:43:39 +0200
commit665b34df730b53a2a6557899d85dba598a91f1b2 (patch)
tree5c65b1014939e280b5e9776acf860a6cbd41cc23 /libavcodec/mpegvideo_enc.c
parent4947158b1f34c7a1b90cac7a6e205529353af1b6 (diff)
downloadffmpeg-665b34df730b53a2a6557899d85dba598a91f1b2.tar.gz
avcodec/mpegvideo_enc: Update the buffer size as more slices are merged
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> (cherry picked from commit 561d3a57aaa95c7e8e65e96b36dd069100603650) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/mpegvideo_enc.c')
-rw-r--r--libavcodec/mpegvideo_enc.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c
index 6f6303c58d..43ccfed918 100644
--- a/libavcodec/mpegvideo_enc.c
+++ b/libavcodec/mpegvideo_enc.c
@@ -3742,6 +3742,8 @@ static int encode_picture(MpegEncContext *s, int picture_number)
}
s->avctx->execute(s->avctx, encode_thread, &s->thread_context[0], NULL, context_count, sizeof(void*));
for(i=1; i<context_count; i++){
+ if (s->pb.buf_end == s->thread_context[i]->pb.buf)
+ set_put_bits_buffer_size(&s->pb, FFMIN(s->thread_context[i]->pb.buf_end - s->pb.buf, INT_MAX/8-32));
merge_context_after_encode(s, s->thread_context[i]);
}
emms_c();