comparison DOCS/cd-dvd.html @ 1682:dba45a1aafad

*** empty log message ***
author gabucino
date Fri, 24 Aug 2001 18:48:13 +0000
parents a5cb1b1d47a8
children f314e83b78e6
comparison
equal deleted inserted replaced
1681:445ea1ce4180 1682:dba45a1aafad
1 <HTML> 1 <HTML>
2
3 <BODY> 2 <BODY>
4 3
5 <PRE> 4 <P><B><A NAME=4.1>4.1. CD-ROM drives</A></B></P>
6 5
7 <A NAME=4.1>4.1. CD-ROM drives</A> 6 <P>From Linux documentation:</P>
8 7
9 From Linux documentation: 8 <P>Some CDROM drives are capable of changing their head-speed. There are several
9 reasons for changing the speed of a CDROM drive. Badly pressed CDROMs may
10 benefit from less-than-maximum head rate. Modern CDROM drives can obtain very
11 high head rates (up to 24-times is common). It has been reported that these
12 drives can make reading errors at these high speeds, reducing the speed can
13 prevent data loss in these circumstances. Finally, some of these drives can
14 make an annoyingly loud noise, which a lower speed may reduce.</P>
10 15
11 Some CDROM drives are capable of changing their head-speed. There are several 16 <P>The recommended way to do it is with a program called 'setcd' . It's kinda
12 reasons for changing the speed of a CDROM drive. Badly pressed CDROMs may 17 old, but won't be too hard to find on the Net. (UPDATE : new hdparm
13 benefit from less-than-maximum head rate. Modern CDROM drives can obtain very 18 has an option for this !)
14 high head rates (up to 24-times is common). It has been reported that these 19 Use it with :</P>
15 drives can make reading errors at these high speeds, reducing the speed can
16 prevent data loss in these circumstances. Finally, some of these drives can
17 make an annoyingly loud noise, which a lower speed may reduce.
18 20
19 The recommended way to do it is with a program called 'setcd' . It's kinda 21 <P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>setcd -x [speed] [cdrom device]</CODE></P>
20 old, but won't be too hard to find on the Net. (UPDATE : new hdparm 22
21 has an option for this !) 23 <P>Also you can try:</P>
22 Use it with : 24
25 <P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>echo current_speed:4 >/proc/ide/[cdrom device]/settings</CODE></P>
26
27 <P>but you'll need root privileges. I use following command too:</P>
28
29 <P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>echo file_readahead:2000000 >/proc/ide/[cdrom device]/settings</CODE></P>
30
31 <P>for 2MB prefetched reading from the file (it's useful for scratched CDROMs).
32 It's recommended that you tuneup your CDROM drive also with hdparm:</P>
33
34 <P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>hdparm -d1 -a8 -u1 (cdrom device)</CODE></P>
35
36 <P>to enable using DMA access, readahead, and IRQ unmasking.
37 (if you don't understand these, *read the hdparm manpage*)</P>
38
39 <P>Please refer to "<CODE>/proc/ide/[cdrom device]/settings</CODE>" for fine-tuning your
40 CDROM.</P>
41
42 <P><B><A NAME=4.2>4.2. DVD playback</A></B></P>
43
44 <P>Yes, the real DVD support has been arrived. You don't need to play VOB files
45 manually from disk thinking of the purpose of a file in the video_ts
46 directory, you don't need worry it it's an encrypted disk or not (in old
47 <B>MPlayer</B> you had to put '-dvdauth /dev/dvd' into the command line in case
48 of encrypted discs), and you don't need even mount your disk to be able to
49 play :)</P>
50
51 <P>IMPORTANT NOTE: please _DO_NOT_ require further features for DVD playback.
52 This is the first version of some real DVD support inside <B>MPlayer</B> and
53 we're busy with hunting bugs and implementing basic DVD player features.</P>
54
55 <P><B>MPlayer</B> uses libdvdread which has got built in support for IFO parsing,
56 reading navi blocks and doing authentication/descrambling. libdvdread
57 use the good old libcss to the latter tasks. So you will need libcss and
58 libdvdread downloaded, compiled and installed BEFORE you run ./configure
59 script of <B>MPlayer</B> which will autodetect libdvdread for you in this way.</P>
60
61 <UL>
62 <LI><P><B>Download source of libdvdread and libcss.</B></P>
63
64 <P><I>You can download them from
65 <A HREF="http://www.dtek.chalmers.se/groups/dvd">http://www.dtek.chalmers.se/groups/dvd</A>
66 (click 'download' in the menu at the left, and you can find libcss and
67 libdvdread in a table).</I></P></LI>
68
69 <LI><P><B>Compile and install libcss THEN libdvdread.</B></P>
70
71 <P><I>Read documentation of these packages to do this step easily.</I></P></LI>
72
73 <LI><P><B>Recompile MPlayer.</B></P>
74
75 <P><I>Run <CODE>./configure</CODE>. If you install libdvdread correctly, ./configure
76 says something similar:<BR><CODE>Checking for DVDread support ... yes</CODE><BR>
77 (Of course you can put your favourite configure options into the command
78 line when you run ./configure). That's it! Say: <CODE>make</CODE>, then <CODE>make install</CODE>.</I></P></LI>
79 </UL>
80
81 <P>Of course after installing libcss and libdvdread you don't need recompile
82 them at each time when you want to recompile <B>MPlayer</B> (from a new CVS version
83 for example) since the needed packages have already been installed on your
84 machine.</P>
85
86 <P><B>Using MPlayer to play DVDs:</B></P>
23 87
24 88
25 setcd -x [speed] [cdrom device] 89 <TABLE BORDER=0 WIDTH=100%>
90 <TD VALIGN=top>-dvd &lt;title_id&gt;&nbsp;</TD>
91 <TD>Enables DVD support and selects title.</TD><TR>
92 <TD VALIGN=top>-chapter &lt;chapter_id&gt;&nbsp;</TD>
93 <TD>Selects DVD chapter (default: play from chapter 1)</TD><TR>
94 <TD VALIGN=top>-dvdangle &lt;chapter_id&gt;&nbsp;</TD>
95 <TD>Selects camera angle (default: 1)</TD><TR>
96 </TABLE>
26 97
98 <P>Default device is <CODE>/dev/dvd</CODE>, you can change it in config.h
99 (compile time option), or you can specify it as a filename for <B>MPlayer</B>:
100 </P>
27 101
28 Also you can try : 102 <P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>mplayer -dvd 1 /dev/dvd</CODE></P>
103 <P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>mplayer -dvd 2 -chapter 5 -dvdangle 2</CODE></P>
29 104
105 <P><B><A NAME=4.3>4.3. DVD playback FAQ</A></B></P>
30 106
31 echo current_speed:4 >/proc/ide/[cdrom device]/settings 107 <TABLE BORDER=0 ALIGN=left WIDTH=100%>
32 108
109 <TD>&nbsp;&nbsp;</TD><TD VALIGN=top>Q:</TD><TD WIDTH=100%><B>
110 I have some problem not mentioned here ...
111 </B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD>
112 Read section <A HREF="#4.2">DVD playback</A> as well.
113 </TD><TR><TD COLSPAN=3>&nbsp;</TD><TR>
33 114
34 but you'll need root privileges. I use following command too : 115 <TD></TD><TD VALIGN=top>Q:</TD><TD WIDTH=100%><B>
116 How can I actually watch DVD with MPlayer?
117 </B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD>
118 See the latter question and answer.
119 </TD><TR><TD COLSPAN=3>&nbsp;</TD><TR>
35 120
121 <TD></TD><TD VALIGN=top>Q:</TD><TD WIDTH=100%><B>
122 Can I compile libdvdread and libcss for example on my sweet Sparc/Solaris?
123 </B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD>
124 Who knows ... Please test it and send feedback. But it's said that it
125 should work. Please refer documentation of libdvdread and its homepage
126 as well. We're not authors of libdvdread.
127 </TD><TR><TD COLSPAN=3>&nbsp;</TD><TR>
36 128
37 echo file_readahead:2000000 >/proc/ide/[cdrom device]/settings 129 <TD></TD><TD VALIGN=top>Q:</TD><TD WIDTH=100%><B>
130 What about subtitles? Can MPlayer decode them?
131 </B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD>
132 Yes it can (or at least it would be able to) but there is now DVD subtitle
133 displaying functionality inside <B>MPlayer</B> (DVD subs are stored as images,
134 not text!). However it's a planned feature (at the time of libvo2).
135 </TD><TR><TD COLSPAN=3>&nbsp;</TD><TR>
38 136
137 <TD></TD><TD VALIGN=top>Q:</TD><TD WIDTH=100%><B>
138 I've got no sound / bad sound (Spanish audio and other ugly things).
139 </B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD>
140 <B>MPlayer</B> currently does not use all of information of IFO blocks from DVD.
141 You can adjust the right DVD audio stream with: '-aid 128' command line
142 option, where 128 is the stream id of requested audio stream. You can
143 experience with numbers of 128,129,... and so on. Of course this problem
144 will be solved in the future.
145 </TD><TR><TD COLSPAN=3>&nbsp;</TD><TR>
39 146
40 for 2MB prefetched reading from the file (it's useful for scratched CDROMs). 147 <TD></TD><TD VALIGN=top>Q:</TD><TD WIDTH=100%><B>
41 It's recommended that you tuneup your CDROM drive also with hdparm : 148 There is some strange effect (interlace like thing) especially when fast
149 moving objects are shown in the movie.
150 </B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD>
151 Known problem, we try to fix it later (when we switch to libvo2).
152 </TD><TR><TD COLSPAN=3>&nbsp;</TD><TR>
42 153
154 <TD></TD><TD VALIGN=top>Q:</TD><TD WIDTH=100%><B>
155 How can I set the region code of my DVD-Drive ? I don't have windows!
156 </B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD>
157 Use the 'regionset' tool:
158 http://www.linuxtv.org/download/dvd/dvd_disc_20000215.tar.gz
159 </TD><TR><TD COLSPAN=3>&nbsp;</TD><TR>
43 160
44 hdparm -d1 -a8 -u1 (cdrom device) 161 <TD></TD><TD VALIGN=top>Q:</TD><TD WIDTH=100%><B>
162 So MPlayer can play DVDs? Then it must use DeCSS! You are under arrest
163 under the XYZ#$ paragraph of the--
164 </B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD>
165 Get back asshole, there is no DeCSS code in <B>MPlayer</B>. <B>MPlayer</B> uses libdvdread
166 by linking against it, and libdvdread uses libcss by dynamic loading it.
167 </TD><TR><TD COLSPAN=3>&nbsp;</TD><TR>
45 168
169 <TD></TD><TD VALIGN=top>Q:</TD><TD WIDTH=100%><B>
170 Do I need to be (setuid) root/setuid fibmap_mplayer to be able to play DVD?
171 </B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD>
172 No, you don't. This is the past :) However of course you must have got
173 the proper rights to the DVD device driver entry (in /dev).
174 </TD><TR><TD COLSPAN=3>&nbsp;</TD><TR>
46 175
47 to enable using DMA access, readahead, and IRQ unmasking. 176 <TD></TD><TD VALIGN=top>Q:</TD><TD WIDTH=100%><B>
48 (if you don't understand these, *read the hdparm manpage*) 177 How can I ... (insert some expectable DVD player feature here)?
178 </B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD>
179 The current implementation is the first implementation of some real DVD
180 player functionality. First, we would like to target existing bugs and
181 basic features before implementing new features.
182 </TD><TR><TD COLSPAN=3>&nbsp;</TD><TR>
49 183
50 Please refer to "/proc/ide/[cdrom device]/settings" for fine-tuning your 184 <TD></TD><TD VALIGN=top>Q:</TD><TD WIDTH=100%><B>
51 CDROM. 185 Where can I get libdvdread and libcss packages from?
186 </B></TD><TR><TD></TD><TD VALIGN=top>A:</TD><TD>
187 From the site of Ogle:
188 <A HREF="http://www.dtek.chalmers.se/groups/dvd">http://www.dtek.chalmers.se/groups/dvd</A>.
189 </TD><TR><TD COLSPAN=3>&nbsp;</TD><TR>
190 </TABLE>
52 191
53 192 <BR>
54 193 <HR>MPlayer documentation project
55 <A NAME=4.2>4.2. DVD playback</A>
56
57 IMPORTANT NOTE: please _DO_NOT_ require further features for DVD playback. This
58 is extremly experimental hack. Maybe it won't work for you. If you're
59 capable of helping us do it now! First we would like to fix existing problems.
60 Then we can start implementing advanced DVD playback functions of course.
61
62 This means current DVD functions are mainly for developers and not for users!
63
64 First, you must compile and install libcss on your system.
65 Second, you have to recompile <B>MPlayer</B> with libcss support. There is
66 autodetection of libcss, but if it fails, see below :
67
68 Call ./configure script of <B>MPlayer</B> with these options:
69
70 ./configure --enable-css --with-csslibdir=/usr/local/lib --with-cssincdir=/usr/local/include
71
72 (of course you can append your favourite options as well)
73
74 --with-csslibdir=/usr/local/lib
75 Directory contains libcss.so shared library. This directory should
76 be in your /etc/ld.so.conf as well.
77
78 --with-cssincdir=/usr/local/include
79 Directory contains header file 'css.h' of libcss.
80
81 mplayer -dvdauth /dev/dvd /mnt/cdrom/video_ts/vts_01_1.vob
82
83 where,
84
85 '-dvdauth /dev/dvd' tells <B>MPlayer</B> the device name of your DVD drive.
86 it's used in disc authentication process
87
88 the filename is simply a VOB file path on the disc
89
90 Note that according to my experiences, disc authentication requires root
91 privileges so you must run <B>MPlayer</B> as root! (see section 'Problems').
92
93 NOTE about the sound:
94 It seems that <B>MPlayer</B> sometimes fails to find the first audio stream.
95 You can specify it with the '-aid 128' option, for example.
96 Please experience with 128,129 and similar values. See section
97 'Problems'.
98
99 On my AMD K6-2 with using hw scaling and colorspace conversion
100 capability of my G400 it's possible to watch DVD with about 70%
101 CPU usage with '-nosound'. Unfortunately with sound my machine is
102 not enough :( Maybe it can be improved somewhat ...
103 Guess, it's not so bad ... According to reports from my friends
104 xine uses 80-90% CPU to play DVD on much more powerful machines
105 like 1GHz Athlon systems (as far as I know, it's said that about
106 300MHz celeron is the minimum to watch DVDs ... using windows
107 DVD viewers).
108
109 Hint: I commented out downmix functions from libac3 (of course in this way I
110 can't get sound) and audio decoding CPU usage became 11% instead of 24 on
111 my machine. This clearly indicates that we should optimize downmix functions
112 (KNI code is no use for my k6-2).
113
114 HOT NEWZ:
115 We have got 3Dnow optimized libac3. Wow ;-)
116
117
118 Problems (TODO)
119
120 * disc authentication (the FIBMAP ioctl) requires root privilegies.
121 this is strange since OMS can do it as user too.
122 * sound. I'm using my only DVD disc (The Matrix) to test <B>MPlayer</B>.
123 some VOB file have English sound, some have Spanish and some have
124 no sound at all.
125 IT SEEMS that if I give '-aid 128' everything works with English sound ...
126 * strange effects but only with SOME vob files (it looks like some interlacing
127 effect, eg: every 2nd line on the screen is from the last frame).
128
129
130 Feature TODO
131
132 * chapter scanner
133 * audio stream scanner and allow to select one on runtime as well
134 (in stage#1 it would be enough to select one on the startup, see
135 'Problems' above)
136 * DVD menu
137 I found (at least on disc 'The Matrix') the menu VOB but I don't
138 know how can it be used.
139 (after some eyeballing on the source of OMS, it seems we would have to
140 parse *.ifo files)
141 * subtitle support
142 * OSD/GUI (?) support for select chapter, subtitle and audio stream
143 * getting some documentation on DVD format, eg: which is the 'root' VOB
144 file on the disc in video_ts directory, which is the menu and so on.
145 * improve performance (see 'Performance' above)
146
147
148 No sound problem (from Matrix DVD, the menu VOB)
149
150 End of packet while searching for PCM header
151
152 DEMUXER: Too many (2048 in 4131540 bytes) video packets in the buffer!
153 (maybe you play a non-interleaved stream/file or video codec failed)
154 MPEG: No Audio stream found... ->nosound
155
156 However this does not occur if you specify '-aid 128'.
157
158
159 <A NAME=4.3>4.3. DVD playback FAQ</A>
160
161 <B>Q: I have some problem not mentioned here ...
162 </B>A: Read file 'DVD' as well.
163
164 <B>Q: How can I actually watch DVD with MPlayer?
165 </B>A: Ehh. Go on reading this file as well as 'DVD' (hint: you must have libcss)
166
167 <B>Q: So MPlayer can play DVDs? Then it must use DeCSS! You are under arrest
168 under the XYZ#$ paragraph of the--
169 </B>A: Get back asshole, there is no DeCSS code in MPlayer. It links to libcss.
170
171 <B>Q: Seems to work but no sound.
172 </B>A: Use '-aid 128' (or try: 128,129,...) command line switch
173
174 <B>Q: I have got Spanish audio instead of English (or similar problems)
175 </B>A: See the last question/answer.
176
177 <B>Q: MPlayer complains about FIBMAP or something.
178 </B>A: Try to run MPlayer as root.
179
180 <B>Q: some strange effect (interlace like thing) especially when fast moving
181 objects are shown in the movie
182 </B>A: known problem, we try to fix it later
183
184 <B>Q: DVD support in MPlayer is a piece of shit!
185 </B>A: You're probably right :) However please contact us if you can improve it!
186
187 <B>Q: Where can I get libcss package from?
188 </B>A: Maybe from the source of OMS (www.linuxvideo.org).
189
190 <B>Q: How can I ... (insert some expectable DVD player feature here)
191 </B>A: The current implementation is only for viewing VOB files from DVD.
192 Nothing more, like subtitles, menus and so on.
193
194 <B>Q: How can I set the region code of my DVD-Drive ? I don't have windows!
195 </B>A: Use the 'regionset' tool :
196 http://www.linuxtv.org/download/dvd/dvd_disc_20000215.tar.gz
197
198 <B>Q: MPlayer complains about some renamed option?
199 </B>A: For future development, old '-dvd' option was replaced by '-dvdauth'.
200 Option '-dvd' *WILL* do the 'full disk movie' mplaying mode.
201 But until that, '-dvd' does nothing only prints error message.
202
203 </PRE>
204 194
205 </BODY> 195 </BODY>
206
207 </HTML> 196 </HTML>