Jump to content
Sign in to follow this  
Clavius

MDS Specifications?

Recommended Posts

Hi,

 

I just ripped a DL-DVD to an ISO/MDS and burned it back to a Verbatim DVD+R DL using ImBurn 1.2.0.0 on a Plextor 716A.

Then I ripped the fresh Burn to an ISO/MDS and compared these files to the original ISO/MDS expecting them to be identical.

 

The ISO from the Burn was a few Kb larger than the original ISO, but identical to this point. (Also mounted both ISOs wit DAEMON-Tools and compared again. Absolute identical (including the file sizes))

The two MDS had the same size but 3 differences in them.

 

So my questions are:

1. Why the different sizes of the ISOs

2. Why the differences in the MDSs

3. Is there a specification of the MDS-Format, so maybe I can understand the differences in them.

 

Thanks in advance

Clavius

 

 

(EDIT: The Idea was to make a CRC-checksum of the ISO for future use.)

Edited by Clavius

Share this post


Link to post
Share on other sites

Burning to DVD+ format media will always burn up to a sector that's divisible by 16.

 

So if you only burn 2 sectors, it'll still burn 0 - 15 when 0 - 1 is really sufficient.

As such, when you read it back, you've gained 14 sectors.

 

That difference would change the MDS file too - as would any other differences between source / destination disc. i.e. track path for DL media (although I'm guessing these were both OTP).

 

The MDS spec is not open source, sorry.

Share this post


Link to post
Share on other sites

I understand.

Thank you very much for explaining!

 

So, is there no way to create some kind of a checksum, in order to be able to verify the consistency of the data after some time when the ISO is no longer present on the Harddrive?

 

Clavius

Share this post


Link to post
Share on other sites

Only if you calculate it from the DVD+R image. It won't grow again after it's been burnt to DVD+R once.

 

So you'd need to burn and then read it back again. Do the checksum on that new image.

Share this post


Link to post
Share on other sites

I see!

Thanks a lot again!

 

Clavius

 

Btw: I love your program(s) for a long time now!

Thank you for your fantastic work!!!

Share this post


Link to post
Share on other sites

hello.

 

since this is my first post in the forums (registered a minute ago), i'd like to take this opportunity to thank you, Lightning UK!, for your work on this project as well as DVD Decrypter. wonderful programs!

:D:thumbup::king::clapping::cheerleader:

 

i have a few related questions to the above discussion on ISO/MDS files:

 

1. what happens if i burn to DVD+RW? same as DVD+R (as you described above)?

2. what happens if i burn to DVD-R, DVD-RW?

3. (not really a ImgBurn question bur a DVD Decrypter question, hope you can answer)

if i rip a DVD with Decrypter and again rip the same DVD, the ISO files are identical but the MDS files are not. why is that? what is the difference? should it concern me?

is it just an internal timestamp?

what happens if i use the ISO from the 1st rip and the MDS from the 2nd?

Edited by dodecahedron

Share this post


Link to post
Share on other sites

1. Yeah probably

2. They don't round up to 16 sectors

3. MDS contains ISO filename so unless you rip to the same file, they would be different.

Share this post


Link to post
Share on other sites

OK just to clarify:

 

2. so if i burn to DVD-R/DVD-RW the .ISO file should be identical to the original? making a CRC or MD5 checksum of the original .ISO image, the checksum should work (give correct result) on the burned copy, right?

 

3. so if i rip to another image with the same name (say in a different folder) the .MDS files should be identical?

Share this post


Link to post
Share on other sites

yeah, i did try it (right after i posted the question :blink: ) and it does work. identical MDS files.

 

thanks for the replies.

keep up the good work! :thumbup:

Share this post


Link to post
Share on other sites
Burning to DVD+ format media will always burn up to a sector that's divisible by 16.
Only if you calculate it from the DVD+R image. It won't grow again after it's been burnt to DVD+R once.

So you'd need to burn and then read it back again. Do the checksum on that new image.

I would like to know, how you have addressed this issue with the new md5-function in the new 2.0.0.0-version.

 

I just burned an image from my HD to a DVD+R DL.

 

The original image had:

MD5 = 4de18742714d5b4018bcac5a76376e6f

 

The burned, an then re-read image had:

MD5 = ca1f18e1ba53ae230d536bab67eaf97e

 

So far, so good, from your explanations above, but:

 

When I verify the DVD+R DL against the ORIGINAL image in ImgBurn, the logfile says:

I 18:15:19 Device MD5: 4de18742714d5b4018bcac5a76376e6f

I 18:15:19 Image MD5: 4de18742714d5b4018bcac5a76376e6f

 

When I verify the SAME DVD+R DL against the RE-READ image, the logfile says:

I 18:43:22 Device MD5: ca1f18e1ba53ae230d536bab67eaf97e

I 18:43:22 Image MD5: ca1f18e1ba53ae230d536bab67eaf97e

 

???

 

Unfortunately the MD5 which the ImgBurn-log provides after a burn is the first one, but what I would like to have for future reference is the second one (or both).

Wouldn't it be possible to calculate that second one too?

 

Thanx

Clavius

Share this post


Link to post
Share on other sites

It calculates it based on the number of sectors it has to read or write. If those differ between disc / images, the MD5 is different.

 

You will only get the one version of the MD5 - the one that's correct at that moment in time. I will not be changing anything in that respect, sorry.

Share this post


Link to post
Share on other sites

I was wondering, going a bit off topic. Is there something that can create MDS/MDF from an existing ISO or other image AND still write images to non NTFS partitions? i.e. create split images in that format when the image goes over 4 GB. UltraISO will, but, only with that klunky all but arbitrary .IBZ, I think it was, format. Thanks!

Share this post


Link to post
Share on other sites
It calculates it based on the number of sectors it has to read or write.
I understand! Thought something like that.

 

I will not be changing anything in that respect, sorry.
That's too bad! I don't quite understand what it's good for then! At least concerning DVD+ media.

 

But I figured out a workaround for me:

Since the file-size of the original image is given in the ImgBurn-log, I can truncate the re-read image to its original size and do the MD5-calculation.

 

 

BTW: I don't want to sound as if I don't appreciate your work!

I love ImgBurn more than ever!!! :-)

 

Clavius

Share this post


Link to post
Share on other sites

By the sounds of it, you're comparing different sized images - so of course the MD5 will differ.

 

When you compare a disc to an image, you compare the disc to the image, you don't compare the image to the disc - if that makes sense!

 

So if the image is smaller than the disc, it still only compares the number of sectors in the image - meaning the extra stuff on the disc is never looked at (and hence not included in the MD5 calculation).

 

The problem you're facing the DVD+R padding up to the 16 sectors marker is 100 times worse if you burn to DVD+RW.

 

That I know of, there's no way to get the size of burnt data on a DVD+RW disc. It will always return the FULL size of the media and that never changes - even when you've burn 10 sectors and the rest is just empty (formatted) space.

 

So whilst it might seem logical to read ALL the sectors on a disc, even when comparing to a smaller image, it doesn't work in practice.

Share this post


Link to post
Share on other sites
So whilst it might seem logical to read ALL the sectors on a disc, even when comparing to a smaller image, it doesn't work in practice.

That absolutely makes sense to me, but I thought the MD5 of the Disc could somehow be calculated/extrapolated!?

 

I do not know anything about the MD5-algorithm, but I thought, since ImgBurn knows the size of the original image on HD, it must be possible to calculate the resulting size on the disc, taking the DVD+R-padding into account.

And since these padding-bytes are all zero (or whatever), I thought it might be possible to calculate the MD5 with padding-bytes from the MD5 without padding-bytes.

But presumably I am very wrong!?

 

Clavius

Share this post


Link to post
Share on other sites

The MD5 is calculated by passing the data (every sector / byte) read from the disc (or image file) to some API microsoft provides.

 

Once you've given that API all the data, you run another API command to calculate the MD5 (or any other type of value you want) from it.

 

As I don't read the extra padding sectors from the DVD+R, there's no way to append that to a second MD5 calculation. I'm also not sure if I can get the MD5 and then add more data before calculating it a second time.

 

EDIT:

 

Ok, I can't add data after I've calculated the value. :(

 

What I can do though is duplicate the hash before I calculate it, then add data to the duplicate before calculating that one.

 

I will add a 'padded' MD5 value to the log for DVD+R discs.

Share this post


Link to post
Share on other sites

Hmm you've actually brought another problem to my attention now with this thread.

 

If DVD+R discs pad out to a full ECC block, that then mean 'my' last sector on the disc (so far as 'build' mode is concerned) is no longer the actual last sector - it's potentially 15 sectors before it.

 

That basically means my UDF backup Anchor point is wrong because it's supposed to be in the last sector on the disc.

 

The backup one is only used if the first (sector 256) is unreadble so it's not exactly a major issue, but I still had to fix it :)

 

So now I pad the images I make after all the filesystem data and before the UDF backup anchor point, ensuring the last sector of the image lands on the last sector of an ECC block.

 

This will also have the effect of the image + device MD5 hashes being equal even when burnt to DVD+R - because I'm doing the padding rather than the drive.

 

I'll still leave the 'Device (Padded) MD5: xxxxxxx' value in the log though for times when you're burning images that don't align to ECC blocks properly and so the drive DOES have to do its own padding.

Share this post


Link to post
Share on other sites
Hmm you've actually brought another problem to my attention now with this thread.
I'm glad if i could help! ;)
I'll still leave the 'Device (Padded) MD5: xxxxxxx' value in the log though for times when you're burning images that don't align to ECC blocks properly and so the drive DOES have to do its own padding.
That would be great! :)

Share this post


Link to post
Share on other sites
I'll still leave the 'Device (Padded) MD5: xxxxxxx' value in the log though for times when you're burning images that don't align to ECC blocks properly and so the drive DOES have to do its own padding.
Added: An alternative 'Padded' MD5 calculation for when burning + verifying an image on DVD+R media where the drive automatically pads the image so the last sector is divisible by 16.

I can't find the 'Device (Padded) MD5: xxxxxxx'-entry in the log!

Or am I missing something?

(FYI: On a previous burn from an image which was divisible by 16, there was the normal 'Device MD5: xxxxxx'-entry in the log, as in version 2.0.0.0.

But with this image , which is not divisible by 16, I can't find neither the 'Device MD5'- nor the 'Device (Padded) MD5'-entry in the log)

(Or is it supposed to work only for DVD+R but not for DVD+R DL?)

 

I 20:52:49 ImgBurn Version 2.1.0.0 started!

I 20:52:49 Microsoft Windows XP Home Edition (5.1, Build 2600 : Service Pack 2)

W 20:52:49 Drive D:\ (FAT32) does not support single files > 4 GB

W 20:52:49 Drive E:\ (FAT32) does not support single files > 4 GB

W 20:52:49 Drive S:\ (FAT32) does not support single files > 4 GB

I 20:52:49 Initialising SPTI...

I 20:52:49 Searching for SCSI / ATAPI devices...

I 20:52:50 Found 1 CD-RW, 2 DVD-ROMs and 1 DVD?RW!

I 20:52:54 Operation Started!

I 20:52:54 Source File: G:\test1.MDS

I 20:52:54 Source File Sectors: 3.340.287 (MODE1/2048)

I 20:52:54 Source File Size: 6.840.907.776 bytes

I 20:52:54 Source File Volume Identifier: test1

I 20:52:54 Source File Implementation Identifier: Spruce Technologies

I 20:52:54 Source File File System(s): ISO9660; UDF (1,02)

I 20:52:54 Destination Device: [3:0:0] PLEXTOR DVDR PX-716A 1.10 (Y:) (ATAPI)

I 20:52:54 Destination Media Type: DVD+R DL (Disc ID: MKM-001-00) (Speeds: 2,4x; 4x; 6x)

I 20:52:54 Destination Media Sectors: 4.173.824

I 20:52:54 Write Mode: DVD

I 20:52:54 Write Type: DAO

I 20:52:54 Write Speed: 2,4x

I 20:52:54 Link Size: Auto

I 20:52:54 Test Mode: No

I 20:52:54 BURN-Proof: Enabled

I 20:52:54 Optimal L0 Data Zone Capacity: 2.075.264

I 20:52:54 Optimal L0 Data Zone Method: Copied From Original Disc

I 20:53:12 Filling Buffer...

I 20:53:13 Writing LeadIn...

I 20:53:51 Writing Image...

I 20:53:51 Writing Layer 0... (LBA: 0 - 2075263)

I 21:15:05 Writing Layer 1... (LBA: 2075264 - 3340286)

I 21:28:04 Synchronising Cache...

I 21:28:08 Closing Track...

I 21:28:09 Finalising Disc...

I 21:37:19 Image MD5: b95dfddde270e34a980ff709551f8550

I 21:37:22 Exporting Graph Data...

I 21:37:22 Graph Data File: G:\test1_PLEXTOR_DVDR_PX-716A_1.10_MKM-001-00_2,4x.ibg

I 21:37:22 Export Successfully Completed!

I 21:37:22 Operation Successfully Completed! - Duration: 00:44:25

I 21:37:22 Average Write Rate: 3.255 KB/s (2.4x) - Maximum Write Rate: 3.385 KB/s (2.4x)

I 21:37:22 Cycling Tray before Verify...

I 21:38:04 Device Ready!

I 21:38:06 Operation Started!

I 21:38:06 Source Device: [3:0:0] PLEXTOR DVDR PX-716A 1.10 (Y:) (ATAPI)

I 21:38:06 Source Media Type: DVD+R DL (Book Type: DVD-ROM) (Disc ID: MKM-001-00) (Speeds: 2,4x; 4x; 6x)

I 21:38:06 Image File: G:\test1.MDS

I 21:38:06 Image File Sectors: 3.340.287 (MODE1/2048)

I 21:38:06 Image File Size: 6.840.907.776 bytes

I 21:38:06 Image File Volume Identifier: test1

I 21:38:06 Image File Implementation Identifier: Spruce Technologies

I 21:38:06 Image File File System(s): ISO9660; UDF (1,02)

I 21:38:06 Verifying Sectors...

I 21:51:37 Image MD5: b95dfddde270e34a980ff709551f8550

I 21:51:37 Exporting Graph Data...

I 21:51:37 Graph Data File: G:\test1_PLEXTOR_DVDR_PX-716A_1.10_MKM-001-00_2,4x.ibg

I 21:51:37 Export Successfully Completed!

I 21:51:37 Operation Successfully Completed! - Duration: 00:13:30

I 21:51:37 Average Verify Rate: 8.247 KB/s (6.0x) - Maximum Verify Rate: 11.180 KB/s (8.1x)

I 21:57:16 Close Request Acknowledged

I 21:57:16 Closing Down...

I 21:57:16 Shutting down SPTI...

I 21:57:16 ImgBurn closed!

Share this post


Link to post
Share on other sites

You didn't get any sort of Device MD5 value there (not even the normal one) so I guess the whole thing failed for some reason.

Share this post


Link to post
Share on other sites

What can I do to pinpoint that reason?

 

(Is it likely that I made mistake or that is has to do with my configuration? Or may it even be possible that it is some kind of bug in the code? (I don't want to sound blasphemic, though ;) )

 

(I am sorry if I'm annoying you with this, but I would really love to have this feature working.)

 

 

EDIT: Spelling

Edited by Clavius

Share this post


Link to post
Share on other sites

OK, now this is strange:

 

I did press F6 before my latest burn, and this time it worked!? I got both Device-MD5s, normal and padded.

 

Furthermore, I got two times this entry:

D 18:44:41 PdhAddCounter Failed! - Error Code: 0xC0000BB8 - Interpretation: The specified object is not found on the system.

 

 

2 Questions:

 

1)

Why did the MD5-stuff work correct this time, and will I have to press F6 every-time from now on?

 

2)

What does the debug-message mean?

(Could it have to do with the fact that every-time I do a burn with ImgBurn, I get a "PerfNet"-error in eventviewer, and that I get no CPU- and Buffer-Graphs in DVDInfo?)

 

 

Thanks in advance

Clavius

 

 

 

I 18:44:14 ImgBurn Version 2.1.0.0 started!

I 18:44:14 Microsoft Windows XP Home Edition (5.1, Build 2600 : Service Pack 2)

W 18:44:14 Drive D:\ (FAT32) does not support single files > 4 GB

W 18:44:14 Drive E:\ (FAT32) does not support single files > 4 GB

W 18:44:14 Drive S:\ (FAT32) does not support single files > 4 GB

I 18:44:14 Initialising SPTI...

I 18:44:14 Searching for SCSI / ATAPI devices...

I 18:44:14 Found 1 CD-RW, 1 DVD-ROM and 1 DVD?RW!

W 18:44:17 Program 'Debug Mode' has been Enabled!

I 18:44:25 Operation Started!

I 18:44:25 Source File: G:\test2.MDS

I 18:44:25 Source File Sectors: 2.858.954 (MODE1/2048)

I 18:44:25 Source File Size: 5.855.137.792 bytes

I 18:44:25 Source File Volume Identifier: test2

I 18:44:25 Source File Implementation Identifier: Spruce Technologies

I 18:44:25 Source File File System(s): ISO9660; UDF (1,02)

I 18:44:25 Destination Device: [3:0:0] PLEXTOR DVDR PX-716A 1.10 (Y:) (ATAPI)

I 18:44:25 Destination Media Type: DVD+R DL (Disc ID: MKM-001-00) (Speeds: 2,4x; 4x; 6x)

I 18:44:25 Destination Media Sectors: 4.173.824

I 18:44:25 Write Mode: DVD

I 18:44:25 Write Type: DAO

I 18:44:25 Write Speed: 2,4x

I 18:44:25 Link Size: Auto

I 18:44:25 Test Mode: No

I 18:44:25 BURN-Proof: Enabled

I 18:44:25 Optimal L0 Data Zone Capacity: 1.713.264

I 18:44:25 Optimal L0 Data Zone Method: Copied From Original Disc

D 18:44:41 PdhAddCounter Failed! - Error Code: 0xC0000BB8 - Interpretation: The specified object is not found on the system.

D 18:44:41 Device Buffer Size: 6.291.456 bytes.

D 18:44:41 Device Buffer Available: 6.291.456 bytes.

I 18:44:41 Filling Buffer...

I 18:44:42 Writing LeadIn...

I 18:45:23 Writing Image...

I 18:45:23 Writing Layer 0... (LBA: 0 - 1713263)

I 19:02:55 Writing Layer 1... (LBA: 1713264 - 2858953)

I 19:14:40 Synchronising Cache...

I 19:14:44 Closing Track...

I 19:14:45 Finalising Disc...

I 19:21:27 Image MD5: 4f15842128dba922d5b9fae7d36d917b

I 19:21:29 Exporting Graph Data...

I 19:21:29 Graph Data File: G:\test2_PLEXTOR_DVDR_PX-716A_1.10_MKM-001-00_2,4x.ibg

I 19:21:29 Export Successfully Completed!

I 19:21:29 Operation Successfully Completed! - Duration: 00:37:02

I 19:21:29 Average Write Rate: 3.254 KB/s (2.3x) - Maximum Write Rate: 4.015 KB/s (2.9x)

I 19:21:29 Cycling Tray before Verify...

I 19:22:05 Device Ready!

I 19:22:07 Operation Started!

I 19:22:07 Source Device: [3:0:0] PLEXTOR DVDR PX-716A 1.10 (Y:) (ATAPI)

I 19:22:07 Source Media Type: DVD+R DL (Book Type: DVD-ROM) (Disc ID: MKM-001-00) (Speeds: 2,4x; 4x; 6x)

I 19:22:07 Image File: G:\test2.MDS

I 19:22:07 Image File Sectors: 2.858.954 (MODE1/2048)

I 19:22:07 Image File Size: 5.855.137.792 bytes

I 19:22:07 Image File Volume Identifier: test2

I 19:22:07 Image File Implementation Identifier: Spruce Technologies

I 19:22:07 Image File File System(s): ISO9660; UDF (1,02)

D 19:22:07 PdhAddCounter Failed! - Error Code: 0xC0000BB8 - Interpretation: The specified object is not found on the system.

I 19:22:07 Verifying Sectors...

I 19:34:26 Device MD5: 4f15842128dba922d5b9fae7d36d917b

I 19:34:26 Device (Padded) MD5: 4511b6b9897bef84759381d4cb707df5

I 19:34:26 Image MD5: 4f15842128dba922d5b9fae7d36d917b

I 19:34:27 Exporting Graph Data...

I 19:34:27 Graph Data File: G:\test2_PLEXTOR_DVDR_PX-716A_1.10_MKM-001-00_2,4x.ibg

I 19:34:27 Export Successfully Completed!

I 19:34:27 Operation Successfully Completed! - Duration: 00:12:19

I 19:34:27 Average Verify Rate: 7.737 KB/s (5.6x) - Maximum Verify Rate: 10.318 KB/s (7.4x)

I 00:01:43 Close Request Acknowledged

I 00:01:43 Closing Down...

I 00:01:43 Shutting down SPTI...

I 00:01:43 ImgBurn closed!

Share this post


Link to post
Share on other sites
Sign in to follow this  

×

Important Information

By using this site, you agree to our Terms of Use.