This post is about how to backup and playback DVD content on a hard drive using the command line.
- Check available space on hard drive.
$ df -h Filesystem Size Used Avail Use% Mounted on rootfs 1.4T 41G 1.2T 4% / udev 10M 0 10M 0% /dev tmpfs 1.6G 900K 1.6G 1% /run /dev/disk/by-uuid/6c30b 1.4T 41G 1.2T 4% / tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 9.6G 640K 9.6G 1% /run/shm
The df command indicates that 1.2 TB is available on my hard drive, which is plenty to hold the 4 GB DVD.
- Insert disc into DVD drive.
- Backup DVD.
Both the dd and readom commands write to a single iso file. The dvdbackup command writes out the DVD file structure - the complete VIDEO_TS folder.
$ dd if=/dev/dvd of=~/birthday.iso 8310528+0 records in 8310528+0 records out 4254990336 bytes (4.3 GB) copied, 303.204 s, 14.0 MB/s
According to its man page, "unless you want to risk getting problems, readom should be run as root." Hence, sudo below.
$ sudo readom dev=/dev/dvd f= ~/birthday.iso Read speed: 5540 kB/s (CD 31x, DVD 4x). Write speed: 22160 kB/s (CD 125x, DVD 16x). Capacity: 2077632 Blocks = 4155264 kBytes = 4057 MBytes = 4254 prMB Sectorsize: 2048 Bytes Copy from SCSI (3,0,0) disk to file '/home/peter/birthday.iso' end: 2077632 addr: 2077632 cnt: 64 Time total: 277.602sec Read 4155264.00 kB at 14968.4 kB/sec.
The -o parameter specifies the output directory under which the DVD file structure will be copied. This directory does not need to be unique for your DVDs. This is because a title sub-directory will be created under it. For example, you can have a common ~/movies output directory for all your home movies with different titles.
The -M parameter specifies that you want to "mirror", i.e., backup, the whole DVD.
The optional -p parameter enables progress reporting during the backup operation.
$ dvdbackup -p -M -i /dev/dvd -o ~/movies libdvdread: Using libdvdcss version 1.2.13 for DVD access libdvdread: Attempting to retrieve all CSS keys libdvdread: This can take a long time, please be patient libdvdread: Get key for /VIDEO_TS/VIDEO_TS.VOB at 0x0000011e libdvdread: Elapsed time 0 libdvdread: Get key for /VIDEO_TS/VTS_01_0.VOB at 0x0000358c libdvdread: Elapsed time 0 libdvdread: Get key for /VIDEO_TS/VTS_01_1.VOB at 0x00003710 libdvdread: Elapsed time 0 libdvdread: Found 1 VTS's libdvdread: Elapsed time 0 Copying menu: 100% done (26/26 MiB) Copying menu: 100% done (1/1 MiB) Copying Title, part 1/4: 100% done (1024/1024 MiB) Copying Title, part 2/4: 100% done (1024/1024 MiB) Copying Title, part 3/4: 100% done (1024/1024 MiB) Copying Title, part 4/4: 100% done (958/958 MiB)
- Playback video.
My favorite video player is VideoLAN, aka vlc. It can open an iso file as well as a title directory.
To play back a DVD backed up using dvdbackup:
$ vlc --fullscreen ~/movies/2014birthday
Note that 2014birthday is the title directory created under the ~/movies directory.
To play back a DVD backed up using dd or readom, you need to first mount the iso file:
$ sudo mkdir /mnt/iso $ sudo mount -t iso9660 -o ro,loop ~/birthday.iso /mnt/iso $ vlc --fullscreen /mnt/iso
My next article discusses the same topic but introduces GUI tools.