From 5cce4dd761aafa8ff26f5262085449f40314a0e3 Mon Sep 17 00:00:00 2001
From: Michael Niedermayer <michaelni@gmx.at>
Date: Fri, 26 Mar 2004 21:58:55 +0000
Subject: [PATCH] ensure that the bitstream buffers for encoding partitioned
 frames are aligned

Originally committed as revision 2935 to svn://svn.ffmpeg.org/ffmpeg/trunk
---
 libavcodec/h263.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/libavcodec/h263.c b/libavcodec/h263.c
index ab10a693bec..f2605c5fabc 100644
--- a/libavcodec/h263.c
+++ b/libavcodec/h263.c
@@ -2996,13 +2996,12 @@ void ff_mpeg4_init_partitions(MpegEncContext *s)
     uint8_t *start= pbBufPtr(&s->pb);
     uint8_t *end= s->pb.buf_end;
     int size= end - start;
-    int pb_size = size/3;
-    int pb2_size= size/3;
-    int tex_size= size - pb_size - pb2_size;
+    int pb_size = (size/3)&(~1);
+    int tex_size= size - 2*pb_size;
     
     set_put_bits_buffer_size(&s->pb, pb_size);
     init_put_bits(&s->tex_pb, start + pb_size           , tex_size);
-    init_put_bits(&s->pb2   , start + pb_size + tex_size, pb2_size);
+    init_put_bits(&s->pb2   , start + pb_size + tex_size, pb_size);
 }
 
 void ff_mpeg4_merge_partitions(MpegEncContext *s)
-- 
GitLab