This adds a bluray virtual directory to more easily navigate a bluray file with it's title tracks and playlists.
Something similar aught to be done for dvd's too. This gives a directory structure like:
/titles/Title 1 [duration]
/titles/Title 2 [duration]
/titles/Title 3 [duration]
/Title 5 [duration] ///< this is the longest duration title
It also contains a commit which during scanning avoids all title's apart from the longest titles in the root (can be multiple, set to larger than 2/3 of the longest title).
haven't tested it yet, and although I really welcome a way to select the BD stream, I don't think this should be done as VFS structure, because it's none and IMO needs different treatment/presentation. We should think of alternatives here for a better user experience - something like a popup/dialog and/or a overlay menu during playback.
Yea.. i sort of agree. Doesn't really hinder it being added as a virtual file system. For example, when we start playback on an item, we do a getdirectory request on it, if that returns elements we pop up a dialog with the result of that.
@jmarshallnz , @cptspiff thought?
as you say one does not exclude the other and having it available as vfs makes sense no matter.
Well, combining it with the resume file dialog would make a lot of sence.. Seeing as that would pop up after otherwise.
Ok, so comments but the define addressed. Looks much nicer now with the GuiDialogSelect instead.
The scanning hints change can now be skipped, since nothing is really using it. Not sure it was a good idea anyway.
@JezzX this is going to need some skinning work too. Seems GuiDialogSelect is very geared to addons it seem. The fileitems added to it have filesize and runtime. I'm not sure what else i might be able to extract about them yet.
Sorry as a none coder I'm a little confused as too what this does.
does this do that when you click on a bluray directory it pops up dialog select with a list of Menued items on the blueray in plain english names that the disc gives it ?
If so I would just go for using the non addon id 3 list instead of id 6 and then I can add a label 2 too it so Label1 = title Label2 = duration any extra info is just fluff end users don't really care about the file size when trying to play something.
Sadly there are no english names. So it will just list:
Main Title 1
Main Title 2
All Titles (subfolder)
Then in All Titles:
All Titles/Title 1
All Titles/Title ...
All Titles/Title XX
But they do have possible metadata like duration and file size and possibly even video codec/audio codec and stuff like that.
So this is a alternate solution for this. (note the content type commits you can technically ignore, suppose they can be dropped). It will pop up a dialog for selection when a movie is tarted.
I'm far from happy with this thou as there is no good way to find all paths that we can start playback. With this, play from favorites, won't show dialog for example.
Don't like the idea of duplicating code for that. Any ideas on how to handle this @cptspiff , @jmarshallnz ?
seems it's already somewhat based on duplication for resume in playmedia builtin. best you can do is break it out in a separate function as is done for ShowResumeMenu..
[bluray] Add directory class listing all titles on disk/image
Ok. I think this is pretty much ready to go as a step in the right direction at least.
[bluray] Add way to select playback title or menu's on bluray startup
[bluray] localize strings and make them less succinct