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
535 stars 45 forks source link

"Broken" by Nine Inch Nails fails to dump with "Internal error. Failed to analyze the subchannel." #82

Open TheRogueArchivist opened 3 years ago

TheRogueArchivist commented 3 years ago

Describe the bug When dumping a specific CD, DIC fails to analyze the subchannel of a specific track and stops running. The disc is a CD-DA, "Broken" by Nine Inch Nails. Example: https://www.ebay.com/itm/202942953096

Screenshots Paste command-line text.

AppVersion
    x86, AnsiBuild, 20210701T212154
/c2 val2 was omitted. set [0]
CurrentDirectory
    J:\MPF
WorkingPath
     Argument: ISO\Audio CD\Audio CD.bin
     FullPath: J:\MPF\ISO\Audio CD\Audio CD.bin
        Drive: J:
    Directory: \MPF\ISO\Audio CD\
     Filename: Audio CD
    Extension: .bin
StartTime: 2021-08-02T11:46:56-0600
Set the drive speed: 12700KB/sec
This drive supports [OpCode: 0xd8, SubCode: 1]
This drive supports [OpCode: 0xd8, SubCode: 2]
This drive supports [OpCode: 0xd8, SubCode: 8]
Checking reading lead-out -> OK

Checking SubQ adr (Track) 99/99

Checking SubRtoW (Track) 99/99
Set OpCode: 0xd8, SubCode: 8(Raw)

Creating .scm (LBA) 149074/149075
[L:1342] Internal error. Failed to analyze the subchannel. Track[08]/[99]

Log file DIC Logs.zip

saramibreak commented 3 years ago

I got the disc but it was another version (IFPI L238 D100145 1H). Dumping is no problem.

Subchannel of your disc is weird. RMSF is duplicated. I can't fix now.


LBA[094569, 0x17169]: P[ff], Q[01070100007300210269bf8d]{Audio, 2ch, Copy NG, Pre-emphasis No, Track[07], Idx[01], RMSF[00:00:73], AMSF[21:02:69]}, RtoW[0, 0, 0, 0]
LBA[094570, 0x1716a]: P[ff], Q[010800000000002102701046]{Audio, 2ch, Copy NG, Pre-emphasis No, Track[08], Idx[00], RMSF[00:00:00], AMSF[21:02:70]}, RtoW[0, 0, 0, 0]
LBA[094571, 0x1716b]: P[ff], Q[010800000000002102710067]{Audio, 2ch, Copy NG, Pre-emphasis No, Track[08], Idx[00], RMSF[00:00:00], AMSF[21:02:71]}, RtoW[0, 0, 0, 0]
LBA[094572, 0x1716c]: P[ff], Q[0200756792213260007290a7]{Audio, 2ch, Copy NG, Pre-emphasis No, MediaCatalogNumber [0075679221326], AMSF[     :72]}, RtoW[0, 0, 0, 0]
LBA[094573, 0x1716d]: P[ff], Q[0108010000000021027367f6]{Audio, 2ch, Copy NG, Pre-emphasis No, Track[08], Idx[01], RMSF[00:00:00], AMSF[21:02:73]}, RtoW[0, 0, 0, 0]
LBA[094574, 0x1716e]: P[00], Q[01080100000100210274bd40]{Audio, 2ch, Copy NG, Pre-emphasis No, Track[08], Idx[01], RMSF[00:00:01], AMSF[21:02:74]}, RtoW[0, 0, 0, 0]
LBA[094575, 0x1716f]: P[00], Q[01080100000100210300b062]{Audio, 2ch, Copy NG, Pre-emphasis No, Track[08], Idx[01], RMSF[00:00:01], AMSF[21:03:00]}, RtoW[0, 0, 0, 0]
LBA[094576, 0x17170]: P[ff], Q[010801000002002103014e91]{Audio, 2ch, Copy NG, Pre-emphasis No, Track[08], Idx[01], RMSF[00:00:02], AMSF[21:03:01]}, RtoW[0, 0, 0, 0]
Feathered-Serpent commented 2 years ago

Because I was curious, I got myself that funny disc as well (IFPI L008 07314 514 147-2 02 # 51558392 A. Made in Germany by EDC).

Don't have any problems dumping it. Logs.zip

tjanas commented 2 years ago

The same error occurs with a disc 3 of this audio CD box set, where the disc has the following mastering code:

wea mfg. OLYPHANT   3364 2 62123-2.3 01

with mastering SID of ifpi L902, toolstamp M1S8, and mould SID IFPI 2U7D

The error occurs with at least two different DIC releases (20220606 and 20221101), and two different drives (ASUS BW-16D1HT and PLEXTOR PX-W4824).

I tried providing /s 2 as a command line argument, but that did not make a difference. Attached: logs.zip

saramibreak commented 2 years ago

DiscImageCreator_test.zip Added log message into _subinfo.txt. Please upload logs.

tjanas commented 2 years ago

DiscImageCreator_test_logs.zip

saramibreak commented 2 years ago

Deleted uncertain code (I've not tested). DiscImageCreator_test.zip

tjanas commented 2 years ago

Deleted uncertain code (I've not tested). DiscImageCreator_test.zip

This worked! How did you fix it? logs_20220609T174053.zip

saramibreak commented 2 years ago
LBA[148742, 0x24506]: P[ff], Q[011101025473003305178be0]{Audio, 2ch, Copy NG, Pre-emphasis No, Track[11], Idx[01], RMSF[02:54:73], AMSF[33:05:17]}, RtoW[0, 0, 0, 0]
LBA[148743, 0x24507]: P[ff], Q[01120000000000330518f51a]{Audio, 2ch, Copy NG, Pre-emphasis No, Track[12], Idx[00], RMSF[00:00:00], AMSF[33:05:18]}, RtoW[0, 0, 0, 0]
LBA[148744, 0x24508]: P[ff], Q[02007559621232800019f5de]{Audio, 2ch, Copy NG, Pre-emphasis No, MediaCatalogNumber [0075596212328], AMSF[     :19]}, RtoW[0, 0, 0, 0]
LBA[148745, 0x24509]: P[ff], Q[011201000000003305200592]{Audio, 2ch, Copy NG, Pre-emphasis No, Track[12], Idx[01], RMSF[00:00:00], AMSF[33:05:20]}, RtoW[0, 0, 0, 0]
LBA[148746, 0x2450a]: P[00], Q[01120100000100330521bfe2]{Audio, 2ch, Copy NG, Pre-emphasis No, Track[12], Idx[01], RMSF[00:00:01], AMSF[33:05:21]}, RtoW[0, 0, 0, 0]

"Idx" of the LBA 148744 is "0" internally, but old DIC version set "1". I fixed it so that "0" was set.

But "INDEX 01 00:00:255" of the cue file is incorrect due to very short pregap. "(Subs indexes).cue" or "(Subs indexes)_img.cue" are only valid for this disc.

                 :
FILE "The Doors Box Set (Disc 3) (Track 02).bin" BINARY
  TRACK 02 AUDIO
    INDEX 00 00:00:00
    INDEX 01 00:00:255
                 :
FILE "The Doors Box Set (Disc 3) (Track 04).bin" BINARY
  TRACK 02 AUDIO
    INDEX 00 00:00:00
    INDEX 01 00:00:255
                 :
FILE "The Doors Box Set (Disc 3) (Track 07).bin" BINARY
  TRACK 07 AUDIO
    INDEX 00 00:00:00
    INDEX 01 00:00:255
                 :
FILE "The Doors Box Set (Disc 3) (Track 10).bin" BINARY
  TRACK 10 AUDIO
    INDEX 00 00:00:00
    INDEX 01 00:00:255
                 :
FILE "The Doors Box Set (Disc 3) (Track 12).bin" BINARY
  TRACK 12 AUDIO
    INDEX 00 00:00:00
    INDEX 01 00:00:255

136

tjanas commented 2 years ago

I see, is there some incorrect arithmetic resulting in a negative offset for those index 01 positions that's ultimately converted to an unsigned number (00:56:28 -> 00:56:27)?

Should DIC throw an error if it ever produces cue sheet entries like that?

The Doors Box Set (Disc 3)_img.cue:

                 :
  TRACK 02 AUDIO
    INDEX 00 00:56:28
    INDEX 01 00:56:27
                 :
  TRACK 04 AUDIO
    INDEX 00 12:15:23
    INDEX 01 12:15:22
                 :
  TRACK 07 AUDIO
    INDEX 00 21:29:33
    INDEX 01 21:29:32
                 :
  TRACK 10 AUDIO
    INDEX 00 27:37:68
    INDEX 01 27:37:67
                 :
  TRACK 12 AUDIO
    INDEX 00 33:03:18
    INDEX 01 33:03:17
saramibreak commented 2 years ago

What kinds of error do you want? Do not dump the disc? Do not generate the cue? Do not write the INDEX 00? Cue is generated as is and only show the error message?

tjanas commented 2 years ago

Good question. Perhaps do not write the INDEX 00 and log the error in mainError.txt?