Mercurial > mplayer.hg
view DOCS/cd-dvd.html @ 5859:a24e39bf2776
updated DVD documentation for libmpdvdkit
author | gabucino |
---|---|
date | Sat, 27 Apr 2002 09:08:30 +0000 |
parents | 6cb9d9a1716d |
children | 54283d7bc90a |
line wrap: on
line source
<HTML> <HEAD> <STYLE> .text {font-family : Verdana, Arial, Helvetica, sans-serif; font-size : 14px;} </STYLE> </HEAD> <BODY BGCOLOR=white> <FONT CLASS="text"> <P><B><A NAME=4.1>4.1. CD-ROM drives</A></B></P> <P>Playing standard Video CDs:</P> <P> mplayer -vcd <I>trackno</I> [-cdrom-device device]<BR><BR> Examples:<BR> mplayer -vcd 1<BR> mplayer -fs -vcd 2 -cdrom-device /dev/hdc<BR> </P> <P> Notes:<BR> - Do NOT mount VCD disks and play DAT files directly! It may work under windows but won't work under linux. You have to play them directly, with the -vcd option!<BR> - VCD disks usually have 2 tracks: a data track (containing autostart windows playback program, karaoke data etc) and a mode-2 track (the movie), so try -vcd 2 first!<BR> - the default VCD device is /dev/cdrom. if your device differs, then you have to make a symlink, or specify it in command line! </P> <P>From Linux documentation:</P> <P>Some CDROM drives are capable of changing their head-speed. There are several reasons for changing the speed of a CDROM drive. Badly pressed CDROMs may benefit from less-than-maximum head rate. Modern CDROM drives can obtain very high head rates (up to 24-times is common). It has been reported that these drives can make reading errors at these high speeds, reducing the speed can prevent data loss in these circumstances. Finally, some of these drives can make an annoyingly loud noise, which a lower speed may reduce.</P> <P>The recommended way to do it is with a program called 'setcd' . It's kinda old, but won't be too hard to find on the Net. (UPDATE : new hdparm has an option for this !) Use it with :</P> <P> <CODE>setcd -x [speed] [cdrom device]</CODE></P> <P>Also you can try:</P> <P> <CODE>echo current_speed:4 >/proc/ide/[cdrom device]/settings</CODE></P> <P>but you'll need root privileges. I use following command too:</P> <P> <CODE>echo file_readahead:2000000 >/proc/ide/[cdrom device]/settings</CODE></P> <P>for 2MB prefetched reading from the file (it's useful for scratched CDROMs). It's recommended that you tuneup your CDROM drive also with hdparm:</P> <P> <CODE>hdparm -d1 -a8 -u1 (cdrom device)</CODE></P> <P>to enable using DMA access, readahead, and IRQ unmasking. (if you don't understand these, *read the hdparm manpage*)</P> <P>Please refer to "<CODE>/proc/ide/[cdrom device]/settings</CODE>" for fine-tuning your CDROM.</P> <P><B><A NAME=4.2>4.2. DVD playback</A></B></P> <P><B>MPlayer</B> uses <CODE>libdvdread</CODE> and <CODE>libdvdcss</CODE> for DVD decryption and playing. These two libraries are contained in the <CODE>libmpdvdkit/</CODE> subdirectory in the <B>MPlayer</B> tree, you don't have to install them separately. We opt for this solution because we had to fix a libdvdread bug, and apply a patch which adds <B>cracked CSS keys caching support</B> for libdvdcss (results in large speed increase before playing). These cracked keys are stored in <CODE>$HOME/.mplayer/DVDKeys</CODE> directory.</P> <P>Support for <CODE>dvdnav</CODE> is being added (not usable now).</P> <LI><P><B>Old-style DVD support - <I>OPTIONAL</I></B></P> <P><I>Useful if you want to play encoded VOB's from hard disk. Compile and install <B>libcss</B> 0.0.1 (not newer) (if <B>MPlayer</B> can't detect it, use the <CODE>-csslib /path/to/libcss.so</CODE> option).</P></LI> <LI><P><B>Compile MPlayer.</B></P> <P>Run <CODE>./configure</CODE>. If you didn't delete <CODE>libmpdvdkit</CODE> subdirectory from MPlayer tree, ./configure should say the following:</P> <P><CODE>Checking for DVD support (libmpdvdkit) ... yes</CODE></P> <P>(of course you can put your favourite configure options into the command line when you run ./configure)</P> <P><B>MPlayer</B> can use <CODE>libdvdread</CODE> and <CODE>libdvdcss</CODE> libraries installed system-wide, but this solution is NOT RECOMMENDED, as can result in bugs, library incompatibilities, and slower speed.</P> <P>Either way, say: <CODE>make</CODE>, then <CODE>make install</CODE>.</P> <P><B>Using MPlayer to play DVDs:</B></P> <TABLE BORDER=0 WIDTH=100%> <TD VALIGN=top><FONT CLASS="text">-dvd <title_id> </TD> <TD><FONT CLASS="text">Enables DVD support and selects title.</TD><TR> <TD VALIGN=top><FONT CLASS="text">-chapter <chapter_id> </TD> <TD><FONT CLASS="text">Selects DVD chapter(s) to play (default: play from chapter 1). Example : <CODE>-chapter 5-10</CODE> or <CODE>-chapter -9</CODE></TD><TR> <TD VALIGN=top><FONT CLASS="text">-dvdangle <angle_id> </TD> <TD><FONT CLASS="text">Selects camera angle (default: 1)</TD><TR> <TD VALIGN=top><FONT CLASS="text">-alang <country code> </TD> <TD><FONT CLASS="text"> The <CODE>country code</CODE> tells <B>MPlayer</B> which audio language(s) to prefer. For the list of available languages, add <CODE>-v</CODE> option after your DVD options, and browse the output.<BR> For example :<BR> <CODE>-alang hu,en</CODE> - first tries to find hungarian audio, and if not found, decode english audio.</TD></TR> <TD VALIGN=top><FONT CLASS="text">-slang <country code> </TD> <TD><FONT CLASS="text"> Turns on DVD subtitles. The <CODE>country code</CODE> tells <B>MPlayer</B> which language(s) to prefer. For the list of available languages, add <CODE>-v</CODE> option after your DVD options, and browse the output.<BR> For example :<BR> <CODE>-slang hu,en</CODE> - first tries to display hungarian subtitles, and if not found, display english subtitles.</TD></TR> <TD VALIGN=top><FONT CLASS="text">-sid <subtitle_id> </TD> <TD><FONT CLASS="text"> Displays a subtitle channel with the given <CODE>id</CODE> (values can be 0-31). Useful for example with badly mastered DVDs where country code selects the wrong channel.</TD></TR> <TD VALIGN=top><FONT CLASS="text">-csslib <path/filename></TD> <TD><FONT CLASS="text"> (old-style DVD option) This option is used to override the default location of <CODE>libcss.so</CODE> </TD></TR> <TD VALIGN=top><FONT CLASS="text">-dvdauth <DVD device> </TD> <TD><FONT CLASS="text"> (old-style DVD option) Turns on DVD authentication using the given device. </TD></TR> <TD VALIGN=top><FONT CLASS="text">-dvdkey <CSS key></TD> <TD><FONT CLASS="text"> (old-style DVD option) When decoding from non-DVD, this option gives the CSS key needed to crack the DVD (the key is printed when authenticating with DVD). </TD></TR> </TABLE> <P>Default device is <CODE>/dev/dvd</CODE>, you can change it in config.h (compile time option), or you can specify it using the -dvd-device option : </P> <P> <CODE>mplayer -dvd 1 -dvd-device /dev/dvd</CODE></P> <P> <CODE>mplayer -dvd 1 -slang en -dvd-device /dev/dvd</CODE></P> <P> <CODE>mplayer -dvd 1 -slang en -dvd-device /dev/dvd -chapter 20-25</CODE></P> <P> <CODE>mplayer -dvd 2 -alang sp -chapter 5 -dvdangle 2</CODE></P> <P> <CODE>mplayer -dvdauth /dev/dvd /mnt/cd/video_ts/vts_03_1.vob</CODE></P> <P> <CODE>mplayer -dvdkey C005D4A16D vts_03_1.vob</CODE></P> <P><B><A NAME=4.3>4.3. DVD playback FAQ</A></B></P> <TABLE BORDER=0 ALIGN=left WIDTH=100%> <TD></TD><TD VALIGN=top>Q:</TD><TD WIDTH=100%><B><FONT CLASS="text"> Playing a DVD, I encountered this error :<BR> <CODE>mplayer: ifo_read.c:1143: ifoRead_C_ADT_internal: Assertion nfo_length / sizeof(cell_adr_t) >= c_adt->nr_of_vobs' failed.</CODE> </B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD><FONT CLASS="text"> This is a known libdvdread 0.9.1 bug, it should be already fixed in 0.9.2 and libmpdvdkit, use the later. </TD><TR><TD COLSPAN=3> </TD><TR> <TD></TD><TD VALIGN=top>Q:</TD><TD WIDTH=100%><B><FONT CLASS="text"> Can I compile libdvdread and libdvdcss for example on my sweet Sparc/Solaris? </B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD><FONT CLASS="text"> Who knows ... Please test it and send feedback. But it's said that it should work. Please refer documentation of libdvdread and its homepage as well. We're not authors of libdvdread. </TD><TR><TD COLSPAN=3> </TD><TR> <TD></TD><TD VALIGN=top>Q:</TD><TD WIDTH=100%><B><FONT CLASS="text"> What about subtitles? Can MPlayer display them? </B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD><FONT CLASS="text"> Yes! See above in the DVD chapter. </TD><TR><TD COLSPAN=3> </TD><TR> <TD></TD><TD VALIGN=top>Q:</TD><TD WIDTH=100%><B><FONT CLASS="text"> How can I set the region code of my DVD-Drive ? I don't have windows! </B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD><FONT CLASS="text"> Use the 'regionset' tool: <A HREF="http://www.linuxtv.org/download/dvd/dvd_disc_20000215.tar.gz">http://www.linuxtv.org/download/dvd/dvd_disc_20000215.tar.gz</A> </TD><TR><TD COLSPAN=3> </TD><TR> <TD></TD><TD VALIGN=top>Q:</TD><TD WIDTH=100%><B><FONT CLASS="text"> Do I need to be (setuid) root/setuid fibmap_mplayer to be able to play DVD? </B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD><FONT CLASS="text"> No, you don't. Only for old-style DVD support. However of course you must have the proper rights to the DVD device driver entry (in /dev). </TD><TR><TD COLSPAN=3> </TD><TR> <TD></TD><TD VALIGN=top>Q:</TD><TD WIDTH=100%><B><FONT CLASS="text"> Where can I get libdvdread and libdvdcss packages from? </B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD><FONT CLASS="text"> From the site of Ogle: <A HREF="http://www.dtek.chalmers.se/groups/dvd">http://www.dtek.chalmers.se/groups/dvd</A>. </TD><TR><TD COLSPAN=3> </TD><TR> <TD></TD><TD VALIGN=top>Q:</TD><TD WIDTH=100%><B><FONT CLASS="text"> Is it possible to play/encode only selected chapters ? </B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD><FONT CLASS="text"> Yes, see the <CODE>-chapter</CODE> option. </TD><TR><TD COLSPAN=3> </TD><TR> <TD></TD><TD VALIGN=top>Q:</TD><TD WIDTH=100%><B><FONT CLASS="text"> My DVD playing is sluggish ! </B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD><FONT CLASS="text"> Use the <CODE>-cache</CODE> option (see the manpage!). If it still doesn't work, try enabling DMA for the DVD drive. </TD><TR><TD COLSPAN=3> </TD><TR> </TABLE> </BODY> </HTML>