Friday, 7 January 2011

How to get files off an unfinalized DVD-Video disk using free software

Hey, happy new year! This is a bit of a techie experience transfer. I don't always write blog posts of a political nature. Actually, I don't often write blog posts, but here's one. I wanted to share with you my experiences of trying to extract content from an unfinalized video DVD that was recorded with a consumer DVD recorder (brand unknown, not in my possession). A friend was kind enough to send us by post some DVDs with material recorded off the television. [Now before you get all sanctimonious with me about copyright and IP and all that jazz, let me say that I fully intend to buy the DVD of this series when it is available. It is not currently available. I could get this series on my own Virgin Media TV package if I upgrade, but I don't want to commit to another fixed term contract. And I'm not going to tell you the name of the show, so nyuh.*] Anyway, our kind friend sent us these DVDs but unfortunately they were not finalized, which means they can only be played in the same video recorder. This is an easy mistake to make. Although this friend claims that the DVDs were finalized, she has been misinformed as I shall show you below. So for the last couple days I set about trying to create workable DVD disks from the contents of the ones I was given. This is tricky, since an unfinalized DVD video disk is left in a state where it is virtually unreadable without specialist software. Such a DVD will not load in a commercial DVD deck, nor will it mount on any operating system. I tried Windows 7, Mac OSX 1.4 and CentOS Linux. Trawling the various video forums, I came across a couple helpful articles:



When I'd first discovered the problems with these disks I was at home and using Windows; therefore, I was inclined to try Windows oriented solutions first. On my Windows 7 laptop, the DVD disks when inserted appear as full but blank. There is no discernable file system, and out of all my DVD related tools only Nero could detect that there was a session with tracks on the disk. It could not do anything with the disk though. I don't have the full commercial version of Nero. I tried the free tool DVD Decrypter, which is recommended for ripping from DVD file systems, but it detected nothing. The excellent ShareWare tool IsoBuster is able to detect and recover files from these DVDs, but in order to extract the files you need to shell out $30 for a license to unlock the Pro features. I considered this a small price to pay and so I did, though I now know that this was not necessary. If you don't fancy mucking around with command line tools then go with IsoBuster, but make sure it can detect your tracks before you pay for it. The more adventurous might continue reading, after all I told you this can be done at no cost.

Linux is a powerful open source operating system whose many distributions offer packages of free software applications, many of which are as fully featured as competing commercial software available for closed source operating systems. And the maintainers of many of these tools also provide binary ports that run on Windows or MacOSX. On my CentOS 5.4 Linux desktop computer at work, I have the dvd+rw-tools package installed. This is also available as a binary port for Windows. This provides among other things a neat little utility that gives the structure of a DVD disk, even one that can't be mounted in the usual ways. With a disk in the drive and assuming a DVD device of /dev/dvd, I type 'dvd+rw-mediainfo /dev/dvd' and hit Return:
% dvd+rw-mediainfo /dev/dvd
INQUIRY:                [PHILIPS ][DVD+-RW DVD8801 ][4D28]
GET [CURRENT] CONFIGURATION:
 Mounted Media:         11h, DVD-R Sequential
 Current Write Speed:   16.0x1385=22160KB/s
 Write Speed #0:        16.0x1385=22160KB/s
 Write Speed #1:        12.0x1385=16620KB/s
 Write Speed #2:        8.0x1385=11080KB/s
 Write Speed #3:        4.0x1385=5540KB/s
GET [CURRENT] PERFORMANCE:
 Write Performance:     16.0x1385=22160KB/s@[0 -> 1845983]
 Speed Descriptor#0:    00/1845983 R@6.7x1385=9276KB/s W@16.0x1385=22160KB/s
 Speed Descriptor#1:    00/1845983 R@6.7x1385=9276KB/s W@12.0x1385=16620KB/s
 Speed Descriptor#2:    00/1845983 R@6.7x1385=9276KB/s W@8.0x1385=11080KB/s
 Speed Descriptor#3:    00/1845983 R@6.7x1385=9276KB/s W@4.0x1385=5540KB/s
READ DVD STRUCTURE[#10h]:
 Media Book Type:       00h, DVD-ROM book [revision 0]
 Legacy lead-out at:    2298496*2KB=4707319808
READ DVD STRUCTURE[#0h]:
 Media Book Type:       25h, DVD-R book [revision 5]
 Last border-out at:    2045*2KB=4188160
READ DISC INFORMATION:
 Disc status:           appendable
 Number of Sessions:    1
 State of Last Session: incomplete
 "Next" Track:          1
 Number of Tracks:      8
READ TRACK INFORMATION[#1]:
 Track State:           reserved incremental
 Track Start Address:   0*2KB
 Next Writable Address: 0*2KB
 Free Blocks:           12272*2KB
 Track Size:            12272*2KB
READ TRACK INFORMATION[#2]:
 Track State:           complete incremental
 Track Start Address:   12288*2KB
 Free Blocks:           0*2KB
 Track Size:            192*2KB
 Last Recorded Address: 12479*2KB
READ TRACK INFORMATION[#3]:
 Track State:           complete incremental
 Track Start Address:   12496*2KB
 Free Blocks:           0*2KB
 Track Size:            887216*2KB
 Last Recorded Address: 899711*2KB
READ TRACK INFORMATION[#4]:
 Track State:           complete incremental
 Track Start Address:   899728*2KB
 Free Blocks:           0*2KB
 Track Size:            16*2KB
 Last Recorded Address: 899743*2KB
READ TRACK INFORMATION[#5]:
 Track State:           complete incremental
 Track Start Address:   899760*2KB
 Free Blocks:           0*2KB
 Track Size:            192*2KB
 Last Recorded Address: 899951*2KB
READ TRACK INFORMATION[#6]:
 Track State:           complete incremental
 Track Start Address:   899968*2KB
 Free Blocks:           0*2KB
 Track Size:            945984*2KB
 Last Recorded Address: 1845951*2KB
READ TRACK INFORMATION[#7]:
 Track State:           complete incremental
 Track Start Address:   1845968*2KB
 Free Blocks:           0*2KB
 Track Size:            16*2KB
 Last Recorded Address: 1845983*2KB
READ TRACK INFORMATION[#8]:
 Track State:           invisible incremental
 Track Start Address:   1846000*2KB
 Next Writable Address: 1846000*2KB
 Free Blocks:           451888*2KB
 Track Size:            451888*2KB
READ CAPACITY:          0*2048=0


We can see that there are 8 tracks on this DVD in a single session, though the last track has not been started. The first track is reserved and the middle six are complete. Under the heading READ DISK INFORMATION, we also see why this disk fails to mount. The disk has an 'appendable' status and its single session is in an 'incomplete' state. It is not finalized. Generally a recordable DVD can only be played or finalized using the software that created it because this is the only software that can locate the files without the support data created during finalization. I've read that it is sometimes possible to create a clone image of an unfinalized DVD and use other software to close the session, but I have never tried this. The important thing is to get the VOB files off the DVD disk. If you can do this then you can reauthor a new DVD. The output of dvd+rw-mediainfo above shows that there are likely two VOB tracks (#3 and #6). These two tracks are each about 2 Gigs long. The other tracks are very short, suggesting they probably contain menu or other setup files. The field "Track Size" is shown with the number of blocks and the size of each block separated by an asterisk. Track #6 is 945984*2KB = 1891968 KB = 1847.628 MB = 1.804 GB roughly.

Now for the fun part. The dvd+rw-mediainfo output actually tells us everything we need to know in order to extract the VOB files using a tool such as "dd" (a GNU command line utility for copying parts of files and block devices). dd is also available for Windows, but I don't have a link at the moment[This excellent tool is available here]. In order to extract a VOB from our DVD we only need to know its starting block and its size. For track #6, the starting block is 899968 and its size is once again 945984 blocks. Block size is 2KB. The command to extract the track would be written as follows (note: 2KB = 2*1024 bytes):

 
dd bs=2048 skip=899968 count=945984 if=/dev/dvd of=/tmp/track6.vob

The 'bs' option specifies the block size, skip specifies the number of input blocks to skip and count specifies the block length to copy. 'if' is input file and 'of' is output file, which can be any writable path. Here's what I get when I run the command (it takes a few minutes to complete):
% dd bs=2048 skip=899968 count=945984 if=/dev/dvd of=/tmp/track6.vob
945984+0 records in
945984+0 records out
1937375232 bytes (1.9 GB) copied, 903.739 seconds, 2.1 MB/s

And the delight of the day is that if I open that file in VLC media player, it plays perfectly! I can now add that file (and track 3 once extracted) to a new DVD project in a DVD authoring application (such as the free cross-platform DVDStyler) and burn a DVD. The DVD authoring software is needed in order to create DVD menus. Although in theory it should be possible to extract menu files from the original DVD in the same way, I have not tried this. I have viewed extracted files and they are in a binary file format. Anyway, the menus created by your standard DVD recorder are nothing special. Might as well make new ones.

The first DVD I created was not done using the dd tool. Instead it was done using IsoBuster's extraction feature. Had I known what I was doing I could have selected the tracks to export and created raw export image files that I could rename as .vob files. I did not know what I was doing so I asked IsoBuster to find and recover missing files based on signatures. It found some IFO files and two groups of three VOB files. It was easy for me to see that each set of three VOB files was a single episode split into three parts. Unfortunately I struggled for a long time with an error in my DVD authoring software after trying to import the VOB files as separate files. VOB files are multiplexed video and audio and contain crucial timing information. A split VOB file cannot be imported into DVDStyler (if indeed any authoring software) and so it was necessary for me to recombine the VOBs which is a simple matter of concatenating them. The end result was a working DVD video disk with two menus and two titles (which I'm not about to show you   ;-)  I hope this has been useful.

*UPDATE 29th September 2011: We now own a properly licensed commercial DVD copy of this television series.

*UPDATE 25th May 2013:
Some commenters have pointed to difficulties using the Windows port of dd. This has almost invariably been due to incorrect specification of the input file parameter. Regardless of operating system the source disk partition needs to be addressed as a block device. Different operating systems will do this differently. On Windows the disk device nodes are rarely seen. However, using the free dd port written by John Newbigin, we can easily find out how to address our drives in Windows. Here's an extract from my laptop running Windows 7:

C:\[some path]>dd --list
rawwrite dd for windows version 0.6beta3.
Written by John Newbigin 
This program is covered by terms of the GPL Version 2.

Win32 Available Volume Information
\\.\Volume{96e6c57a-4602-11e0-b661-806e6f6e6963}\
  link to \\?\Device\HarddiskVolume3
  fixed media
  Not mounted

\\.\Volume{96e6c578-4602-11e0-b661-806e6f6e6963}\
  link to \\?\Device\HarddiskVolume1
  fixed media
  Mounted on \\.\c:

\\.\Volume{96e6c579-4602-11e0-b661-806e6f6e6963}\
  link to \\?\Device\HarddiskVolume2
  fixed media
  Mounted on \\.\d:

\\.\Volume{8413f99c-d57c-11e1-a997-70f39540a6d8}\
  link to \\?\Device\CdRom0
  CD-ROM
  Mounted on \\.\e:

Here we can see that there are two ways to address the optical device, which are '\\?\Device\CdRom0' or '\\.\e:'. I prefer the latter style. I've used this and can confirm that it works as expected.

39 comments:

  1. Hey! You're welcome. Glad I could help.

    ReplyDelete
  2. Hello,

    I tried the portable version for windows (tried it on Win7) and on Ubuntu (within Virtual Box running within Win7).

    I can see the values from the dvd
    dvd+rw-mediainfo /dev/dvd
    or
    dvd+rw-mediainfo.exe /dev/dvd (on Win7)

    Produces
    INQUIRY: [TSSTcorp][CDDVDW SH-S223C ][SB06]
    GET [CURRENT] CONFIGURATION:
    Mounted Media: 11h, DVD-R Sequential
    Media ID: SONY16D1
    Current Write Speed: 16.0x1385=22160KB/s
    Write Speed #0: 16.0x1385=22160KB/s
    Write Speed #1: 12.0x1385=16620KB/s
    Write Speed #2: 8.0x1385=11080KB/s
    Write Speed #3: 4.0x1385=5540KB/s
    GET [CURRENT] PERFORMANCE:
    Write Performance: 6.4x1385=8864KB/s@0 -> 16.0x1385=22
    Speed Descriptor#0: 08/2298495 R@16.0x1385=22160KB/s W@
    READ DVD STRUCTURE[#10h]:
    Media Book Type: 00h, DVD-ROM book [revision 0]
    Legacy lead-out at: 2298496*2KB=4707319808
    READ DVD STRUCTURE[#0h]:
    Media Book Type: 25h, DVD-R book [revision 5]
    Last border-out at: 2045*2KB=4188160
    READ DISC INFORMATION:
    Disc status: appendable
    Number of Sessions: 1
    State of Last Session: incomplete
    "Next" Track: 1
    Number of Tracks: 4
    READ TRACK INFORMATION[#1]:
    Track State: reserved incremental
    Track Start Address: 0*2KB
    Next Writable Address: 0*2KB
    Free Blocks: 1520*2KB
    Track Size: 1520*2KB
    Last Recorded Address: 0*2KB
    READ TRACK INFORMATION[#2]:
    Track State: complete incremental
    Track Start Address: 1536*2KB
    Free Blocks: 0*2KB
    Track Size: 256*2KB
    Last Recorded Address: 1791*2KB
    READ TRACK INFORMATION[#3]:
    Track State: complete incremental
    Track Start Address: 1808*2KB
    Free Blocks: 0*2KB
    Track Size: 1815952*2KB
    Last Recorded Address: 1817759*2KB
    READ TRACK INFORMATION[#4]:
    Track State: invisible incremental
    Track Start Address: 1817776*2KB
    Next Writable Address: 1817776*2KB
    Free Blocks: 480112*2KB
    Track Size: 480112*2KB
    Last Recorded Address: 0*2KB
    FABRICATED TOC:
    Track#1 : 14@0
    Track#AA : 17@1
    READ CAPACITY: 2298496*2048=4707319808


    but when I try the save part

    dvd+rw-mediainfo db bs=2048 skip=1817776 count=480112 if=/dev/dvd of=/tmp/track4.vob

    or

    dvd+rw-mediainfo.exe dd bs=2048 skip=1817776 count=480112 if=I: of=C:\Track4.vob

    Gives an error:
    dd: unable to open: No such file or directory
    or
    dd: unable to open: One or more arguments are not correct. (on win7)

    Does anyone know what argument am I specifying wrong here?

    Thanks

    ReplyDelete
  3. Hi @Chrispie. Your comment went to spam because of its length. To be honest, I didn't try the Windows port of dvd-rw-mediainfo. I assumed it would work as the unix command does. It may be the way you are specifying the input file. I don't know how you treat a disc drive as a block device in Windows, but I've had a quick search and found this:

    http://www.chrysocome.net/dd

    Just specifying a drive letter with a colon is not enough. You need to access it as a partition.

    ReplyDelete
  4. @Chrispie: I think that you probably don't have a Windows version of the dd command. Look for it in this package:

    http://unxutils.sourceforge.net/


    You have an error in your comment that confuses the issue a little bit. You said:

    dvd+rw-mediainfo.exe dd bs=2048 skip=1817776 count=480112 if=I: of=C:\Track4.vob

    when you mean:

    dd.exe dd bs=2048 skip=1817776 count=480112 if=I: of=C:\Track4.vob

    ReplyDelete
  5. Thank you, worked like a charm!
    I recovered the ultrasound scan of my upcoming daughter :)

    ReplyDelete
  6. I'm very pleased that people come across this now and then and that it solves problems. Especially with the previous comment. Glad to be of help!

    ReplyDelete
  7. This comment has been removed by the author.

    ReplyDelete
  8. Hi!

    Thanks for sharing your experience, my mother-in-law just invited my wife and me for dinner since I recovered four discs of her holiday movies :-)

    I wrote a perl script to automate this process, it is available from the following URL:

    http://www.tanzband-scream.at/copy_tracks.tar.bz2

    It might need some tweaking, but works well for me.

    Kind regards,
    Markus


    P.S.: Sorry if you just saw a similar posting, I first tried to include the script in the message, but the code got corrupted, and the first message is no longer visible (maybe due to its length). So I tried a second time with an external link.

    ReplyDelete
  9. Thank you so much! This helped me so much! I had a conference where one video on someone else's DVD recorded didn't get finalized, and now I can post it!

    ReplyDelete
  10. This post saved my bacon! Thank you so much.

    Worth noting for future OSX-using readers that you can install a binary version of dvd+rw-tools from MacPorts. And you can find out which device corresponds to your DVD drive by running `drutil status`.

    ReplyDelete
  11. This comment has been removed by the author.

    ReplyDelete
  12. Hi,

    I'm having the following problem (on Win7):

    Here's the dvd+rw-tools output:

    D:\Downloads\dvd+rw-tools>dvd+rw-mediainfo f:
    INQUIRY: [ATAPI ][iHAS124 B ][AL0L]
    GET [CURRENT] CONFIGURATION:
    Mounted Media: 11h, DVD-R Sequential
    Media ID: 80SONY-R0
    Current Write Speed: 4.0x1385=5540KB/s
    Write Speed #0: 4.0x1385=5540KB/s
    Speed Descriptor#0: 00/716191 R@8.0x1385=11080KB/s W@4.0x1385=5540KB/s
    READ DVD STRUCTURE[#10h]:
    Media Book Type: 25h, DVD-R book [revision 5]
    Legacy lead-out at: 716800*2KB=1468006400
    READ DVD STRUCTURE[#0h]:
    Media Book Type: 25h, DVD-R book [revision 5]
    Last border-out at: 0*2KB=0
    READ DISC INFORMATION:
    Disc status: appendable
    Number of Sessions: 1
    State of Last Session: incomplete
    "Next" Track: 1
    Number of Tracks: 6
    READ TRACK INFORMATION[#1]:
    Track State: reserved incremental
    Track Start Address: 0*2KB
    Next Writable Address: 0*2KB
    Free Blocks: 12272*2KB
    Track Size: 12272*2KB
    READ TRACK INFORMATION[#2]:
    Track State: complete incremental
    Track Start Address: 12288*2KB
    Free Blocks: 0*2KB
    Track Size: 176*2KB
    Last Recorded Address: 12463*2KB
    READ TRACK INFORMATION[#3]:
    Track State: complete incremental
    Track Start Address: 12480*2KB
    Free Blocks: 0*2KB
    Track Size: 368*2KB
    Last Recorded Address: 12847*2KB
    READ TRACK INFORMATION[#4]:
    Track State: complete incremental
    Track Start Address: 12864*2KB
    Free Blocks: 0*2KB
    Track Size: 176*2KB
    Last Recorded Address: 13039*2KB
    READ TRACK INFORMATION[#5]:
    Track State: complete incremental
    Track Start Address: 13056*2KB
    Free Blocks: 0*2KB
    Track Size: 646016*2KB
    Last Recorded Address: 659071*2KB
    READ TRACK INFORMATION[#6]:
    Track State: invisible incremental
    Track Start Address: 659088*2KB
    Next Writable Address: 659088*2KB
    Free Blocks: 57104*2KB
    Track Size: 57104*2KB
    READ CAPACITY: 0*2048=0

    And, here's my dd commandline and output (targeting Track #5):

    D:\Downloads\dvd+rw-tools>dd bs=2048 skip=13056 count=646016 if=F: of=D:\Videos\tmp\vid.vob
    rawwrite dd for windows version 0.5.
    Written by John Newbigin
    This program is covered by the GPL. See copying.txt for details
    read 95 disk NYI
    Error opening input file: 1 Incorrect function

    Any idea what I'm doing wrong?

    Thanks

    ReplyDelete
  13. OK, looks like I solved my own problem. After studying the documentation that comes with dd I learned about the --list flag.

    dd --list

    Running that I discovered that my DVD drive needed to be addressed as follows:

    \\?\Device\CDRom0

    Thus, the following did the trick:

    dd bs=2k skip=13056 count=646016 if=\\?\Device\CDRom0 of=D:\Videos\tmp\vid.vob

    BUT, the VOB file crashes PowerDirector when I try to import it. Not sure if that's because of dd or PowerDirector.

    BTW: Thank you HUGELY for this Blog -- it has really helped!!

    ReplyDelete
  14. So...I had two unfinalized DVDs (both from a Sony VideoCam). One contained video that I didn't care about, and the other with the video I needed to complete a project. In my above post, where I spoke of PowerDirector crashing when I tried to import the file, that was from the DVD that I didn't care about -- I figured I would learn how to do this, on it, in case anything I did was destructive to the DVD.

    So, having successfully extracted the video, with no apparent damage to the DVD, I applied these techniques to the golden DVD (the one with the video that I needed). And I am happy to report that I not only extracted the video, but it loads into PowerDirector and is fully editable! The only difference between the files (other than different video and audio information) is the former (crash prone) file was a bit larger than the later file.

    System Specs:
    * Win 7 - 64-bit 4 Gig RAM
    * PowerDirector 10

    ReplyDelete
  15. I'm always very pleased when I see that this post is helping people, especially as it's quite an old post now. That's not to say that there have been many new ones. If I had actually tried the Windows approach I would have written something about how to discover the block devices. Maybe I will update this when I have more than a smart phone to type on.

    ReplyDelete
  16. Maybe you could help me.
    A friend has a Sony Hanycam Video that records straight to a disc. We went away with him and he took Video's of us and I would like a copy of them.
    At the time he said he will give me a copy.(Three years ago.)
    I asked him again and he said that he cannot give me a copy of the disk because he has to edit it first and then finalize before he can copy it.

    I thought maybe you could do this. If he doesn't want to finalize it yet, maybe I could play the video from his video camera through my HDD video recorder and them finalize it on there. Do you think that would work ?

    Any other ideas for me. Thanking you Vicki

    ReplyDelete
  17. So I have a bunch of DVD+R's of home videos that are being read as blank discs by my Macbook Pro. I know there is data on it, because I can see the burn on all of them. I read that these media is junky CMC MAG/E01... but using some terminal commands, I think there is data on here after all.

    ---------
    Runing drutil status:

    Vendor Product Rev
    MATSHITA DVD-R UJ-898 HC10

    Type: DVD+R Name: /dev/disk1
    Sessions: 0 Tracks: 1
    Write Speeds: 2.4x, 4x, 8x
    Overwritable: 00:00:00 blocks: 0 / 0.00MB / 0.00MiB
    Space Free: 00:00:00 blocks: 0 / 0.00MB / 0.00MiB
    Space Used: 03:31:47 blocks: 15872 / 32.51MB / 31.00MiB
    Writability: appendable
    Book Type: DVD+R (v1)
    Media ID: CMC MAG E01

    ---------
    Running dvd+rw-mediainfo:

    $ dvd+rw-mediainfo /dev/disk1
    INQUIRY: [MATSHITA][DVD-R UJ-898 ][HC10]
    GET [CURRENT] CONFIGURATION:
    Mounted Media: 1Bh, DVD+R
    Media ID: CMC MAG/E01
    Current Write Speed: 8.0x1385=11080KB/s
    Write Speed #0: 8.0x1385=11080KB/s
    Write Speed #1: 4.0x1385=5540KB/s
    Write Speed #2: 2.4x1385=3324KB/s
    Speed Descriptor#0: 01/2295103 R@8.0x1385=11080KB/s W@8.0x1385=11080KB/s
    Speed Descriptor#1: 01/2295103 R@4.0x1385=5540KB/s W@4.0x1385=5540KB/s
    Speed Descriptor#2: 01/2295103 R@2.4x1385=3324KB/s W@2.4x1385=3324KB/s
    READ DVD STRUCTURE[#0h]:
    Media Book Type: 00h, DVD-ROM book [revision 0]
    Legacy lead-out at: 2295104*2KB=4700372992
    READ DISC INFORMATION:
    Disc status: appendable
    Number of Sessions: 1
    State of Last Session: incomplete
    "Next" Track: 1
    Number of Tracks: 2
    READ TRACK INFORMATION[#1]:
    Track State: reserved
    Track Start Address: 0*2KB
    Next Writable Address: 0*2KB
    Free Blocks: 15872*2KB
    Track Size: 15872*2KB
    READ TRACK INFORMATION[#2]:
    Track State: blank
    Track Start Address: 15888*2KB
    Free Blocks: 0*2KB
    Track Size: 2279216*2KB
    ROM Compatibility LBA: 265696
    READ CAPACITY: 0*2048=0
    ----

    So from this, it looks to me like there is 03:31:47 of footage on there. Two tracks (1 reserved, 1 "blank"). The blank one has a size of 2279216*2KB... which makes me think its just unfinalized. But when I go to do a dd to copy data to a vob or iso on my harddrive, I get an Input/Output Error.

    Any ideas anyone? These are the last surviving copies of this footage so I am really hoping its not gone forever!! :-/

    ReplyDelete
  18. Hi. I would agree with you. The session info shows that the disk status is appendable, which is not what you want in a DVD+R. If you have the drive and system that created the session you could try to close it. Track 2 is where your data will be. In order to understand where you might be going wrong, we'd need to see how you're writing the dd arguments. You need to address the drive as a block device. Mac OSX is unix based so it might be /dev/cdrom, but I'm not sure. I don't have a lot of OSX experience and I don't have a copy to try out.

    ReplyDelete
  19. This comment has been removed by the author.

    ReplyDelete
  20. I came across this page somedays ago. Having similar problem, follow the steps in my win7 home premium i.e. downloaded the dvd+rw-medianinfo & cygwin terminal but I am still having problem using the dd. In that when I input the command line as above it keep repeating it nothing else. pls I need help urgently.

    ReplyDelete
  21. I wrote this post 2 and a half years ago to share my experiences. I did not expect it to become such a popular source of information, but somehow it has. I've updated it recently to include more help for Windows users. It should have everything you need. I would not use Cygwin and the unix version of dd. You're better off with the native Windows port of dd that is specifically mentioned. If you're unable to make it work after carefully following the directions, then I'd suggest giving IsoBuster a try.

    ReplyDelete
  22. Thank you very much Flay, for your time and advice. I will carefully follow your updated on dd. Although, I have used the free version of IsoBuster on Friday to extract part but a chunk file unable to extract. If everything okay I will post comment again.

    ReplyDelete
  23. Many thanks for the information about listing tracks on an unfinalized DVD in linux. An alternative for composing/converting videos taken from UDF discs (CD/DVD/etc) is a linux tool named "k9copy". GUI-driven and provides a "wizard" to make conversion extremely easy.

    ReplyDelete
  24. Hi, a friend of mine had no idea he had unfinished DVD's however it turns out that about 9 of his collection are unfinished and he used TDK DVD-R when they were having real problems. This post is the only one I found that helped. IsoBuster will work but only if you throw some money at it. This DD is great I can read the DVD's write the output file exactly as per the example but VLC will not play saying no suitable decoder module, WMP will also not play them. I can however play the movies on free Wondershare Video editor. Am I doing something wrong, should I try to convert it to another format , any ideas?

    thanks Ken

    ReplyDelete
  25. Hi Ken. It's hard to say what might be wrong. Generally VLC should be able to play anything you throw at it. You may have a lot of disc read errors which resulted in corrupted file headers. If you can play your files in a video editor, then I'd suggest using that to save them out again. If you want to try and figure out why your files aren't playing, have a look at logging with VLC: http://www.dedoimedo.com/computers/vlc-secrets-logging.html

    ReplyDelete
  26. I have recorded my vdeo on a sony handycam and the disks are dvd rw but i couldn`t understand how to
    view these videos on the pc or on the dvd player since my handycam broke so what should I do Plz REPLY ASAp
    thanks Shivam

    ReplyDelete
  27. Great Post, Open session disks are are readable in OSX Mavericks

    ReplyDelete
  28. Hey guys.

    I came across this page while I was trying to copy an open session disk for a client of mine. They then gave me 25 more disks! Obviously doing this over and over is too tedious for 25 disks, so I created a script to automate the recovery. Hopefully you find this helpful.

    Be warned, the script is ugly as sin but it does work. You may need to edit the script if your distro does not put the dvd drive in /dev/sr0

    https://drive.google.com/file/d/0B5tgmmczrMWyZU8xOENhdGp5QTA/view?usp=sharing

    ReplyDelete
    Replies
    1. I forgot to mention how to use it:

      dvdgrab.sh /home//FolderToCopyTo

      Delete
  29. Fantastic article, @Flay, you saved me :) I had an unfinished DVD from a camcorder that was thrown away long ago. With the dvd+mediainfo and the dd command, I rescued all those precious memories.

    ReplyDelete
    Replies
    1. I'm pleased to hear people are still finding this useful 5 years on. This is destined become my most enduring contribution to human knowledge.

      Delete
  30. Hello - thanks for this, it's very useful! In short, I have got this to work BUT for some reason instead of getting 30 mins of footage at 1.4GB data. I am getting 18.52 minutes of footage at 1.4GB data. I know that the recordings last c. 30 minutes, so I'm not sure what's gone wrong. I am extracting the footage from 30 DVDs; I know that it is picking the footage up from the start of the DVD, the skip point is always the same, there are only ever 4 files on the DVD, only one is of any reasonable size and it is always ca. 1.4GB. I just can't work out for the life of me where the other 11 minutes of footage has gone. Any ideas?

    I can provide more information and the output of the command providing the breakdown of the tracks.

    Cheers,

    Ross

    ReplyDelete
    Replies
    1. Hi I think you must be setting the wrong number of blocks in count for the block size you specify. See the explanation on block size. If you were setting the wrong skip, I'd think what you got back would be corrupted. You can easily test this just by increasing the count argument a bit and seeing whether you got more.

      Delete
  31. I have found that the VLC time counter is unreliable when playing back these recovered .vob files. Perhaps there really is 30 minutes of footage there even though VLC shows18.52?

    ReplyDelete
  32. You are my hero! Thank you so much! I will say that it took me some time to figure out why it wouldn’t let me mount my boot.wim file but I figured out it was because mine only had an index value of 1 not 2. So instead of: dism /mount-wim /wimfile:boot.wim /index:2 /mountdir:mount, it was: dism /mount-wim /wimfile:boot.wim /index:1 /mountdir:mount. Perhaps that will help someone some day.
    Regards: Eve Hunt

    ReplyDelete
  33. This is awesome, and still useful today. It also works under macOS, installing dvd+rw-tools from http://macappstore.org/dvdrw-tools/

    ReplyDelete
    Replies
    1. I'm really pleased that this is still helping people, and it's nice to get a comment that's not spam. The reason I moderate comments is that I get quite a few of those.

      Delete
  34. If the disk you are extending is in a linux guest OS once you have extended the disk in vmware go to the guest OS as root and use fdisk. Do a df to see the device name, something like /dev/sda, thus fdisk /dev/sda, enter p to see current partitions, n to create a new one, accept the default size and save with w. Once done you can now see the physical disk partition in Linux. You can then use lvm gui or manual commands to initialise the partition and extend your file system. Thanks Paul for pointing me in the right direction.
    CrazyAsk


    ReplyDelete
  35. Holy crap thanks to this I have finally recovered a 20+ year old unfinailized mini DVD.

    READ TRACK INFORMATION[#4]:
    Track State: complete incremental,damaged
    Track Start Address: 34816*2KB
    Free Blocks: 319888*2KB
    Track Size: 678928*2KB
    Last Recorded Address: 393839*2KB
    READ CAPACITY: 0*2048=0

    [parker@rogally ~]$ dd bs=2048 skip=34816 count=678928 if=/dev/sr0 of=/tmp/track4.vob
    359023+0 records in
    359023+0 records out
    735279104 bytes (735 MB, 701 MiB) copied, 395.795 s, 1.9 MB/s

    ReplyDelete

Flayman on LiveJournal (old)