rendered paste bodyIndex: libhb/deca52.c===================================================================--- libhb/deca52.c (revision 1829)+++ libhb/deca52.c (working copy)@@ -289,6 +289,7 @@ hb_work_info_t *info ) { int i, rate, bitrate, flags;+ int old_rate = 0, old_bitrate = 0; memset( info, 0, sizeof(*info) ); @@ -298,7 +299,22 @@ { if( a52_syncinfo( &b->data[i], &flags, &rate, &bitrate ) != 0 ) {- break;+ /*+ * Got sync apparently, save these values and check that they+ * also match when we get sync again.+ */+ if( old_rate ) + {+ if( rate == old_rate && bitrate == old_bitrate )+ {+ break;+ } else {+ hb_log( "AC3 sync didn't return the same values two times in a row, still looking" );+ }+ } + + old_rate = rate;+ old_bitrate = bitrate; } } if ( i >= b->size - 7 )