[libbluray-devel] "bd_get_main_title" question

Dave dave at momentumweb.com
Wed Jul 30 17:52:31 CEST 2014


Hello libbluray community, it's my first post here and I just wanted to
preface my post with the fact that I've searched the archives manually
for a bit for an answer to my question, but haven't found anything, and
also don't see a way to search the archives, so that's why I joined in
to post.

My question is regarding the "bd_get_main_title" function.  I've been
looking for a way to find the MPLS of the main title accurately, ie, the
title that one's physical Bluray player would play when the disc is
inserted and the main movie is started.  After compiling libbluray, I
ended up with a "list_titles" binary that lists all of the available
indexes on a disc (which works fine), and even calls the
"bd_get_main_title" function and finds the appropriate index of the main
title.  So I thought I was in the clear and had found a solution.

However, if I play a Bluray with a trial of a commercial piece of
software (PowerDVD, Arcsoft Totalmedia, etc), I can watch with Process
Monitor which MPLS file is picked when the main movie starts, and at
that point I noticed a discrepancy.  For example, the Bluray of the
movie Epic (2013), when played through commercial software, picks
00800.MPLS as the main title, but when I run libbluray's "list_titles"
against the disc it picks 00802.MPLS as the main title.  I went poking
through the code of "bd_get_main_title" and found that, unfortunately,
it looks like libbluray is just "guessing" as to the main title, as
there is a comment above the code that says "/* main title guessing */"
and, per the code, it seems to basically just pick the title with the
longest duration that comes latest in the index list.

Is this something that will be changed with some of the new BD-J support
I've been reading about?  It's very intriguing to me that this aspect of
the disc, picking the main title, is so "mysterious" to discover, so I
will keep tinkering around on my own.  Thanks for all the hard work on
libbluray!
-Dave



More information about the libbluray-devel mailing list