From: John Stebbins <jstebb...@jetheaddev.com> If the current position is before the first chapter in the current clip, chapter lookup fails. This can be seen in US Star Wars IV release where chapter events jump from chapter 3 back to 1. --- src/libbluray/bdnav/navigation.c | 9 +++++++++ 1 file changed, 9 insertions(+)
diff --git a/src/libbluray/bdnav/navigation.c b/src/libbluray/bdnav/navigation.c index 60eccbb..4752196 100644 --- a/src/libbluray/bdnav/navigation.c +++ b/src/libbluray/bdnav/navigation.c @@ -754,6 +754,15 @@ uint32_t nav_chapter_get_current(NAV_CLIP *clip, uint32_t clip_pkt) else return 0; } + if (mark->clip_ref < clip->ref) { + if ( ii == title->chap_list.count - 1 ) { + return ii; + } + mark = &title->chap_list.mark[ii+1]; + if (mark->clip_ref == clip->ref && mark->clip_pkt > clip_pkt) { + return ii; + } + } if (mark->clip_ref == clip->ref && mark->clip_pkt <= clip_pkt) { if ( ii == title->chap_list.count - 1 ) { return ii; -- 2.5.5 _______________________________________________ libbluray-devel mailing list libbluray-devel@videolan.org https://mailman.videolan.org/listinfo/libbluray-devel