diff options
author | jstebbins <[email protected]> | 2011-04-08 20:32:32 +0000 |
---|---|---|
committer | jstebbins <[email protected]> | 2011-04-08 20:32:32 +0000 |
commit | 40d04d0ffe6a58d07bb0e46c1fd6060edbb6e80b (patch) | |
tree | 76c32eae70f16e66c7f4e3dc726c845843927108 /libhb/bd.c | |
parent | 5f692a69a63f106cabe9dad4dfc85cc5c6d93cb9 (diff) |
Handle boundaries between blueray clips better.
These boundaries are always discontinuities. But sometimes we were
not detecting them as such and would drop frames. So set a flag
in the buffer when libbluray tells us a new clip is starting and
use that to trigger computation of a new scr offset.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3912 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'libhb/bd.c')
-rw-r--r-- | libhb/bd.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libhb/bd.c b/libhb/bd.c index 47dfe7df8..6ef53361e 100644 --- a/libhb/bd.c +++ b/libhb/bd.c @@ -471,6 +471,7 @@ int hb_bd_read( hb_bd_t * d, hb_buffer_t * b ) BD_EVENT event; uint64_t pos; + b->discontinuity = 0; while ( 1 ) { if ( d->next_chap != d->chapter ) @@ -507,6 +508,10 @@ int hb_bd_read( hb_bd_t * d, hb_buffer_t * b ) d->next_chap = event.param; break; + case BD_EVENT_PLAYITEM: + b->discontinuity = 1; + break; + default: break; } |