#1 Burning Software

It is currently Wed Dec 18, 2024 10:38 pm

All times are UTC




Post new topic Reply to topic  [ 9 posts ] 
Author Message
 Post subject: Detection of copy protected disks / unreadable disks
PostPosted: Thu Oct 22, 2009 1:15 pm 
Offline

Joined: Wed Jun 17, 2009 10:11 am
Posts: 6
Hi all.

I read ISO images from CDs and DVDs with the paid version of the StarBurn SDK using the GrabTrack function. In general this works ok, but there are DVDs (some of them are copy protected, some of them are simply unreadable at a certain locations) which generate a lot of trouble:

Before I explain how the Starburn SDK behaves, allow me to tell what NERO 7 does in the same situation (Same pc, same drive, same disk):

1) With a copy protected video DVD, NERO will report "This disk is copy protected and cannot be read" quite at the BEGINNING of the reading process.

2) With a partially unreadable disk NERO will read until it reaches an unreadable position and after a few seconds it will report the reading error and stop reading process.

In contrast to that a call to Grabtrack with a copy protected DVD will start and at the first glance will do as if the disk could be read (callbacks with the reading progress come). Then at some time (say 30% of the disk read) the reading process will stop, i.e. the drive led is off and the disk stops to spindle. However, the call to Grabtrack will NOT terminate and the sytem will hang forever.

The same happens with a partially unreadable disk. GrabTrack will start the reading process until it reaches the undreadable location and then hang with the same symptons as with the copy protected disks.

In both cases p__LONG__Retries is set to "1" and p__BOOLEAN__IsBadBlockIgnore and p__BOOLEAN__IsSingleLBTransferForced are set to "false".

Please note that I do not ask for any help on how to copy copy-protected disks! I need a workaround for the system hangs !!!

How do I tell the SDK

a) to identify a copy protected disk so that I can generate a appropiate error message ?

b) to stop the reading process when it detects unreadable locations on the disk and to terminate the call to GrabTrack?

Thanks in advance for your help.
Ulrich Bangert


Top
 Profile  
 
 Post subject: Re: Detection of copy protected disks / unreadable disks
PostPosted: Thu Oct 22, 2009 4:35 pm 
Offline
Site Admin

Joined: Fri Jun 18, 2004 12:03 am
Posts: 4089
Location: British Virgin Islands
1) There's a nice call StarBurn_CdvdBurnerGrabber_GetDVDProtectionSystem(...) doing pretty much what you want. Check it and
set of definitions DVD_PROTECTION_XXX. Key to your issue :)

2) API call you use should return with failure if you set "p__BOOLEAN__IsBadBlockIgnore" parameter to FALSE. So I'd like to see StarBurn logs to find out where StarBurn core locks up. I suspect you use TRUE and core simply does a long and painful read of scrambled and unreadable blocks in a loop. May look like a hang. Which is really not.

3) It would be better if you'd parse TOC (not a big deal for single track DVD-Video with encryption) and use set of calls to

- Find out is disc protected or not (key point for you)

- If it's CSS protected you have to issue StarBurn_CdvdBurnerGrabber_AuthorizeDVD(...) or StarBurn_CdvdBurnerGrabber_AuthorizeDVDEx(...) API call to "unlock" the disc (in this case you'll be able to READ scrambled CSS sectors, for unauthorized disc you'll get slow processed and painful read errors)

- Issue a serie of the StarBurn_ISO9660JolietFileTree_Read(...) calls in a loop to read the content. You'll be able to manually
process unprotected and protected discs in the different way.


Top
 Profile  
 
 Post subject: Re: Detection of copy protected disks / unreadable disks
PostPosted: Thu Oct 22, 2009 4:36 pm 
Offline
Site Admin

Joined: Fri Jun 18, 2004 12:03 am
Posts: 4089
Location: British Virgin Islands
With scrambled content you'll be able to do what you want - run CSS cracker over it or just keep it AS IS. It's up to you :)


Top
 Profile  
 
 Post subject: Re: Detection of copy protected disks / unreadable disks
PostPosted: Fri Oct 23, 2009 1:19 pm 
Offline

Joined: Wed Jun 17, 2009 10:11 am
Posts: 6
Anton,

the first part of your answer concerning the detection of copy protection has already helped me a lot and I have already included it in my application.

I have just send a log file for the hang in case of unreadable locations to your support email address.

Best regards
Ulrich Bangert


Top
 Profile  
 
 Post subject: Re: Detection of copy protected disks / unreadable disks
PostPosted: Fri Oct 23, 2009 1:30 pm 
Offline
Site Admin

Joined: Fri Jun 18, 2004 12:03 am
Posts: 4089
Location: British Virgin Islands
Checked the log. Indeed it's drive blocking read of unauthorized disc inside scrambled region. If you'll follow my post above you'll workaround such a situation :)


Top
 Profile  
 
 Post subject: Re: Detection of copy protected disks / unreadable disks
PostPosted: Sat Oct 24, 2009 12:49 pm 
Offline

Joined: Wed Jun 17, 2009 10:11 am
Posts: 6
Anton,

how can this be?

The GetCopyProtection function says the disk is NOT copy protected (return value = 0) and my try call to AuthorizeDVD fails (most possibly BECAUSE it is not CSS protected). My log says:

StarBurn_CdvdBurnerGrabber_AuthorizeDVD() failed, exception 8, status 0, text "CStarBurn_ScsiTransportSPTI::ExecuteCDB(): Command failed"

Best regards
Ulrich Bangert


Top
 Profile  
 
 Post subject: Re: Detection of copy protected disks / unreadable disks
PostPosted: Sat Oct 24, 2009 1:15 pm 
Offline
Site Admin

Joined: Fri Jun 18, 2004 12:03 am
Posts: 4089
Location: British Virgin Islands
Since you've provided ZERO logs I have no clue what particular command failed and what you did wrong. Logs are for me and not for you so please don't quote them and provide full one. Thanks!


Top
 Profile  
 
 Post subject: Re: Detection of copy protected disks / unreadable disks
PostPosted: Mon Oct 26, 2009 7:31 am 
Offline

Joined: Wed Jun 17, 2009 10:11 am
Posts: 6
Anton,

there is no need to get upset. Attached is my log.

Best regards
Ulrich Bangert


Top
 Profile  
 
 Post subject: Re: Detection of copy protected disks / unreadable disks
PostPosted: Mon Oct 26, 2009 8:40 am 
Offline
Site Admin

Joined: Fri Jun 18, 2004 12:03 am
Posts: 4089
Location: British Virgin Islands
From the log I see:

1) GetDVDProtectionSystem(...) call was OK. What did it return to you? (From now I've added trace result into the logger).

2) AuthorizeDVD(...) failed with "authentication error - no key present" at some step. I'll add more trace messages to find out where but
why did you proceed with reading if authorization of protected disc (I guess) had failed? It does not make sense...

***

CStarBurn_CdvdBurnerGrabber::GetDVDProtectionSystem(): ENTERed

CStarBurn_CdvdBurnerGrabber::GetDVDProtectionSystem(): EXITing with success

CStarBurn_CdvdBurnerGrabber::GetKeysForCSS(): Bus Key: 0x6C 0xB7 0xB3 0x5B 0xFD

CStarBurn_ScsiTransportSPTI::ExecuteCDB(): Command failed

SCSI Status: 0x02, CDB Length: 12, CDB Dump: 0xAD 0x00 0x00 0x00 0x00 0x00 0x00 0x02 0xF0 0x00 0xC0 0x00 0x00 0x00 0x00 0x00

SCSI sense data dump:
Error Code: 0x70, Is Sense Valid: No, Segment Number: 0x00 (0)
Sense Key: 0x05, Reserved: 0x00, Incorrect Length: No
End Of Media: No, File Mark: No, Information: 0x00 0x00 0x00 0x00
Additional Sense Length: 0x0A (10)
Command Specific Information: 0x00 0x00 0x00 0x00
Additional Sense Code (ASC): 0x6F, Additional Sense Code Qualifier (ASCQ): 0x01


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 9 posts ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 21 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group