back to ripmake homepage
ripmake is usually called as follows:
ripmake <input> <flavor>
In the current version you can pass a DVD directory or an AVI file as input. The DVD directory must contain an image of all title files (video_ts.ifo, vts_xx_0.ifo, vts_xx_y.vob). Use a tool like cpdvd to transfer the data to your harddisk. You can also specify your DVD device here to directly rip from a disc (e.g. /dev/dvd).
The second argument specifies the output flavor. A flavor combines a transcode output plugin with several processing options and restrictions. Currently the flavors avi, vcd and svcd are supported. E.g. the svcd flavor restricts the frame size to be standard conform, knows about the maximum bitrate and uses the correct scaling. The avi flavor on the other hand can use an (almost) unrestricted frame size and bitrate.
Ripmake needs two extra options if you want to extract non-default input parameters. The first option -t is required if you don't request the first title in a DVD input. E.g.:
ripmake -t 4 myDVDdir avi # pick title 4
The second main option -a lets you specify another audio track and additionally the output bitrate. You can repeat the -a option if you want to process multi-audio rips. E.g.:
ripmake -a 0,128 myDVDdir avi # this is the default: track 0 of source @ 128 kbps ripmake -a 1,96 -a 2,160 ... # dual channel: track 1 @ 96 kbps, ...
If you omit the second argument (bitrate) then 128 kbps is assumed for the avi flavor and 224 kbps for svcd and vcd flavors. Have a look at the probed parameters ripmake gives you. There you can select the correct audio track for your preferred language.
If you are not satisfied with the full automatic processing of ripmake or ripmake is not able to determine all parameters automatically then you can restrict or overwrite its behaviour with the following options:
You can force an output TV norm (useful only for vcd/svcd flavor) with the -n option. Otherwise ripmake tries to deduce the norm from the given input data. E.g.:
ripmake -n ntsc test.avi svcd # force a ntsc svcd
If you are not satisfied with the chosen frame size in AVI mode then force the size with the -g option. This will still perform the number of CD autoselection. If you don't want this either then you also have to pass the -c option. E.g.:
ripmake -g 512,288 -c 1 myDVD/ avi # force framesize 512,288 on a single CD
You can modify the assumed CD size (700 MB) with the -s option. If you want to rip movies shorter than a CD or if you want to pack some episodes on a single disc then you can specify the -S option to use only a fraction of the disc for the movie. E.g.:
ripmake -S 0.333 epsiode1/ avi # use only a third of the disc space
The flavors mainly specify a processing setup used in transcode and are not strictly focused on a single output codec. E.g. the avi flavor can be used with the DivX4 codec but also with XviD. So the -o option lets you choose which codec you want for the specified flavor. E.g.:
ripmake -o divx4 test/ avi # use divx4/5 codec instead of default XviD
If your input signal is encoded interlaced then you have to pass the option -i 1.
You can control the automatic clipping with the -r option. Passing -r 0 will completely disable the clipping algorithm and speeds up ripmake considerably. You can also pass a manual clip range with:
-r <top>[,<left>[,<bottom>[,<right>]]]
Syntax is the same as in transcode's -j option.
If your input is not recognized correctly then you can force a transcode input codec with the -f option. Try -f af6 if your avi file makes trouble.
With the following options you can control nearly all (internal) features of ripmake. Use this mechanisms if the common options (above) are not suitable in your case.
The -d <num> option enables some debug output. This will dump the internal state every now and then and is quite useful to see if something went wrong. Use this option extensively to discover malfunctions and to report bugs.
Debug Level |
Explanation |
1 |
print all external command calls with options keep sample files after clip search |
2 |
print output of all external commands |
5 |
print all internal parameter hashes |
With -x you can directly set a value of the internal option variables. Call "-x help" to see a list of available values. With the "-x option=value" you can set a parameter. E.g.:
ripmake -x force_clip=0,0,0,0 # same as -r 0
Most of these values are hopefully self-explaining. In the future I may comment on some...
If all went well with ripmake then you will find a makefile in the current directory. It's called <input-flavor>.mak. If you call make without a specific rule then the file will generate a one second sample of your input movie. Use this to verify that all options are set up correctly:
make -f mymovie-avi.mak # generate a one second sample AVI movie
Overwrite the RANGE_SAMPLE parameter if you want to generate a sample with another frame range:
make -f mymovie-avi.mak RANGE_SAMPLE=100-200
By overwriting make variables you can easily adjust all parameters if you are not satisfied with them.
You launcht the main rip process by calling the rip rule:
make -f mymovie-avi.mak rip # call main rip rule
This will process the video, the audio and finally compose the result.
Switch | Purpose | Default |
---|---|---|
-t <title> | Set title for DVD input (given in cpdvd) | 1 |
-a <track>[,<bps>[,<samprate>[,<channels>]]] | Pick audio track and specify output audio parameters | 0,128(avi)/224(vcd/svcd) |
-n <pal|ntsc|ntscfilm|none> | Setup output TV norm | autodetect |
-i <on/off> | Input signal is interlaced 1=on, 0=off | 0 (off) |
-r <val>[,<val>..] | Force clip values | autodetect |
-g <w>[,<h>] | Force output frame size | autodetect |
-c <num> | Force number of CDs | autodetect |
-s <cdsize> | Set the size of a CD | 700 |
-S <fraction> | Use only a fraction of the CD for the movie | 1.0 |
-o <vcodec>[/<vc_opts>][,<acodec>] | Use another output codec for flavor | avi: xvid+mp3 |
-f <vcodec>[,<acodec>] | Force an input codec | |
-X <file> | Read options from file | |
-x <opt>=<val> | Set Expert option | see -x help |
-p <on/off> | Enable probe-only mode | 0=off |
-d <level> | Set debug output level | 0 |