changeset 1662:64c370fe6e88 libavcodec

slice flush / position fix
author michael
date Sun, 07 Dec 2003 02:10:30 +0000
parents 4c9fd29f1606
children 4ac3573977e6
files mpegvideo.c
diffstat 1 files changed, 4 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/mpegvideo.c	Sun Dec 07 01:33:45 2003 +0000
+++ b/mpegvideo.c	Sun Dec 07 02:10:30 2003 +0000
@@ -3916,7 +3916,9 @@
                         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 @@
                         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;