Added instructions for making xvid encoding multi-core.
[rip_dvd/.git] / README
1 ----------------------------------------------
2 DEPENDENCIES
3 ----------------------------------------------
4 The following packages need to be installed on your system:
5
6 Package Dependencies (apt-get install these for example):
7 lsdvd dvdauthor gddrescue dvdbackup tovid mencoder mplayer genisoimage libdvdcss2
8
9 Specific Executable (program) Dependencies (must be found in $PATH):
10 volname makexml lsdvd dvdauthor gddrescue dvdbackup mencoder mplayer mkisofs
11
12 Optional Dependencies:
13 lookup imdb info/posters for mythvideo: http://www.mythtv.org/wiki/Fill_mythvideo_metadata.pl
14
15 ----------------------------------------------
16 INSTALL
17 ----------------------------------------------
18 The following steps should be followed to pull this code project
19 into a local GIT repository (local directory):
20
21 This command will create a directory called "rip_dvd" in the CWD and pull the code for this project:
22 > git clone http://git.pippins.net/rip_dvd/.git rip_dvd
23
24 To pull updates in the future of this project into your local directory:
25 > cd rip_dvd
26 > git pull origin
27
28 ----------------------------------------------
29 ENABLING XVID TO ENCODE USING MULTICORES
30 ----------------------------------------------
31 The libxvidcore4 package that you can get through ubuntu or debian
32 is version 1.1.0. They didn't enable multi-core encoding using this
33 library until version 1.2.0. Since you can't get that in a package,
34 you can build it from source easily. Since the xvid codec (this lib)
35 is used by mencoder by rip_dvd in all of its xvid profiles (the default),
36 you can speed up the encode process quite a bit if you enable multi-cores.
37 Follow these instructions to enable the xvid encoding to use multi-cores:
38
39 > wget http://downloads.xvid.org/downloads/xvidcore-1.2.1.tar.gz
40 > gunzip xvidcore-1.2.1.tar.gz
41 > tar xvf xvidcore-1.2.1.tar.gz
42 > cd xvidcore/build/generic
43 > ./configure --prefix=/usr
44 > make
45 > sudo make instal
46 > cd /usr/lib
47 > rm libxvidcore.so.4
48 > ln -s libxvidcore.so.4.2 libxvidcore.so.4
49
50 After you do these steps, when rip_dvd is running using any xvid profile,
51 you will note with 'top' that the mencoder process is using > 100% of your CPU.
52
53 ----------------------------------------------
54 CONFIGURATION
55 ----------------------------------------------
56 You'll need to copy the rip_dvd.conf.dist file to a local copy of the
57 file called rip_dvd.conf. This way, you can customize the settings
58 needed by the script in a file that isn't tracked by GIT. The conf
59 file tracked by GIT (rip_dvd.conf.dist) will then contain the defaults
60 the script needs to run. You can override these in your own rip_dvd.conf
61 file you create locally.  This will allow you to get updates from my
62 GIT repository at a later point in time without blowing away your 
63 local settings.
64
65 ----------------------------------------------
66 MYTHTV MENU SETUP
67 ----------------------------------------------
68 Copy the menu files provided in the GIT repository to your mythtv
69 menu location:
70
71 > cp optical_menu.xml /usr/share/mythtv/
72 > cp rip_dvd_menu.xml /usr/share/mythtv/
73
74 You'll also need to edit the rip_dvd_menu.xml file so that the paths,
75 commands, buttons, actions, meet your needs to accomplish the common
76 encoding tasks you will want to do.
77
78 The optical_menu.xml file was modified with a single entry for the
79 rip_dvd_menu.xml file. You can take a look at this entry in this file
80 and place it in any xml file you want to get it on the menu you want.
81 I choose to place it on the optical menu.
82
83 ----------------------------------------------
84 COMMAND LINE EXAMPLES
85 ----------------------------------------------
86
87 Rip a DVD into a compressed AVI file with default xvidvhq profile:
88 > rip_dvd -d /path/to/dest/dir -b 2000 -x
89
90 Rip a DVD into a compressed AVI file with default xvidvhq profile scaling to 320x240 compressed video size:
91 > rip_dvd -d /path/to/dest/dir -b 2000 -x -a 320:240
92
93 Rip a DVD into a compressed AVI file with default xvidvhq profile targetting a certain compressed video filesize (in MB):
94 > rip_dvd -d /path/to/dest/dir -b 2000 -x -s 650
95
96 Rip a DVD into a VOB file:
97 > rip_dvd -d /path/to/dest/dir -v
98
99 Rip a DVD into an ISO file:
100 > rip_dvd -d /path/to/dest/dir -m
101
102 Rip a DVD into a burnable DVD compliant folder (creating VIDEO_TS and AUDIO_TS folders):
103 > rip_dvd -d /path/to/dest/dir -f
104
105 Rip a VOB file into a compressed AVI file:
106 > rip_dvd -d /path/to/dest/dir -b 2000 -x -n /path/to/file.vob
107
108 Rip a DVD Folder into a compressed AVI file:
109 > rip_dvd -d /path/to/dest/dir -b 2000 -x -n /path/to/dvd/folder/that/contains/a/VIDEO_TS
110
111 Rip a DVD into a compressed MP4 file for an ipod:
112 > rip_dvd -d /path/to/dest/dir -b 2000 -x -p ipod
113
114 Rip a DVD into a compressed MP4 file for an ipod AND again for a compressed AVI file:
115 > dvdname=`volname /dev/dvd | awk '{ print $1 }'`
116 > rip_dvd -d /path/to/dest/dir -v
117 > rip_dvd -d /path/to/dest/dir/ipod -b 2000 -x -p ipod -n /path/to/dest/dir/$dvdname.VOB
118 > rip_dvd -d /path/to/dest/dir/xvid -b 2000 -x -p xvidvhq -n /path/to/dest/dir/$dvdname.VOB
119 > rm /path/to/dest/dir/$dvdname.VOB
120