saramibreak / DiscImageCreator

This is the disc (CD, GD, DVD, HD-DVD, BD, GC/Wii, XBOX, XBOX 360) and disk (Floppy, MO, USB etc) image creation tool
http://forum.redump.org/topic/10483/discimagecreator/
Apache License 2.0
530 stars 45 forks source link

Allow skipping of bad sectors/force RipGuard detection on Video DVD #169

Closed Feathered-Serpent closed 1 year ago

Feathered-Serpent commented 1 year ago

Is your feature request related to a problem? Please describe. I do have a very few Video DVDs which don't have Ripguard (or at least it's not detected), but do still have thousands of defect sectors. Like this DVD: grafik Every underscore is a defect or currently skipped sector from the program h2cdimage.

Describe the solution you'd like It would be nice to have a switch for DVD ripping which allows DCI to try a number of retries on a defect sector, and if still not able to read, just continue with the next one. Or at least a parameter, which forces DCI to handle the disc like one with RipGuard, thus skipping a few sectors and read backwards (I wonder if the amount of skipped sectors should be configurable too?)

Describe alternatives you've considered Try to find out, why DCI doesn't see any protection in the DVD

Additional context One of the DVDs I have the problem with is Paddington (I only have the German version here): https://www.amazon.com/-/de/dp/B00QKCXER8/ref=sr_1_1?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&keywords=4006680072111&qid=1671782167&sr=8-1 The other movie is The Pink Panther from 2006 (also German version, from the Pink Panther Collection, but it's also to be found solo): https://www.amazon.com/-/de/dp/B000GYJUTC/ref=sr_1_1?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&keywords=B000GYJUTC&qid=1671782630&sr=8-1 I added the disc and CSS key file from an attempt on Paddington I made with DIC. It should write "Detected protection [MVSNRGFP]" if it would have found RipGuard in the disc file, but as you can see, it didn't. The file ends after "Outputted to _xxxKey.txt" because the dump didn't finish.

_PADDINGTON__CSSKey.txt _PADDINGTON__disc.txt

saramibreak commented 1 year ago

The Pink Panther from 2006

Which version you have? https://www.amazon.com/Pink-Panther-Kevin-Kline/dp/B000FBH3V8/ref=tmm_dvd_swatch_0?_encoding=UTF8&qid=1671782630&sr=8-1

Feathered-Serpent commented 1 year ago

That's difficult to tell, because my movies are within a collection: https://pictures.silentstrider.net/upload/2022/12/30/20221230085009-e341e09c.jpg

I do not have a single cover for the DVD to tell, which one it would be as the discs are piled up in jewel cases on the collection :-/ Can only show you how the disc itself does look and what's written onto it. Btw there is no visible ring or anything on the data side to be see.

saramibreak commented 1 year ago

Try https://github.com/mnadareski/BurnOutSharp

Feathered-Serpent commented 1 year ago

Found another disc which might be easier to be gotten. https://www.amazon.com/s?k=4030521449541&__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&ref=nb_sb_noss also gives me a hard time. Added _css and _disc file for that before DIC stopped because of retry count reached. MakeMKV was able to create a (decrypted) ISO out of it. Though as you might guess I'd like to have untampered ISOs (or at least as much untampered as possible).

Spider-Man 3_disc.txt Spider-Man 3_CSSKey.txt

BurnOutSharp on that disc doesn't find anything. Neither on the Pink Panther DVD. Running the DVDauth tool before BurnOutSharp only causes the latter one to take longer, but doesn't change the outcome.

Interestingly BurnOutSharp also doesn't detect anything on a DVD where DIC does (Detected protection [MVSNRGFP]).

saramibreak commented 1 year ago

https://en.wikipedia.org/wiki/List_of_Compact_Disc_and_DVD_copy_protection_schemes Perhaps your dvds don't have RipGuard. I'm not sure but Sony ARccOS Protection uses unreadable/bad/corrupted sectors.

Feathered-Serpent commented 1 year ago

Judging from my ignorant programming knowledge, arccos should be detected by DIC I guess?

Is there anything I could see with sector view of certains LBAs that could help to find more information?

saramibreak commented 1 year ago

I have its protection dvd (Stranger than fiction), but I can't find the identifier like "MVSNRGFP" of RipGuard.

saramibreak commented 1 year ago

May I upload all logs of Paddington, The Pink Panther, Spider-Man 3?

Feathered-Serpent commented 1 year ago

This is all I have from these discs made from DIC: Logs.zip

saramibreak commented 1 year ago

Test please. DiscImageCreator_test.zip

Feathered-Serpent commented 1 year ago

Tested on the first disc (Paddington), took a bit over 8 hours, but it finished: PADDINGTON.zip

Running it now on Spider-Man 3 for a second test.

Feathered-Serpent commented 1 year ago

and Spider-Man 3 (took "only" 5 hours): Spiderman.zip

saramibreak commented 1 year ago

It works as I expected.

Feathered-Serpent commented 1 year ago

It seems that DIC always skips 100 sectors. Do you think it's useful to give an option to alter this amount via a parameter?

saramibreak commented 1 year ago

DiscImageCreator_test.zip Added /sk

If you set /sk 100, it skips 100 sectors.

Feathered-Serpent commented 1 year ago

Works semi-fine. setting /sk uses the given amount, though not setting it defaults the value to 1

LBA[316000, 0x4d260]: [F:ReadDVD][L:335]
        Opcode: 0xa8
        ScsiStatus: 0x02 = CHECK_CONDITION
        SenseData Key-Asc-Ascq: 03-11-05 = MEDIUM_ERROR - L-EC UNCORRECTABLE ERROR
Set 1st error LBA
LBA[316001, 0x4d261]: [F:ReadDVD][L:335]
        Opcode: 0xa8
        ScsiStatus: 0x02 = CHECK_CONDITION
        SenseData Key-Asc-Ascq: 03-11-05 = MEDIUM_ERROR - L-EC UNCORRECTABLE ERROR
LBA[316002, 0x4d262]: [F:ReadDVD][L:335]
        Opcode: 0xa8
        ScsiStatus: 0x02 = CHECK_CONDITION
        SenseData Key-Asc-Ascq: 03-11-05 = MEDIUM_ERROR - L-EC UNCORRECTABLE ERROR
LBA[316003, 0x4d263]: [F:ReadDVD][L:335]
        Opcode: 0xa8
        ScsiStatus: 0x02 = CHECK_CONDITION
        SenseData Key-Asc-Ascq: 03-11-05 = MEDIUM_ERROR - L-EC UNCORRECTABLE ERROR
LBA[316004, 0x4d264]: [F:ReadDVD][L:335]
        Opcode: 0xa8
        ScsiStatus: 0x02 = CHECK_CONDITION
        SenseData Key-Asc-Ascq: 03-11-05 = MEDIUM_ERROR - L-EC UNCORRECTABLE ERROR
saramibreak commented 1 year ago

though not setting it defaults the value to 1

Yes, I changed default to 1.

Feathered-Serpent commented 1 year ago

Then it's working as intented :)