Added new eject_opts option for greater flexibility.
[rip_dvd/.git] / README
diff --git a/README b/README
index 3c4ef2126df92601934e40a4667211dcfe36d854..2516b7993f6928a3c969242d34e3d9b896935d74 100644 (file)
--- a/README
+++ b/README
@@ -1,3 +1,39 @@
+----------------------------------------------
+DEPENDENCIES
+----------------------------------------------
+The following packages need to be installed on your system:
+
+Package Dependencies (apt-get install these for example):
+lsdvd dvdauthor gddrescue dvdbackup tovid mencoder mplayer genisoimage gpac ogmtools
+
+The libdvdcss2 package is also needed, but can only be downloaded from the medibuntu repository:
+https://help.ubuntu.com/community/Medibuntu
+
+NOTE:  In Ubuntu, depending on your version, replace libdvdcss2 with what you find on this page.
+  https://help.ubuntu.com/community/RestrictedFormats/PlayingDVDs
+
+NOTE:  After apt-get install on Ubuntu you may need to run this:
+  sudo /usr/share/doc/libdvdread4/install-css.sh
+
+Specific Executable (program) Dependencies (must be found in $PATH):
+volname makexml lsdvd dvdauthor ddrescue dvdbackup mencoder mplayer mkisofs
+
+NOTE:  The script puts /usr/share/tovid on your path which should contain makexml
+
+Optional Dependencies:
+lookup imdb info/posters for mythvideo: http://www.mythtv.org/wiki/Fill_mythvideo_metadata.pl
+HandBrake CLI video encoder (version 0.9.3 required for xvid encoding): google to find it
+HandBrake CLI video encoder (version >=0.9.4 required for mp4 encoding): http://handbrake.fr/
+You can also get these HandBrake versions from here: https://www.pippins.net/cgi-bin/index.pl?/www/files/video_utils/handbrake
+
+Windows Dependencies:
+To play back the videos in windows that use the divx encoding profiles, you'll
+need to download and install the xvid codec:
+http://www.koepi.info/xvid.html
+
+----------------------------------------------
+INSTALL
+----------------------------------------------
 The following steps should be followed to pull this code project
 into a local GIT repository (local directory):
 
@@ -8,3 +44,112 @@ To pull updates in the future of this project into your local directory:
 > cd rip_dvd
 > git pull origin
 
+To see the changelog for what you have pulled, run this command:
+> git whatchanged
+
+-------------------------------------------------
+ENABLING MENCODER XVID TO ENCODE USING MULTICORES
+-------------------------------------------------
+The libxvidcore4 package that you can get through ubuntu or debian
+is version 1.1.0. They didn't enable multi-core encoding using this
+library until version 1.2.0. Since you can't get that in a package,
+you can build it from source easily. Since the xvid codec (this lib)
+is used by mencoder by rip_dvd in all of its xvid profiles (the default),
+you can speed up the encode process quite a bit if you enable multi-cores.
+Follow these instructions to enable the xvid encoding to use multi-cores:
+
+> wget http://downloads.xvid.org/downloads/xvidcore-1.2.1.tar.gz
+> gunzip xvidcore-1.2.1.tar.gz
+> tar xvf xvidcore-1.2.1.tar
+> cd xvidcore/build/generic
+> ./configure --prefix=/usr
+> make
+> sudo make install
+> cd /usr/lib
+> sudo rm libxvidcore.so.4
+> sudo ln -s libxvidcore.so.4.2 libxvidcore.so.4
+
+After you do these steps, when rip_dvd is running using any xvid profile,
+you will note with 'top' that the mencoder process is using > 100% of your CPU.
+
+----------------------------------------------
+CONFIGURATION
+----------------------------------------------
+You'll need to copy the rip_dvd.conf.dist file to a local copy of the
+file called rip_dvd.conf. This way, you can customize the settings
+needed by the script in a file that isn't tracked by GIT. The conf
+file tracked by GIT (rip_dvd.conf.dist) will then contain the defaults
+the script needs to run. You can override these in your own rip_dvd.conf
+file you create locally.  This will allow you to get updates from my
+GIT repository at a later point in time without blowing away your 
+local settings. You can put your copy of the rip_dvd.conf file in 
+any of the following locations:
+
+ 1) /path/to/rip_dvd/script/rip_dvd.conf.dist
+ 2) /path/to/rip_dvd/script/rip_dvd.conf
+ 3) /etc/rip_dvd.conf
+ 4) /path/to/where/rip_dvd/is/run/from/rip_dvd.conf
+
+----------------------------------------------
+MYTHTV MENU SETUP
+----------------------------------------------
+Copy the menu files provided in the GIT repository to your mythtv
+menu location:
+
+> cp optical_menu.xml /usr/share/mythtv/
+> cp rip_dvd_menu.xml /usr/share/mythtv/
+
+You'll also need to edit the rip_dvd_menu.xml file so that the paths,
+commands, buttons, actions, meet your needs to accomplish the common
+encoding tasks you will want to do.
+
+The optical_menu.xml file was modified with a single entry for the
+rip_dvd_menu.xml file. You can take a look at this entry in this file
+and place it in any xml file you want to get it on the menu you want.
+I choose to place it on the optical menu.
+
+The menu items in these examples call the rip_dvd.wrap script.
+This is a simple script I wrote to implementation hide the full
+command line options for rip_dvd from the mythtv menu system.
+I also use this wrapper script to determine where to put the
+ripped DVD images. You can copy this example and call it something
+else on your system and change it appropriately to meet your needs.
+
+----------------------------------------------
+COMMAND LINE EXAMPLES
+----------------------------------------------
+
+Rip a DVD into a compressed AVI file with default xvidhq profile:
+> rip_dvd -d /path/to/dest/dir -b 2000 -z
+
+Rip a DVD into a compressed AVI file with default xvidhq profile scaling to 320x240 compressed video size:
+> rip_dvd -d /path/to/dest/dir -b 2000 -z -a 320:240
+
+Rip a DVD into a compressed AVI file with default xvidhq profile targetting a certain compressed video filesize (in MB):
+> rip_dvd -d /path/to/dest/dir -b 2000 -z -s 650
+
+Rip a DVD into a VOB file:
+> rip_dvd -d /path/to/dest/dir -v
+
+Rip a DVD into an ISO file:
+> rip_dvd -d /path/to/dest/dir -m
+
+Rip a DVD into a burnable DVD compliant folder (creating VIDEO_TS and AUDIO_TS folders):
+> rip_dvd -d /path/to/dest/dir -f
+
+Rip a VOB file into a compressed AVI file:
+> rip_dvd -d /path/to/dest/dir -b 2000 -z -n /path/to/file.vob
+
+Rip a DVD Folder into a compressed AVI file:
+> rip_dvd -d /path/to/dest/dir -b 2000 -z -n /path/to/dvd/folder/that/contains/a/VIDEO_TS
+
+Rip a DVD into a compressed MP4 file for an ipod:
+> rip_dvd -d /path/to/dest/dir -b 2000 -z -p ipod
+
+Rip a DVD into a compressed MP4 file for an ipod AND again for a compressed AVI file:
+> dvdname=`volname /dev/dvd | awk '{ print $1 }'`
+> rip_dvd -d /path/to/dest/dir -v
+> rip_dvd -d /path/to/dest/dir/ipod -b 2000 -z -p ipod -n /path/to/dest/dir/$dvdname.VOB
+> rip_dvd -d /path/to/dest/dir/xvid -b 2000 -z -p xvidhq -n /path/to/dest/dir/$dvdname.VOB
+> rm /path/to/dest/dir/$dvdname.VOB
+