summaryrefslogtreecommitdiff
path: root/libavcodec
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2003-12-07 02:10:30 +0000
committerMichael Niedermayer <michaelni@gmx.at>2003-12-07 02:10:30 +0000
commit01e8ff27b449ca8d7263165a29669a313a93e978 (patch)
tree301a0569fd50de7c70a90d17eabd69a81a774336 /libavcodec
parentba58dabc5c6617f39ad83471caebb9bbd8a3e97e (diff)
slice flush / position fix
Originally committed as revision 2569 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/mpegvideo.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/libavcodec/mpegvideo.c b/libavcodec/mpegvideo.c
index 9b04bafcc7..1e5e59b62a 100644
--- a/libavcodec/mpegvideo.c
+++ b/libavcodec/mpegvideo.c
@@ -3916,7 +3916,9 @@ static void encode_picture(MpegEncContext *s, int picture_number)
ff_mpeg4_stuffing(&s->pb);
align_put_bits(&s->pb);
-// flush_put_bits(&s->pb);
+ flush_put_bits(&s->pb);
+
+ assert((get_bit_count(&s->pb)&7) == 0);
current_packet_size= pbBufPtr(&s->pb) - s->ptr_lastgob;
if (s->avctx->rtp_callback)
@@ -3944,7 +3946,7 @@ static void encode_picture(MpegEncContext *s, int picture_number)
s->last_bits= bits;
}
- s->ptr_lastgob = pbBufPtr(&s->pb);
+ s->ptr_lastgob += current_packet_size;
s->first_slice_line=1;
s->resync_mb_x=mb_x;
s->resync_mb_y=mb_y;