mirror of
https://github.com/mpv-player/mpv
synced 2024-12-14 19:05:33 +00:00
988e72ebc3
ocassional misc fixes git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@4983 b3059339-0415-0410-9bf9-f77b7e298cf2
279 lines
12 KiB
HTML
279 lines
12 KiB
HTML
|
|
<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>Yes, the real DVD support has been arrived. You don't need to play VOB files
|
|
manually from disk thinking of the purpose of a file in the video_ts
|
|
directory, you don't need worry it it's an encrypted disk or not (in old
|
|
<B>MPlayer</B> you had to put '-dvdauth /dev/dvd' into the command line in case
|
|
of encrypted discs), and you don't need even mount your disk to be able to
|
|
play (but mounting it makes Linux cache the cracked CSS keys, so the playing
|
|
will initialize much faster second time).</P>
|
|
|
|
<P>IMPORTANT NOTE: please _DO_NOT_ require further features for DVD playback.
|
|
This is the first version of some real DVD support inside <B>MPlayer</B> and
|
|
we're busy with hunting bugs and implementing basic DVD player features.</P>
|
|
|
|
<P><B>MPlayer</B> uses libdvdread which has got built in support for IFO
|
|
parsing, reading navi blocks and doing authentication/descrambling. libdvdread
|
|
uses libdvdcss to the latter tasks. So you will need libdvdcss and libdvdread
|
|
downloaded, compiled and installed BEFORE you run ./configure script of
|
|
<B>MPlayer</B> which will autodetect libdvdread for you in this way.</P>
|
|
|
|
<UL>
|
|
<LI><P><B>Download source of libdvdread and libdvdcss.</B></P>
|
|
|
|
<P><I>You can download them from
|
|
<A HREF="http://www.dtek.chalmers.se/groups/dvd">http://www.dtek.chalmers.se/groups/dvd</A>
|
|
(click 'download' in the menu at the left, and you can find libdvdcss and
|
|
libdvdread in a table).</I></P>
|
|
|
|
<P><B><I>IMPORTANT !</I></B><BR>
|
|
For
|
|
<UL>
|
|
<LI>libdvdread 0.8 - you'll need <B>libcss</B> instead of libdvdcss</LI>
|
|
<LI>libdvdread 0.9 - you'll need <B>libdvdcss 0.0.3</B> ! Don't use newer
|
|
versions, they won't work!</LI>
|
|
<LI>For example <B><U>never</U></B> use libdvdcss <B>1.0</B>, it will be unusably slow!</LI>
|
|
</UL>
|
|
</P>
|
|
</LI>
|
|
|
|
<LI><P><B>Compile and install libdvdcss THEN libdvdread.</B></P>
|
|
|
|
<P><I>Read documentation of these packages to do this step easily.</I></P></LI>
|
|
|
|
<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>Recompile MPlayer.</B></P>
|
|
|
|
<P><I>Run <CODE>./configure</CODE>. If you install libdvdread correctly, ./configure
|
|
says something similar:<BR><CODE>Checking for DVDread support ... yes</CODE><BR>
|
|
(Of course you can put your favourite configure options into the command
|
|
line when you run ./configure). That's it! Say: <CODE>make</CODE>, then <CODE>make install</CODE>.</I></P></LI>
|
|
</UL>
|
|
|
|
<P>Of course after installing libdvdcss and libdvdread you don't need recompile
|
|
them at each time when you want to recompile <B>MPlayer</B> (from a new CVS version
|
|
for example) since the needed packages have already been installed on your
|
|
machine.</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.
|
|
</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">
|
|
So MPlayer can play DVDs? Then it must use DeCSS! You are under arrest
|
|
under the XYZ#$ paragraph of the--
|
|
</B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD><FONT CLASS="text">
|
|
Get back asshole, there is no DeCSS code in <B>MPlayer</B>. <B>MPlayer</B> uses libdvdread
|
|
by linking against it, and libdvdread uses libdvdcss by dynamic loading it.<BR>
|
|
</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">
|
|
How can I ... (insert some expectable DVD player feature here)?
|
|
</B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD><FONT CLASS="text">
|
|
The current implementation is the first implementation of some real DVD
|
|
player functionality. First, we would like to target existing bugs and
|
|
basic features before implementing new features.
|
|
</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, check the beginning of this documentaion for proper
|
|
libdvdread+libdvdcss combinations. Also try enabling DMA for the DVD drive.
|
|
</TD><TR><TD COLSPAN=3> </TD><TR>
|
|
|
|
</TABLE>
|
|
|
|
</BODY>
|
|
</HTML>
|