Q: Problem viewing DVD w/xine, libdvdcss

From: Len Budney (lbudney_at_pobox.com)
Date: 08/16/03


Date: 16 Aug 2003 08:53:04 -0700

Hello,

This problem is most annoying! I can play some titles on some DVDs,
but not other titles--including some on the same DVDs--apparently
because libdvdcss fails to extract the key.

I'm using libdvdcss 1.2.8 with xine 0.9.22 (but get the same results
with ogle and VideoLAN), on a RedHat 8.0 box running custom kernel
2.4.21, with ide-scsi enabled (but get similar results with it
disabled).

I'm trying to play Bablylon 5, season 2, disc 1. Since the bad track
on disc 1 is the first track (apparently), I can't get any farther:
when I try to play any episodes, xine crashes. On disc 2, I can play
three of the four episodes--and xine doesn't even attempt to crack
those three title keys using brute force. When I try to play the one
bad track, xine locks up.

Setting DVDCSS_VERBOSE=2, I get the following output when trying to
watch disc 1:

libdvdread: Get key for /VIDEO_TS/VTS_02_1.VOB at 0x003d000b
libdvdcss debug: getting title key the classic way
libdvdcss debug: requesting AGID
libdvdcss debug: drive authenticated, using variant 0
libdvdcss debug: authentication established
libdvdcss debug: ioctl ReadTitleKey failed (region mismatch?)
libdvdcss debug: GetASF not authenticated, ASF=0
libdvdcss debug: lost ASF requesting title key
libdvdcss debug: resetting drive and cracking title key
libdvdcss debug: requesting AGID
libdvdcss debug: ioctl ReportAgid failed, invalidating AGID 0
libdvdcss debug: requesting AGID
libdvdcss debug: drive authenticated, using variant 0
libdvdcss debug: authentication established
libdvdcss debug: GetASF authenticated, ASF=1
libdvdcss debug: decrypting disc key with player keys
libdvdcss debug: decrypted disc key is 21:37:97:06:c9
libdvdcss debug: cracking title key
libdvdcss error: read error
libdvdcss debug: read error, resorting to secret arcanes to recover
...

In /var/log/messages, I find the following messages:

Aug 16 11:43:11 budney kernel: hdc: ATAPI reset complete
Aug 16 11:43:18 budney kernel: hdc: cdrom_decode_status: status=0x51 {
DriveReady SeekComplete Error }
Aug 16 11:43:18 budney kernel: hdc: cdrom_decode_status:
error=0x30LastFailedSense 0x03
Aug 16 11:43:25 budney kernel: hdc: cdrom_decode_status: status=0x51 {
DriveReady SeekComplete Error }
Aug 16 11:43:25 budney kernel: hdc: cdrom_decode_status:
error=0x30LastFailedSense 0x03
Aug 16 11:43:33 budney kernel: hdc: cdrom_decode_status: status=0x51 {
DriveReady SeekComplete Error }
Aug 16 11:43:33 budney kernel: hdc: cdrom_decode_status:
error=0x30LastFailedSense 0x03
Aug 16 11:43:33 budney kernel: hdc: ATAPI reset complete
Aug 16 11:43:33 budney kernel: end_request: I/O error, dev 16:00
(hdc), sector 15990844

The previous log was just generated, where I turned off ide-scsi. With
ide-scsi enabled, I get the following syslog messages instead:

Aug 16 10:14:19 budney kernel: scsi0: ERROR on channel 0, id 0, lun 0,
CDB: Request Sense 00 00 00 40 00
Aug 16 10:14:19 budney kernel: Current sd0b:00: sense key Medium Error
Aug 16 10:14:19 budney kernel: Additional sense indicates CIRC
unrecovered errorAug 16 10:14:19 budney kernel: I/O error: dev 0b:00,
sector 15990824

The error is consistent, in that whatever episode I can't play, I
still can't play when I eject the disc, or even reboot the machine,
and try again. If it were a simple hardware problem, I'd expect the
error to crop up randomly, so the "bad episode" would change
sometimes.

Help!
Len.