DOCUMENTATION

dvd::rip - Copyright © Jörn Reder, All Rights Reserved

1. Installation



This chapter describes how you can get and install dvd::rip. You can try one of the several binary distributions or install it from the source.


1.1 Binary distributions

Content ] [ Top ]

Installation of dvd::rip isn't that hard, but fulfilling the requirements actually is (simply because they are a lot ;). So you should first try a binary installation using the package manager of your Linux distribution. This should track all dependencies automatcially and speed up things significantly.


1.1.1 Debian packages

Christian Marillat builds video related Debian packages and publishes them on his website http://marillat.free.fr/. You can use apt-get to install the packages if you add one of the following entries (depending on your distribution) to your /etc/apt/sources.list file:

deb http://marillat.free.fr/ testing main
deb http://marillat.free.fr/ unstable main

You will find all packages to compile transcode on your own (if you need always the very latest versions), or can get binaries of reasonably recent transcode versions directly. The same applies to dvd::rip.


1.1.2 SuSE packages

Rainer Ley builds dvd::rip SuSE RPM's you can download from the contrib directory:

http://www.exit1.org/dvdrip/contrib/suse/
On packman.links2linux.de you find several video related RPM's, including transcode:
http://packman.links2linux.de/index.php4


1.1.3 Mandrake packages

Mandrake users can get actual dvd::rip and transcode RPM's from the Penguin Liberation Front lair.

http://plf.zarb.org/


1.1.4 RedHat packages

A kind RedHat user (who wants to stay anonymous) builds dvd::rip RedHat RPM's, you can download from the contrib directory:

http://www.exit1.org/dvdrip/contrib/redhat/


1.1.5 RedHat-8.0-only packages

Michel Alexandre Salim maintains an apt repository with the very latest snapshots of transcode and dvd::rip. It's for RedHat 8.0 only:

http://messlab.sourceforge.net


1.1.6 gentoo packages

You can get dvd::rip and transcode from the official gentoo package repository:

http://www.gentoo.org/packages/media-video/dvdrip.html


1.2 Source download

Content ] [ Top ]

1.2.1 dvd::rip tarball download

You can download dvd::rip sources from this server or all stable releases from any CPAN mirror.

Local download of the latest stable release:

Video-DVDRip-0.50.3.tar.gz
CPAN download directory: (list of mirrors)
http://www.cpan.org/CPAN/modules/by-authors/id/J/JR/JRED/
You can download older versions from here:
http://www.exit1.org/dvdrip/dist/
http://www.exit1.org/dvdrip/dist/pre/


1.2.2 CVS access

This is mainly intended for developers. This CVS repository is only a read only mirror of my main repository. It's updated manually when I publish releases or pre-releases, so there is no advantage for normal users compared to downloading the tar balls (besides making it easier using "cvs update" ;)

Since development of dvd::rip is divided into two branches, you get the current (unstable) version, if you don't specifiy a release tag. If you want to access a stable version, add -r rel-MAJOR-MINOR-PATCH to your cvs checkout command (example: for 0.48.5 this is -r rel-0-48-5). All subsequent updates will stay on this branch (here: 0.48). The easiest way of switching to another branch, is creating a new checkout using the corresponding release tag.

Root Module Unstable tag Stable tag
:pserver:cvs@cvs.exit1.org:/cvs dvdrip none rel-MAJOR-MINOR-PATCH


1.2.2.1 CVS examples

Checkout a stable/bugfix version (here 0.48.5) with:
cvs -z9 -d :pserver:cvs@cvs.exit1.org:/cvs checkout -r rel-0-48-5 dvdrip

Checkout the current development version with:
cvs -z9 -d :pserver:cvs@cvs.exit1.org:/cvs checkout dvdrip

Update a checkout - created using one of the commands above - with:
cd dvdrip; cvs -z9 update


1.3 Requirements

Content ] [ Top ]

dvd::rip is a Gtk+ based program written in Perl, using the video processing tool transcode and many other tools for the internals. So you first have to comply some prerequisites before installing dvd::rip.

dvd::rip expects all command line tools mentioned here to be found in the standard search PATH.


1.3.1 Brief overview

This table gives a brief overview about the tools used by dvd::rip (everything but Perl modules - see chapters below for more information about them). Most tools are optional - the corresponding dvd::rip modules are just switched off, if you don't have them.

But you need at least the tools marked mandatory, otherwise dvd::rip will complain with an error message on startup. You can get also a dvd::rip window listing this information, refer to the corresponding chapter in the documentation for details.


Tool Comment Mandatory Suggested Minimum Maximum
transcode dvd::rip is nothing without transcode Yes 0.6.3 0.6.2 -
ImageMagick Needed for preview image processing Yes 5.5.3 4.0.0 -
ps -H Needed to determine child PID's Yes 1 1 -
subtitle2pgm Needed for subtitles No 0.3 0.3 -
rar Needed for compressed subtitles No 2.71 2.71 2.99
mplayer Needed for subtitle vobsub viewing No 0.90 0.90 -
ogmtools Needed for OGG/Vorbis No 0.972 0.960 -
mjpegtools Needed for (S)VCD encoding No 1.6.0 1.6.0 -
cdrdao Needed for (S)VCD burning No 1.1.7 1.1.7 -
vcdimager Needed for (S)VCD burning No 0.7.12 0.7.12 -
mkisofs Needed for AVI/OGG burning No 2.0 1.15 -
cdrecord Needed for AVI/OGG burning No 2.0 0.7.12 -
xine Can be used to view DVD's/files No 0.9.15 0.9.13 -
fping Only for cluster mode master No 2.4 2.2 -

The following chapters describe the needed tools in detail, including information on how to get them. Additionally to the table above all need Perl modules are described also.


1.3.2 Perl 5.6.0 or better

You need a recent Perl version on your system. Perl 5.8.0 is recommended, 5.6.0 and 5.6.1 should work also. dvd::rip won't start with Perl versions prior 5.6.0. Actual distributions ship minimum 5.6.1, so this shouldn't be a real problem, anyway.


1.3.3 Perl Gtk Module

For its GUI component dvd::rip needs the Perl Gtk module, which presumes Gtk+ version 1.2 or higher. I tested dvd::rip with Perl Gtk 0.7008.

You can find the Gtk module on CPAN, e.g.:

http://www.perl.org/CPAN/modules/by-module/Gtk/
Note:
Perl Gtk detects your installed Gtk libs and build sub components only if the correspondent Gtk library was found.

dvd::rip needs the Gtk::Gdk::Pixbuf component which needs gdk-pixbuf to be installed on your system. So first make sure, that gdk-pixbuf is installed. Then install Perl Gtk and everything should work as expected.


1.3.4 transcode

dvd::rip delegates all the low level video processing to transcode, which can be obtained here:

http://www.theorie.physik.uni-goettingen.de/~ostreich/transcode/
dvd::rip should work with the latest transcode releases (at least with the latest major stable release). Otherwise correspondent notes are added to the release notes resp. posted on the homepage.

If you plan to create (S)VCD's you must compile transcode with the mjpeg export filter module. transcode's internal bbmpeg filter isn't supported yet.

Note: For almost any Linux distribution exist binary transcode packages. Compiling transcode sometimes isn't an easy task, in particular if you are not familiar with building packages, which have lots of dependencies. So you should try binary packages first. Refer to the binaries section for details.


1.3.5 Image Magick

For image processing dvd::rip uses the widely distributed software package Image Magick, at least the programs identify and convert should be installed on your system.

If your Linux distribution does not ship Image Magick, you can find it here:

http://www.imagemagick.org/


1.3.6 ogmtools

dvd::rip has support for generating audio / video ogg streams (often known as OGM streams). You need a recent version of ogmtools for that to work:

http://www.bunkus.org/videotools/ogmtools/index.html


1.3.7 subtitleripper

To get subtitles with dvd::rip you need a recent version of the subtitleripper package. It's shipped with transcode in the contrib/subrip directory or you can fetch it from the subtitleripper homepage:

http://sourceforge.net/projects/subtitleripper


1.3.8 mplayer and/or xine (with a DVD plugin)

If you have mplayer or xine (with the d4d or dvdnav plugin) installed, you can preview selected DVD titles/chapters with the appropriate audio channels.

You can download xine and mplayer from here:

http://xine.sourceforge.net/
http://www.mplayerhq.hu/


1.3.9 CD burning tools

If you want to use dvd::rip's CD burning module, you must have the following tools installed:

mkisofs
cdrecord
vcdimager
cdrdao


1.3.10 rar (for vobsub compression)

MPlayer supports vobsub files compressed with rar, but you need a 2.x version, 3.x and higher doesn't work. You can get a 2.x version locally from here:

http://www.exit1.org/dvdrip/contrib/rarlnx271.sfx.bin
I suggest to install the binary to e.g. /usr/local/bin. Then configure this path using the Preferences dialog.


1.3.11 Additional requirements for cluster mode

Some additional Perl modules and command line tools are needed for the cluster mode.


1.3.12 Perl modules

Cluster mode needs the Storable and Event Perl modules. Check if your distribution ships them already. If not, you can find them on CPAN:

http://www.perl.org/CPAN/modules/by-module/Storable/
http://www.perl.org/CPAN/modules/by-module/Event/


1.3.13 fping and pstree

The dvd::rip cluster control daemon uses fping to check if nodes are online and pstree to get information about specific child processes. Both tools should be shipped with your Linux distribution (fping sometimes isn't, but you can get it here: http://www.fping.com/).

Note: Matthias Riese told me that there are IPv6 fping packages which don't support IPv4, what's most likely not what you want, so pay attention to get the right version ("ipv6" should not occur in the package name).

dvd::rip expects fping to be installed set-uid root (because you hopefully don't run dvd::rip as root ;), which is not the default for most distributions. Please set the set-uid flag by typing this command as root:

chmod u+s /usr/sbin/fping

If fping is installed in another location, set a symlink to /usr/sbin/fping, because dvd::rip expects it there.

Note: These steps are necessary only on the computer, where the cluster control daemon runs. All slave nodes of a dvd::rip cluster only need transcode installed, dvd::rip or any packages mentioned here aren't needed there.


1.4 Install from source

Content ] [ Top ]

1.4.1 Install dvd::rip

This is quite easy, if you have managed installing the packages mentioned above... ;)

Download the .tar.gz archive of the dvd::rip version you want to install. Then extract the file, change into the created directory, generate the Makefile and execute make:

# as a normal user
tar xfz Video-DVDRip-x.xx.tar.gz
cd Video-DVDRip-x.xx
perl Makefile.PL
make
make test

If the "make test" reported no errors, you can install the files into your Perl library path. Usually you must be root to do this:

# become root
su
make install

You can ommit the "make install" step. But then you can execute the 'dvdrip' binary only from the build directory and must put "." into your PATH, otherwise dvd::rip can't find its files.


1.4.2 Update dvd::rip

Updating is just like installing. The only thing you should be aware of is switching the underlying Perl version. This way you easily can get two versions of dvd::rip installed in your system, because dvd::rip installs its libraries in your Perl library directory. Such a installation mixing isn't recommended unless you know exactly what you're doing. So it's better to remove the old version from the old Perl directory if you change the Perl version.

Read the Changes file!

I strongly suggest you reading at least the latest change log entry of the Changes file, resp. all entries of the versions you probably skipped in case of an update. It contains important release notes, e.g. about compatibility issues, and all relevant changes from release to release.

Note:
Changes on the unstable branch are logged in the file Changes.unstable.


1.4.3 Multiple dvd::rip versions in parallel

It's possible to use several dvd::rip versions in parallel on your system, but you can install only one version using make install into your system directories.

Just extract another dvd::rip version you want to use somewhere, enter the created directory (Video-DVDRip-x.xx) and execute perl Makefile.PL && make here (no make install). Add the actual directory to your PATH (export PATH=.:$PATH) and you can start this version with ./dvdrip from this directory. All files and libraries located in the actual distribution directory will be used. The . in PATH is neccessary, otherwise some dvd::rip helper binaries may be taken from another place.

tar xvfz Video-DVDRip-x.xx.tar.gz
cd Video-DVDRip-x.xx
perl Makefile.PL && make
export PATH=.:$PATH
./dvdrip

1.5 Download this documentation

Content ] [ Top ]

You can download a static HTML version of this documentation:

http://www.exit1.org/dvdrip/dist/dvdrip-doc-html.tar.bz2
A PDF version is also available (generated using the excellent tool htmldoc):
http://www.exit1.org/dvdrip/dist/dvdrip-doc.pdf.bz2


DOCUMENTATION

dvd::rip - Copyright © Jörn Reder, All Rights Reserved