libbluray | branch: master | hpi1 <[email protected]> | Sun Nov 28 17:26:24 2010 +0200| [79cd0707a12638afbf625cdef29fb06de313cd46] | committer: hpi1
bd_read_ext(): handle (infinite time) still mode playlists > http://git.videolan.org/gitweb.cgi/libbluray.git/?a=commit;h=79cd0707a12638afbf625cdef29fb06de313cd46 --- src/libbluray/bluray.c | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-) diff --git a/src/libbluray/bluray.c b/src/libbluray/bluray.c index 0e602e5..6d158f9 100644 --- a/src/libbluray/bluray.c +++ b/src/libbluray/bluray.c @@ -1839,6 +1839,15 @@ int bd_read_ext(BLURAY *bd, unsigned char *buf, int len, BD_EVENT *event) int bytes = bd_read(bd, buf, len); if (bytes == 0) { + + MPLS_PI *pi = &bd->title->pl->play_item[0]; + if (pi->still_mode == BLURAY_STILL_INFINITE) { + // most likely menu background ; waiting for user interaction + DEBUG(DBG_BLURAY, "Reached end of infinite still mode play item\n"); + _get_event(bd, event); + return 0; + } + if (bd->title_type == title_hdmv) { hdmv_vm_resume(bd->hdmv_vm); bd->hdmv_suspended = !hdmv_vm_running(bd->hdmv_vm); _______________________________________________ libbluray-devel mailing list [email protected] http://mailman.videolan.org/listinfo/libbluray-devel
