Creating HD DVD images to rip from

Discussion in 'AnyDVD HD (Blu-ray issues)' started by fatcat888, Oct 10, 2018.

  1. fatcat888

    fatcat888 Member

    As many who have tried to rip their HD DVD collections know, Warner HDDVD titles are notorious for bad discs, sometimes confusingly referred to as 'bit-rot.'

    Is it possible to use a tool like ddrescue or isobuster's .ibg managed image file feature to take multiple bad discs and read a complete set of good blocks to create a good .iso that AnyDVD HD could process?

    Is that concept even feasible, and if not would the AnyDVD HD designers consider adding a "multiple disc recovery" option?

    [Another feature which would be fantastic is if for rotting HD DVD or BD (or even DVD) a recovery checksum file could be created and imported -- used to recover bad discs. I think such features would boost the proper perception that AnyDVD users are really using the product for their own media backup. See the old 'dvdisaster' project for a clearer explanation of how a smaller file could be shared that would help recover an bad HD-DVD.]

    See:
    https://www.isobuster.com/help/create_and_complete_a_managed_image_file
    https://www.isobuster.com/help/change_or_test_managed_image_file_properties
     
  2. StoneyJSG

    StoneyJSG Well-Known Member

    I think once a disc is bad, it's bad. Recovering only certain sectors or blocks would probably render the resulting disc or ISO file unusable. Why are you messing with HD DVD though? That format is dead.
     
  3. James

    James Redfox Development Team Staff Member

    You could use isobuster together with AnyDVD.
     
    nebostrangla likes this.
  4. fatcat888

    fatcat888 Member

    Thank you James.

    I'll try it.

    Is there any room in your development budget to improve any of the HD DVD ripping aspects? Do you have any staff left that remember much about them?

    I ask because there is a whole set of titles, mostly European, with a different-than-typical authoring style which MakeMKV won't rip. If I find sets like this with AnyDVD HD is there any hope that the code might be improved upon?
     
  5. theosch

    theosch Well-Known Member


    Yes you could try out GNU ddrescue (e.g. called as "gddrescue" package in Ubuntu or Debian GNU/Linux <=after installed, afaik in Linux-console window listed as "ddrescue".

    I have got very good Results with ddrescue: For other: This is only for Blu-rays without Bus-encryption and for obselete HD-DVD format, which most probably doesn't make use of Bus encryption, and CDs and DVDs, and for HDDs, FLoppy drives of course :)

    In ddrescue when a mapfile is specified, you can stop and resume the rescue process at any time, eg. very useful when inserting Disc and rescueing further via different optical drives. The mapfile stores information of bad sectors (sector addresses from bad sectors, which bad sectors were recovered etc.)

    https://www.gnu.org/software/ddrescue/manual/ddrescue_manual.html

    EXAMPLES:

    (Step 1): Reading only good sectors, and afaik small contiguos area segments of multiple easily recoverable sectors, skipping both, the trimming and the scraping phase

    Code:
     ddrescue  --sector-size=2048  -N  -n   -v -v   /dev/sr0    Star_Trek_Enterprise_S1_DISC1_STE_S1_D1.iso   mapfile_Star_Trek_Enterprise_S1_DISC1_STE_S1_D1.log 
    "-N, --no-trim : Skip the trimming phase. Especially useful in the first parts of a multi-part rescue."

    "-n, --no-scrape : Skip the scraping phase. Avoids spending a lot of time trying to rescue the most difficult parts of the file"
    ----
    (Step 2): Resuming further rescue attempt, with trimming, but without scraping
    Code:
    ddrescue  --sector-size=2048  -n  -v -v  /dev/sr0  Star_Trek_Enterprise_S1_DISC1_STE_S1_D1.iso  mapfile_Star_Trek_Enterprise_S1_DISC1_STE_S1_D1.log 
    ----
    (Step 3): With scraping, but without trimming, trimming was done before in previous step (step 2).
    Code:
    ddrescue  --sector-size=2048  -N  --complete-only  -v -v  /dev/sr0  Star_Trek_Enterprise_S1_DISC1_STE_S1_D1.iso    mapfile_Star_Trek_Enterprise_S1_DISC1_STE_S1_D1.log 

    You also could remove "-N" parameter away in this step 3, as trimming was done in step 2, and in the mapfile from step 2 the trimming results are marked and stored, so in step 3 after done step 2 ,ddrescue also knows without -N parameter, that it don't need to trim (again).

    -N, --no-trim : Skip the trimming phase. Especially useful in the first parts of a multi-part rescue.

    -n, --no-scrape : Skip the scraping phase. Avoids spending a lot of time trying to rescue the most difficult parts of the file

    (Step 4):
    Code:
    ddrescue  --sector-size=2048  --complete-only  --retry-passes=3  -v -v  /dev/sr0  Star_Trek_Enterprise_S1_DISC2_STE_S1_D1.iso  mapfile_Star_Trek_Enterprise_S1_DISC1_STE_S1_D1.log 
    "--retry-passes=n: Exit after the given number of retry passes. Defaults to 0. -1 means infinity. Every bad sector is tried only once in each pass. To retry bad sectors detected on a previous run, you must specify a non-zero number of retry passes."

    (5th step): repeating 2nd step but reading backward, which helped a bit on a few of the most stubborn sectors
    Code:
    ddrescue  --sector-size=2048  --complete-only  -R  --retry-passes=3  -v -v  /dev/sr0  Star_Trek_Enterprise_S1_DISC2_STE_S1_D1.iso  mapfile_Star_Trek_Enterprise_S1_DISC1_STE_S1_D1.log 
    --

    In some cases it rescued further sectors with retrimming
    Code:
    ddrescue  --sector-size=2048  --complete-only  --retrim  --try-again   -v -v  /dev/sr0  Star_Trek_Enterprise_S1_DISC2_STE_S1_D1.iso  mapfile_Star_Trek_Enterprise_S1_DISC1_STE_S1_D1.log 
    In some cases that rescued further stubborn sectors.


    "-M, --retrim : Mark all failed blocks inside the rescue domain as non-trimmed before beginning the rescue. The effect is similar to '--retry-passes=1', but the bad sectors are tried in a different order, making perhaps possible to rescue some of them."

    "-A, --try-again : Mark all non-trimmed and non-scraped blocks inside the rescue domain as non-tried before beginning the rescue. Try this if the drive stops responding and ddrescue immediately starts scraping failed blocks when restarted. If '--retrim' is also specified, mark all failed blocks inside the rescue domain as non-tried."

    --complete-only : means when e.g. resuming the process in a drive which report higher (wrong) sector count (bigger disc occuppied space than actually is), this helps.

    "Ddrescue aligns its I/O buffer to the sector size so that it can be used for direct disc access or to read from raw devices. For efficiency reasons, also aligns it to the memory page size if page size is a multiple of sector size. On some systems, ddrescue can't determine the size of a raw device, so an explicit '--size' or '--complete-only' option may be needed."

    "--complete-only : Limit rescue domain to the blocks listed in the mapfile. Don't read new data beyond mapfile limits. This is useful when reading from devices of undefined size (like raw devices), when the drive returns an incorrect size, or when reading from a partial copy. It can only be used after a first rescue attempt, possibly limited with the '--size' option, has produced a complete mapfile."

    "-R, --reverse : Reverse the direction of all passes (copying, trimming, scraping and retrying). Every pass that is normally run forwards will now be run backwards, and vice versa. '--reverse' does not modify the size of the blocks copied during each phase, just the order in which they are tried."
     
    Last edited: Oct 11, 2018
  6. fatcat888

    fatcat888 Member

    Thanks for the details theosch.

    But will ddrescue be able to read a typical HD DVD which is encrypted? I am thinking I would need to have AnyDVD HD as a "wedge", decrypting the data first, no? And there is no AnyDVD HD for Linux is there?



     
  7. theosch

    theosch Well-Known Member

    Yes ddrescue will read the HD-DVD, the (raw data) to a raw image. That raw image will be playable with further steps (see here further below in this post) =>
    No there's no AnyDVD for Linux, but that's not the issue. You don't need AnyDVD for the ddrescue operation. ddrescue copies like "dd" only the raw data bit-for-bit / sector-by-sector.
    I'd assume when rescueing it could even hinder to try to rescue bad sectors, because it's decrypting alongway (and the bad sectors can't be used in the decryption), while decrypting the rest of the HD-DVD would happen, because that would mix up decrypted readable sectors with UNdedcrypted (not readable) sectors into the resulting image.
    Or it might happen in rare cases that problematic sectors overlay with Disc encryption structure.

    I'd guess that would be a more corrupted image, but not sure as James suggested to try ISO-Buster with AnyDVD.
    Maybe ISO-Buster as suggested is also good idea, maybe better. I'm not sure whether it's better to use ISOBuster alone or combined with AnyDVD, I had expected ISO-Buster alone, similar procedure as with ddrescue (see below)

    Whatever it is.

    So at first with ddrescue you rescue all raw data (without any decryption).
    After hopefully 100% recovered, then after that you can mount the (still encrypted) ISO in Virtual Drive while AnyDVD running to do then the decryption you copy to last final image.
    Did this way with a 100% recovered ddrescue image, mounted in Virtual Drive, AnyDVD decrypting without issues :)

    --
    Note:
    My theory could be wrong to not use ISO-Buster with AnyDVD combined.
    Also tested with a partly (not fully) recovered image by "ddrescue" from a damaged Blu-ray. Afterwards decrypting with AnyDVD also appeared to work. Didn't want to spend time to time to play whole disc to check for any anomalies. Maybe that special test went so flawlessly, because the remaining bad sectors from partly rescued image didn't belong to filesystem and/or encryption and/or Java / region code structure etc.

    Nonetheless at least with ddrescue, I can say you can't go wrong using AnyDVD after "ddrescue" operation.
    --
    Several Optical drives might help.
    And if you have the 100% identcial HD-DVD movie disc 2nd time, can be used for ddrescue operation. Especially helpful when the movie title version is sold often badly manufactured.

    General tip: In case buying a new movie disc, try ripping it at once, and if the disc is not fully readable, always make a ddrescue (even partial) backup. Then after that within those 14 days give complaint to seller to get another disc from same (identical) version. Check the numbered code that the replacement is fully identical (except there are bad sector at maybe other places).Test if this rips fully. If not, you can recover from 2nd (partly) ddrescue image from 1st image from 1st disc you had sent back. In many cases this can help, as it is rather unlikely that the replacement disc, if faulty, has bad bad sector at same/ at same all places.

    Did that one time, and the replacement disc in fact had bad sectors at other areas.
    This is not possible with "ddrescue" with BDs with Bus encryption UHD Blu-rays though, because they use bus encryption, you have to use AnyDVD for recovery try (keep protection (? ). AnyDVD+ISO-Buster (if that is possible).
     
    Last edited: Oct 11, 2018