I was lucky enough to catch Martin’s post on Planet Larry today about undvd, a script he’s working on — very cool, Martin, I love it. I’m actually working on one of my own, or have been for a while, and I’ve been toying with the idea of cleaning it up and releasing it for public consumption.
I actually started writing my own because, as Martin says, all the other ones out there are too complex, and I prefer a simple command-line app that does exactly what I need it to do. I call mine dvd2mkv, since I extract everything I want (video, audio, subtitles, chapters) and dump it straight into a Matroska file.
In fact, the script is already done, and it works great. It automates the entire process — selects the longest video track, the widescreen one if there if full frame is on there as well, grabs the English (or preferred language track) with the highest number of channels (Dolby or DTS), plus the English subtitles if they exist, and finally the chapters. All I have to do is put in the title of the movie, and even then if the disc ID is the title, then you can skip past that as well.
In fact, here’s the output of a movie I just ripped a few minutes ago, Return to Me. Great movie, btw.
steve@charlie ~/dvd $ dvd2mkv
[DVD] Disc title: RETURN_TO_ME
Enter a movie title: [Return To Me]
[Video] Track number: 5
[Video] Aspect ratio: 16/9
[Video] Length: 115.79
[Audio] Track: 128
[Audio] Format: Dolby Digital
[Audio] Channels: 6
[DVD] Subtitles: None
[DVD] Ripping MPEG-2
[DVD] Ripping chapters
[MKV] Creating Matroska file
And that’s it! Pretty simple. 🙂 Mine doesn’t have support (right now) for re-encoding the movies, since I’ve already gone into quite a bit of length on why I don’t like doing that, but it would be simple to add. In fact, my shortcut method would just be to have the user setup mencoder profiles in the config file and call those directly.
Anyway, I like the idea of cleaning it up and throwing it out there, so I’ll probably be doing that fairly soon here. If it works good enough for me (picky as I am), it’s sure to help out someone. 🙂
I’ve been following your progress and would be extremely interested in testing/assisting in this project. I’d rather not have to carry around a “box” set of a season to watch a season at a time of my favorite programs. Having them organized by the seasons/episode sequences would make watching them easier.
Salin
@Salin,
That’s what bend is for (dvd batch encoding daemon), just for TV shows. I’ve been really reluctant to release that one, since it has a lot of deps, and is not really user-friendly … but it certainly can be with some good documentation. I’ll look at it, though it’s going to require a lot of code cleanup before I consider it worthy of releasing it in the wild. Maybe Ill just release it anyway, ugliness and all. 🙂
Matroska is a good choice, it’s a better container in technical terms. And obviously the subtitle support is cool too. I prefer using plain old stupid avi in undvd just for the sake of keeping it simple for people who don’t know what any of this is. 🙂
@Salin: FYI the mentioned script (undvd) has reasonable support for ripping multiple titles off a DVD. My technical choices are a bit different from Steve’s though.