From: Michael Niedermayer <[email protected]>

Signed-off-by: Janne Grunau <[email protected]>
---
 libavcodec/h264.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/libavcodec/h264.c b/libavcodec/h264.c
index 77acd71..6b95456 100644
--- a/libavcodec/h264.c
+++ b/libavcodec/h264.c
@@ -3662,7 +3662,9 @@ static int decode_slice(struct AVCodecContext *avctx, 
void *arg){
                 if(s->mb_y >= s->mb_height){
                     tprintf(s->avctx, "slice end %d %d\n", 
get_bits_count(&s->gb), s->gb.size_in_bits);
 
-                    if(get_bits_count(&s->gb) == s->gb.size_in_bits ) {
+                    if (get_bits_count(&s->gb) == s->gb.size_in_bits ||
+                        get_bits_count(&s->gb)  < s->gb.size_in_bits &&
+                        s->avctx->error_recognition < FF_ER_AGGRESSIVE) {
                         ff_er_add_slice(s, s->resync_mb_x, s->resync_mb_y, 
s->mb_x-1, s->mb_y, ER_MB_END&part_mask);
 
                         return 0;
-- 
1.7.8

_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to