I've been using XBMC nightly builds since they were re-enabled back around January 2011ish specifically for playing back unencrypted bdiso files.
It's been working great and support for bluray keeps improving, but I have noticed on certain movies the wrong playlist is loaded (and typically plays a commentary version of the playlist instead) I've only seen this happen on a handful of movies.
For example X-Men First Class (2011) should play BDMV\PLAYLIST\00800.mpls which is the cinema main film version, but instead it plays BDMV\PLAYLIST\00500.mpls which is the main film interlaced with commentary clips and voice overs
It doesn't happen on all movies only certain ones, another example is The Silence of the Lambs (1991).
I wanted to try and debug this myself so I downloaded the latest copy of the XBMC source from git "xbmc-xbmc-c051742" and compiled my own debug copy in VS2010
I also re-ordered some lines in DVDInputStreamBluray.cpp so that the debug log would be more human readable and not curled/formatted
CLog::Log(LOGDEBUG, "CDVDInputStreamBluray - Opening udf dir %s...", strDirname.c_str());
Here is my xbmc debug log http://pastebin.com/m3L1RMMX you can see one of the last playlists it reads is 00500.mpls
I was trying to debug this further and I figured that the core logic which is where the issue could be is likely to be in libbluray, so I tried to re-compile my own windows binary of that using the git source on videolan but for whatever reason (due to libxml2 which is installed even though it says it's not) it wouldn't compile under cygwin.
So I'm kind of stuck at the moment and was wondering if this is a known issue or something like that?