Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[vdr] HOWTO: debug dvd problems
Hi,
Here a small HOWTO on finding and fixing problems with DVD playback
1. BUG reports
BUG reports need to be as specific as possible. Please include all version
information (kernel, libdvdcss, libdvdread, vdr), the type of DVD drive and
the title of the DVD you have problems with.
2. Region Code and CSS Problems
Region Code and CSS are closly related. They can show as multitude of
different problems. Crashes due to missing or undecoded data, corrupted
pictures or sudden stops after menu selections and at chapter borders.
Before sending BUG reports about crashed, make 100% sure you do not have such
a problem. CSS/RCE problems are not VDR specific.
Start vdr from an interactive console and set the environment variable
DVDCSS_VERBOSE to 2, e.g.:
# export DVDCSS_VERBOSE=2
# ./vdr -v /video0
You definetly got a CSS/RCE problem, if the log shows messages like:
libdvdcss error: ioctl_ReadTitleKey failed
libdvdcss debug: GetASF not authenticated (ASF=0)
libdvdcss debug: lost ASF reqesting Title key
In most cases those error are related to uninitialised RPC-2 drives. You might
then also have messages in syslog like:
Jul 24 15:47:17 ophelia kernel: Error: Illegal request -- (Sense key=0x05)
Jul 24 15:47:17 ophelia kernel: Media region code is mismatched to logical
unit -- (asc=0x6f, ascq=0x04)
There is a tool avalilable at www.linuxtv.org in the DVD section to set the
region code on a RPC-2 drive. Or just scout the internet a bit a get yourself
a RPC-1 firmware for your drive.
3. Testing with other programs
The only other programs that can be used to verify DVD playback are xine
(http://xine.sf.net/) and ogle (http://www.dtek.chalmers.se/groups/dvd/).
Normal mplayer installations _are not_ usefull for testing DVD playback as it
will not access certain control structures and navigation content on the DVD.
Newer mplayer version appear to contain libdvdnav support. I have not used it
so far, but it should be usefull then too for testing (but make sure you are
really using libdvdnav).
Crashes and other issues with the navigation engine should then be reported to
the libdvdnav team (http://dvd.sf.net/). The plugin version of the DVD player
will switch to libdvdnav and all fixes going into the lib then be available
to vdr as well.
4. Debug output
The output of the navigation engine will be required for most problem. This
can be enabled by changing the Makefile and add a "DEFINES += -DVMDEBUG"
just after "DEFINES += -DDVDSUPPORT". It should read then:
ifdef DVD
DEFINES += -DDVDSUPPORT
DEFINES += -DVMDEBUG
DEFINES += -D_LARGEFILE64_SOURCE # needed by libdvdread
SHLIBS += -ldvdread
OBJS += dvd.o decoder.o vm.o vmcmd.o
endif
5. Crashes
Crashes in vm.c, vmcmd.c or decoder.c are in the navigation stuff. This has
been taken from ogle. Those problems I can not fix. I can only determin
wether a work arround is possible if not, your out of luck.
Some examples:
*** Zero check failed in ifo_read.c:301
for vmgi_mat->zero_3 = 0x00000000010000000000000000000000000000
libdvdread: Using libdvdcss.so.2 for DVD access
vdr: nav_read.c:205: navRead_DSI: Assertion `dsi->dsi_gi.zero1 == 0' failed.
Aborted
To be continued ...
Andreas
--
Andreas Schultz <aschultz@cs.uni-magdeburg.de>
Student of computer science
"In accordance with plans for Linux OS world domination
infiltration of governments is vital (:-))."
Home |
Main Index |
Thread Index