[DVDnav-discuss] [PATCH] handle duplicate language units and pgc's more gracefully

Fabian Keil fk at fabiankeil.de
Tue Jan 1 15:53:38 CET 2013


John Stebbins <stebbins at jetheaddev.com> wrote:

> On 12/30/2012 06:57 AM, Fabian Keil wrote:
> > John Stebbins <stebbins at jetheaddev.com> wrote:
 
> >> There are actually many other places in libdvdnav where cell_playback is used unchecked.  I'm guessing the reason these
> >> don't provoke obvious frequent crashes is that a title that contains a pgc with cell_playback_offset == 0 is an invalid
> >> title and won't be accessible from the dvd menus.  So that makes me think that an application that provokes the crash
> >> that is fixed by your patch is probably not strictly providing access based on the dvd menus and therefor may be
> >> providing other means to provoke similar crashes.
> > My impression is that vlc uses it to generate the title lengths
> > in the title menu. The crashes in dvdnav_describe_title_chapters()
> > already happen while opening the DVD, though, which at least makes
> > debugging easier.
> >
> > Unfortunately DVDs that trigger crashes with unpatched libdvdnav
> > versions usually also have a somewhat useless title menu, as it's
> > unclear from the lengths what the actual main title is:
> > http://www.fabiankeil.de/tmp/screenshot-vlc-title-menu-for-ghost-protocol.jpg
> >
> > From a user's perspective it would be great to also have a menu
> > that only shows titles that are reachable through the menu,
> > but I assume that's not trivial.
> >
> 
> True, it is non-trivial.  But this is exactly the reason I created the dvdnav_dup() patch.  This patch is in Erik's
> branch, but hasn't made it to the official repo yet. Creating duplicate dvdnav contexts allows you to do a recursive
> decent through menus doing virtual button pushes as you go.  HandBrake uses this to hunt down a candidate for the main
> feature on the disc.  It's not 100% accurate because my menu parser is a little lame still, but it works very well given
> it's lameness ;)

Sounds great.

Wouldn't it make sense to have the "virtual button pushing" parts in
libdvdnav as well?

It seems to me that DVD players like vlc could profit from them and
it might also be useful for dvdbackup whose main-feature detection is
supposedly somewhat lacking (I haven't tested it, though).

Fabian
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/dvdnav-discuss/attachments/20130101/85ec1253/attachment.asc>


More information about the DVDnav-discuss mailing list