[DVDnav-discuss] [PATCH] fix dvdnav multi-cell menus
Steaphan Greene
sgreene at cs.binghamton.edu
Thu Aug 18 18:07:56 CEST 2011
As previously sent to mplayer-dev-eng, but with a separate version not
including any white-space changes (both attached patches are otherwise
identical):
Many DVDs with long menus (interactive DVDs or DVD "games" often treat
the entire "movie" as a menu) don't work correctly in mplayer's dvdnav.
As soon as they change to a new cell, the DVD stops working - It just
drops the audio and corrupts the video by, I believe, playing the
previous video chunk over and over. The navigation controls continue to
work, though.
The problem seems to be that when a new cell is encountered, the dvdnav
code indicates it should wait for sync with the application. However,
the code does not actually advance to the next cell (it assumes this
case is hit only with still frames, even though the condition also
catches the case of cell-changes within menus).
Also, once the code to advance to the next block is enabled, by fixing
that condition, it still fails in the same way. This seems to be
because the "wait_sync = 1;" is a terminal condition here. Again, it
assumes this is for still frames only and is waiting for the next still
frame to be selected (which sets sync_wait back to 0).
The attached patch fixes both of these issues, and I have tested it
extensively (always with my MPEG2 sync patch, of course) with both
normal, and interactive DVDs, and including several examples of actual
still frames. It seems to solve the problem and cause no other new ones
that I can find.
Of course, I could be wrong about all of this (but I don't think so).
Thanks.
--
Steaphan Greene <sgreene at cs.binghamton.edu>
Lecturer, Computer Science, Binghamton University
GPG public key: http://www.cs.binghamton.edu/~sgreene/gpg.key.txt
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mplayer_dvdnav_allow_multicell_menus.nows.r1233.patch
Type: text/x-patch
Size: 956 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/dvdnav-discuss/attachments/20110818/ac5bcc08/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mplayer_dvdnav_allow_multicell_menus.full.r1233.patch
Type: text/x-patch
Size: 1303 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/dvdnav-discuss/attachments/20110818/ac5bcc08/attachment-0001.bin>
More information about the DVDnav-discuss
mailing list