Hi! Attached patch fixes ticket #8412.
Please comment, Carl Eugen
From 7f62ffa46f9264c1fc7854def8467816e0173883 Mon Sep 17 00:00:00 2001 From: Carl Eugen Hoyos <ceffm...@gmail.com> Date: Mon, 20 Jan 2020 00:51:33 +0100 Subject: [PATCH] lavc/mpegvideo_enc: Do not write an extra RST tag after final jpeg slice. Fixes ticket #8412. --- libavcodec/mpegvideo_enc.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index 96f5b4a666..fc1c46fee7 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -3566,8 +3566,9 @@ static void merge_context_after_me(MpegEncContext *dst, MpegEncContext *src){ MERGE(me.mb_var_sum_temp); } -static void merge_context_after_encode(MpegEncContext *dst, MpegEncContext *src){ +static void merge_context_after_encode(MpegEncContext *dst, MpegEncContext *src, int last){ int i; + int put_bits = put_bits_count(&src->pb) - (src->out_format == FMT_MJPEG && src->avctx->active_thread_type & FF_THREAD_SLICE && last ? 32 : 0); MERGE(dct_count[0]); //note, the other dct vars are not part of the context MERGE(dct_count[1]); @@ -3594,7 +3595,7 @@ static void merge_context_after_encode(MpegEncContext *dst, MpegEncContext *src) av_assert1(put_bits_count(&src->pb) % 8 ==0); av_assert1(put_bits_count(&dst->pb) % 8 ==0); - avpriv_copy_bits(&dst->pb, src->pb.buf, put_bits_count(&src->pb)); + avpriv_copy_bits(&dst->pb, src->pb.buf, put_bits); flush_put_bits(&dst->pb); } @@ -3919,7 +3920,7 @@ static int encode_picture(MpegEncContext *s, int picture_number) 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]); + merge_context_after_encode(s, s->thread_context[i], i == context_count - 1); } emms_c(); return 0; -- 2.23.0
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".