diff options
Diffstat (limited to 'libhb/scan.c')
-rw-r--r-- | libhb/scan.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/libhb/scan.c b/libhb/scan.c index 7ab7e17c7..8c8ce433f 100644 --- a/libhb/scan.c +++ b/libhb/scan.c @@ -599,8 +599,9 @@ static int DecodePreviews( hb_scan_t * data, hb_title_t * title, int flush ) hb_buffer_t * vid_buf = NULL; - int total_read = 0; - while (total_read < PREVIEW_READ_THRESH) + int total_read = 0, packets = 0; + while (total_read < PREVIEW_READ_THRESH || + (!AllAudioOK(title) && packets < 10000)) { if (data->bd) { @@ -657,6 +658,7 @@ static int DecodePreviews( hb_scan_t * data, hb_title_t * title, int flush ) goto skip_preview; } total_read += buf->size; + packets++; (hb_demux[title->demuxer])(buf, list_es, 0 ); |