2. System Preparation
2.1. Hardware Prerequisites
A certain level of processing power is necessary for smooth DVD
playback. The system requirements in Linux are somewhat higher than in
Windows, because many of the techniques used for hardware acceleration
of video playback work only in Windows.
At a minimum, I recommend the following:
2.2. Creating the /dev/dvd symlink
If you don't already have a /dev/dvd symbolic
link, then run (as root) the
command
# ln -s /dev/hdc /dev/dvd
|
to create a symbolic link from
/dev/dvd to the
actual hardware device representing your DVD-ROM drive
(which in this example is
/dev/hdc, but you should
replace it with the actual device file used by your drive). The
/dev/dvd link is not merely a matter of
convenience; almost all of the player software mentioned in this HOWTO
assumes that the link is there.
If you don't know which device name your DVD-ROM drive uses, you
can usually find it with the command dmesg | grep
DVD in the console or a shell right after booting up the system.
2.3. Setting the DVD Region
All DVD drives (except for RPC Phase I drives made in
1999 or before) enforce region playback
restrictions in the drive firmware and consequently are supposed to
be set to a specific region before they can play back discs from that
region (and only that region). In reality, most Linux DVD playback
software can bypass the DVD drive's built-in region locks, but it takes
extra time for the software to break the region lock, and it is better
to avoid the complications of region locks if you can.
For the small minority of readers who own RPC-I drives, you do not need
to do anything: your drive is already capable of handling DVDs from all
geographical regions. These drives are old enough by now that everybody
who has one of them probably knows already that they have one.
For the majority of readers who have RPC-II drives, there are several
options available:
If you only watch discs from one region, the easiest option
is to use the regionset program to
set your DVD drive to the correct region.
If you want to watch discs from multiple regions, you can
try to find a firmware upgrade for your DVD drive in the firmware-flash.com
collection of unofficial firmware files. Note that most of these
files require you to boot to DOS or Windows to install.
You can buy a separate DVD drive for each DVD region that you
wish to use. The prices for DVD-ROM drives have dropped low enough to make
this strategy feasible.
Of course, you can simply do nothing, and rely on the
built-in ability of Linux software to bypass the region restrictions.
Note that even in this case you should use the regionset program to
set the drive to the region that you will be using the most, because an
RPC-II drive without a region setting behaves as if
all the regions are locked out.
2.4. X Video Overlay
The XFree86 video overlay extension is a very poorly documented
standard feature of XFree86 4.x and is absolutely
essential for high quality video playback under Linux. It is
the only type of hardware playback acceleration that is widely
supported in Linux, and it is by far the single most important
configuration element for DVD playback on a Linux system.
To check if you have this extension, type
xvinfo in an X terminal. If the command returns
several screens full of important-looking output, then congratulations,
you have hardware video overlay and you need not worry about it anymore.
If, on the other hand, xvinfo returns with a negative answer like:
# xvinfo
X-Video Extension version 2.2
screen #0
no adaptors present
|
then that means you don't have hardware overlay support. See
Overlay Troubleshooting for tips
on how to get overlay support working.
2.5. Enabling DMA
DMA drive access is critical for DVD playback because it lowers
the CPU overhead of disc reading and leaves more of the CPU free for
video playback. On most systems, enabling DMA support for the DVD drive
means the difference between choppy playback and smooth playback.
To see if you have DMA enabled, type (as root) the
command
(replacing
/dev/hdc with
your DVD drive's actual device name). If DMA is already on, then you're
done. Otherwise, you should turn it on by typing
hdparm -d 1
/dev/hdc. You may want to add this command to a startup
script such as
/etc/rc.d/rc.local to ensure that
the DMA support is active every time your computer boots.
See the DMA Troubleshooting section
if DMA won't turn on even after you've typed the command to turn it
on.