The "rip without encoding" feature in K9Copy stores the selected video and audio streams in a .mpg file which can be fed into a transcoder without further steps. I played around with ffmpeg a bit, but it seems to contain several Ogg related codecs which require fine tuning until you get a good result. After searching the web, I found the super easy solution: ffmpeg2theora. It's a small wrapper around ffmpeg that takes an input file, writes to an output file or stdout and provides a few speed/quality related options.
In the most simple case, if you want to convert some small clip or such, you would just do ffmpeg2theora infile and it would trancode to infile.ogv. For DVD material I recommend overriding a few defaults. Good quality seems to be achieved by calling it this way: ffmpeg2theora -v 6 -c 2 -a 5 --optimize infile.mpg. This sets above-average video quality (6, default is 5), downmixes the source audio to two channels if necessary, sets audio quality to 5 (CD quality) and enables a few file size optimizations.
Here are the steps in detail:
- Start the K9Copy Assistant.
- Select your DVD drive as the backup source.
- As the backup target, select "rip without encoding" and specify an output file.
- Unselect all titles except the main movie; use the video preview if you are unsure what title to select.
- Select the desired audio streams and subtitles; usually you will only want to keep the primary audio stream of the desired language.
- Unselect "change shrink factor" if it is selected.
- When K9Copy is done ripping, open a terminal in the directory with the ripped file and do ffmpeg2theora -v 6 -c 2 -a 5 --optimize yourrippedfile.mpg