DVD Ripper

xrayspx's picture

Download the dvdrip bash script

This is the correct way (for me) to rip hundreds of DVDs. I still wish there was a global hash table of discs whereby we could automatically name individual files, but this does the job and I'll describe my overall workflow. Ripping TV shows is stupidly time consuming compared to audio CDs and I've done everything I can to reduce the time wastery involved. It's not perfect, but I can just feed disks through my machine all day then take an hour or so a week and rename everything I've done.

First, meet "dvdrip". That is a bash script which will rip disks to ~/dvdrip-output and put them in a sub-directory according to the disc name. The tool runs on Mac and Linux and I'm sure it'll work on Windows+Cygwin too. It's not super special, I just do a lot of workflow/quality of life optimizations.

Workflow features:
- Slam a disk in and run the script. It will wait for the drive to spin up and start once the disk is available.
- Checksum matching prevents duplicate rips
- Auto eject so you don't have to pay attention to when the run finishes
- Saves to directories based on the Disc Name + timestamp

When ripping disks I noticed a lot of inconvenient time wasters. Like you'd have individual title files, which I want, and then one massive file with all the titles concatenated which immediately doubles your rip time. And often you'd get duplicates of individual titles. DVD layout is a horrible wild-west scenario with apparently zero standardization. To combat that I do a 30 second preview rip of each title and checksum that. Then as I rip each title I can compare checksums for that title against titles that have already been ripped.

The best use case is to just feed through a few seasons of a TV show and then go back and name and label everything. That is the tedious part. dvdrip is basically fire and forget, but I do have a couple of command line switches to manually set the minimum and maximum title numbers, or to rip only one specific title.

The workflow for naming files is basically "Use thetvdb.com" and verify each and every goddamn episode by hand and then name them accordingly. TVDB has screenshots for most episodes of most shows, so I'll scrub through episodes in VLC or whatever and match that screenshot before naming the file. For this reason I really appreciate all the mainly cop shows that have the episode title after the credits or cold open. I really wish everyone did that. I use TheTVDB for a couple of reasons beyond the screenshot thing. They are used by Kodi for metadata lookups, and they're used by FileBot for renaming. The IMDB episode order doesn't match the TVDB order often enough to be annoying and their interface isn't as good for my workflow. I don't worry about episode titles which will come later. I just name each file such as "The Simpsons - S01E05.mp4" or whatever output format.

Once I have a few full seasons labeled I drag them into FileBot and have that re-rename them adding episode information.

So while I'd love to have "checksum this disk, and then name each $disk-$title according to some global database", I feel like this is as automated as I can make this process.