DVD Decrypter: <http://www.dvddecrypter.org.uk/>
Nero AAC codec (audio codec): <http://www.nero.com/enu/company/about-nero/nero-aac-codec.php>
Avidemux (optional, but recommended): <http://fixounet.free.fr/avidemux/>
Rip DVD onto hard drive using DVD Decrypter:
Insert a DVD then:
A. On the menu bar select Mode -> IFO.
B. On the right, click the "Stream Processing" tab
C. Check 'Enable Stream Processing'
D. Make sure the right video stream and audio streams are selected (uncheck Spanish and French audio streams). The 0x80 is the audio stream you want (regular English soundtrack)--it is sometimes 6 channel audio but you'll convert that to stereo later. Usually the feature film is selected by default; if the DVD has bonus content, you'll see other streams.
E. Verify the Destination (left side)--this is where the *.vob files will be saved.
F. Click the DVD "play/rip" icon to start the DVD rip process.
(When DVD Decrypter is finished, it plays an ANNOYING sound. Go to Tools->Settings->Sounds and uncheck both boxes to keep from going crazy.)
You should now see *.vob files in ~1GB sizes. Usually there are 3-6 of them for each DVD. You can run multiple instances of DVD Decrypter, one for each DVD drive connected to your computer. Change the Source to choose the drive.
Verify the rip worked; *.vob files are directly playable by Windows Media Player. Windows will say it can't open the file, but just open the file directly from Windows Media Player and ignore the warning.
Watch this tutorial for an overview (MeGUI is very complex): <http://youtu.be/3v-B2D5qDa4>
I use MeGUI differently than the guy in the video; my notes follow.
Download and install Avisynth:
Download and install MeGUI:
Nero AAC codec (audio codec):
There are three files in the .zip file in the win32 folder; copy these *.exe files to the main MeGUI folder (same folder as where megui.exe is).
0. Run MeGUI. Options -> Settings -> External Program Configuration -> Enable NeroAacEnc (check box) and set the location.
1. Demux (separate) the streams: Tools -> File Indexer
2. Input File -> choose the first *.vob file; the other *.vob files will all be included in the final version.
3. Verify that  is selected under 'Audio Demux'.
4. Queue. This takes ~1min to create a .dgv index file. After this finishes, two windows appear: preview window (with the film set to the middle) and an "AviSynth script creator" window.
5. The AviSynth script creator window is where you can crop and resize the video to fit the target device.
CROP: I usually crop the top/bottom black bars.
RESIZE: Usually the width of a DVD movie is about 720 pixels wide; I usually change this to 320--fewer pixels means smaller filesize. Experiment, but be sure that the combination of cropping and resizing results in an aspect ratio that is within a few percent of the original (or people will have really fat heads or really small bodies . The 'Aspect Ratio Error' indicates this.
6. Hit the Save button. You are now back on the main MeGUI window.
7. Input tab -> Video encoding -> Encoder settings: make sure the dropdown box says 'x264: *scratchpad*' (this is the H.264 encoding that works for iPad/iPod and QuickTime). Click Config.
8. The x264 configuration dialog appears. This is where you set the quality of your encoded video--these settings will have the biggest effect on the resulting file size. You can check 'Show Advanced Settings' but these settings are CRAZY and I've never used them.
9. I usually set the 'Encoding Mode' to 'Constant Quality'. Change the 'Quality' to 18-26 (lower is higher quality).
10. Set the Target Playback Device.
11. Save this as a preset under 'Presets'. (Give a name like 'mySettings').
12. Click OK. Notice how the Encoder settings box says 'x264: mySettings'; you can select this in the dropdown box in the future without having to click Config.
What you just did was configure how you want to re-encode the video. Now you need to decide how to re-encode the audio stream.
13. Under Audio, select the Encoder settings and choose Nero AAC. Click Config.
14. For the Audio Options, I usually set the 'Output Channels' to 'Downmix multichannel to Stereo' and the Sample Rate to '44100 Hz'.
15. Now that you've configured the video and audio settings, click AutoEncode (bottom-right). Select MP4 for the container. Name the output file (keep the .mp4 extension). Under Size and Bitrate, select 'No Target Size'. Hit 'Queue'.
16. It will preprocess, encode the audio, encode the video, then it will multiplex (mux) the streams together and pack them in the .mp4 container.
While you are waiting you can rip more DVDs and complete part 2 to add them to the queue.
PART 3 - POTENTIAL PROBLEMS
- If the video plays, but there is no audio, you only need to re-encode the audio and then remux the new audio to the video that works. You can do this using Avidemux: