Mercurial > mplayer.hg
annotate DOCS/xml/en/cd-dvd.xml @ 23558:8d3fe0133760
Fix license header.
author | diego |
---|---|
date | Mon, 18 Jun 2007 19:31:17 +0000 |
parents | f551403d82a9 |
children | c6a4135b87bb |
rev | line source |
---|---|
20535 | 1 <?xml version="1.0" encoding="utf-8"?> |
10913
49b1a67e7381
Add revision keyword to english xml files, to ease translation synchronization
lumag
parents:
10910
diff
changeset
|
2 <!-- $Revision$ --> |
9675 | 3 <chapter id="cd-dvd"> |
4 <title>CD/DVD usage</title> | |
5 | |
6 <sect1 id="drives"> | |
7 <title>CD/DVD drives</title> | |
8 | |
9 <para> | |
10 Modern CD-ROM drives can attain very high head speeds, yet some CD-ROM drives | |
11 are capable of running at reduced speeds. There are several reasons that might | |
12 make you consider changing the speed of a CD-ROM drive: | |
13 </para> | |
14 | |
15 <itemizedlist> | |
16 <listitem><para> | |
21521 | 17 There have been reports of read errors at high speeds, especially |
18 with badly pressed CD-ROMs. Reducing the speed can prevent data loss under | |
19 these circumstances. | |
9675 | 20 </para></listitem> |
21 | |
22 <listitem><para> | |
21521 | 23 Many CD-ROM drives are annoyingly loud, a lower speed may reduce the noise. |
9675 | 24 </para></listitem> |
25 </itemizedlist> | |
26 | |
21521 | 27 <!-- ********** --> |
28 | |
15879
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
29 <sect2 id="drives_linux"> |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
30 <title>Linux</title> |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
31 |
9675 | 32 <para> |
15879
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
33 You can reduce the speed of IDE CD-ROM drives with <command>hdparm</command>, |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
34 <command>setcd</command> or <command>cdctl</command>. It works like this: |
9776
861a40949bf3
fixes, some by Dmitry Baryshkov <lumag@qnc.ru>, some by me
nicolas
parents:
9675
diff
changeset
|
35 <screen>hdparm -E <replaceable>[speed]</replaceable> <replaceable>[cdrom device]</replaceable></screen> |
861a40949bf3
fixes, some by Dmitry Baryshkov <lumag@qnc.ru>, some by me
nicolas
parents:
9675
diff
changeset
|
36 <screen>setcd -x <replaceable>[speed]</replaceable> <replaceable>[cdrom device]</replaceable></screen> |
15879
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
37 <screen>cdctl -bS <replaceable>[speed]</replaceable></screen> |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
38 </para> |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
39 |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
40 <para> |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
41 If you are using SCSI emulation, you might have to apply the settings to the |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
42 real IDE device, not the emulated SCSI device. |
9675 | 43 </para> |
44 | |
45 <para> | |
10910
eb339c10228e
Lol! This command will try to change xfer_mode, and not a cdrom spin speed. Removed.
lumag
parents:
10656
diff
changeset
|
46 If you have root privileges the following command may also help: |
9776
861a40949bf3
fixes, some by Dmitry Baryshkov <lumag@qnc.ru>, some by me
nicolas
parents:
9675
diff
changeset
|
47 <screen>echo file_readahead:2000000 > /proc/ide/<replaceable>[cdrom device]</replaceable>/settings</screen> |
9675 | 48 </para> |
49 | |
50 <para> | |
51 This sets prefetched file reading to 2MB, which helps with scratched CD-ROMs. | |
52 If you set it to too high, the drive will continuously spin up and down, and | |
53 will dramatically decrease the performance. | |
21521 | 54 It is recommended that you also tune your CD-ROM drive |
55 with <command>hdparm</command>: | |
15879
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
56 <screen>hdparm -d1 -a8 -u1 <replaceable>[cdrom device]</replaceable></screen> |
9675 | 57 </para> |
58 | |
59 <para> | |
21521 | 60 This enables DMA access, read-ahead, and IRQ unmasking (read the |
61 <command>hdparm</command> man page for a detailed explanation). | |
9675 | 62 </para> |
63 | |
64 <para> | |
21521 | 65 Please refer to |
21596 | 66 "<filename>/proc/ide/<replaceable>[cdrom device]</replaceable>/settings</filename>" |
9675 | 67 for fine-tuning your CD-ROM. |
68 </para> | |
69 | |
70 <para> | |
21521 | 71 SCSI drives do not have a uniform way of setting these parameters (Do you know |
72 one? Tell us!) There is a tool that works for | |
9675 | 73 <ulink url="http://das.ist.org/~georg/">Plextor SCSI drives</ulink>. |
74 </para> | |
15879
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
75 </sect2> |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
76 |
21521 | 77 <!-- ********** --> |
15879
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
78 |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
79 <sect2 id="drives_freebsd"> |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
80 <title>FreeBSD</title> |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
81 |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
82 <para>speed: |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
83 <screen> |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
84 cdcontrol [-f <replaceable>device</replaceable>] speed <replaceable>[speed]</replaceable> |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
85 </screen> |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
86 </para> |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
87 |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
88 <para>DMA: |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
89 <screen> |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
90 sysctl hw.ata.atapi_dma=1 |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
91 </screen> |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
92 </para> |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
93 |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
94 </sect2> |
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
95 |
9675 | 96 </sect1> |
97 | |
15879
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
98 |
21521 | 99 <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> |
100 | |
15879
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
101 |
9675 | 102 <sect1 id="dvd"> |
103 <title>DVD playback</title> | |
21521 | 104 |
9675 | 105 <para> |
106 For the complete list of available options, please read the man page. | |
20380 | 107 The syntax to play a standard DVD is as follows: |
21521 | 108 <screen> |
109 mplayer dvd://<replaceable><track></replaceable> [-dvd-device <replaceable><device></replaceable>] | |
110 </screen> | |
9675 | 111 </para> |
112 | |
113 <para> | |
114 Example: | |
20380 | 115 <screen>mplayer dvd://1 -dvd-device /dev/hdc</screen> |
9675 | 116 </para> |
117 | |
118 <para> | |
19745
4c6f19ae1287
Add a bit of doc about dvdnav support in MPlayer, and why you may want to use it.
gpoirier
parents:
19733
diff
changeset
|
119 If you have compiled <application>MPlayer</application> with dvdnav support, the |
4c6f19ae1287
Add a bit of doc about dvdnav support in MPlayer, and why you may want to use it.
gpoirier
parents:
19733
diff
changeset
|
120 syntax is the same, except that you need to use dvdnav:// instead of dvd://. |
4c6f19ae1287
Add a bit of doc about dvdnav support in MPlayer, and why you may want to use it.
gpoirier
parents:
19733
diff
changeset
|
121 </para> |
4c6f19ae1287
Add a bit of doc about dvdnav support in MPlayer, and why you may want to use it.
gpoirier
parents:
19733
diff
changeset
|
122 |
4c6f19ae1287
Add a bit of doc about dvdnav support in MPlayer, and why you may want to use it.
gpoirier
parents:
19733
diff
changeset
|
123 <para> |
9675 | 124 The default DVD device is <filename>/dev/dvd</filename>. If your setup |
125 differs, make a symlink or specify the correct device on the command | |
126 line with the <option>-dvd-device</option> option. | |
127 </para> | |
128 | |
129 <para> | |
130 <application>MPlayer</application> uses <systemitem>libdvdread</systemitem> and | |
20380 | 131 <systemitem>libdvdcss</systemitem> for DVD playback and decryption. These two |
20621 | 132 libraries are contained in the |
133 <application>MPlayer</application> source tree, you do not have | |
20167 | 134 to install them separately. You can also use system-wide versions of the two |
135 libraries, but this solution is not recommended, as it can result in bugs, | |
9675 | 136 library incompatibilities and slower speed. |
137 </para> | |
138 | |
10986 | 139 <note><para> |
140 In case of DVD decoding problems, try disabling supermount, or any other such | |
17425
dda0f4feca39
Mention possible region setting requirement for some RPC-2 drives.
rathann
parents:
15879
diff
changeset
|
141 facilities. Some RPC-2 drives may also require setting the region code. |
10986 | 142 </para></note> |
143 | |
9675 | 144 <formalpara> |
145 <title>DVD structure</title> | |
146 <para> | |
147 DVD disks have 2048 bytes per sector with ECC/CRC. They usually have an UDF | |
148 filesystem on a single track, containing various files (small .IFO and .BUK | |
149 files and big (1GB) .VOB files). They are real files and can be copied/played | |
150 from the mounted filesystem of an unencrypted DVD. | |
151 </para> | |
152 </formalpara> | |
153 | |
154 <para> | |
155 The .IFO files contain the movie navigation information (chapter/title/angle | |
156 map, language table, etc) and are needed to read and interpret the .VOB content | |
157 (movie). The .BUK files are backups of them. They use | |
158 <emphasis role="bold">sectors</emphasis> everywhere, so you need to use raw | |
159 addressing of sectors of the disc to implement DVD navigation or decrypt the | |
160 content. | |
161 </para> | |
162 | |
163 <para> | |
11598
d18111ea13d0
removing last pitiful traces of old-style DVD support, with no remorse, but
gabucino
parents:
11540
diff
changeset
|
164 DVD support needs raw sector-based access to the device. Unfortunately you must |
d18111ea13d0
removing last pitiful traces of old-style DVD support, with no remorse, but
gabucino
parents:
11540
diff
changeset
|
165 (under Linux) be root to get the sector address of a file. That's why we don't |
d18111ea13d0
removing last pitiful traces of old-style DVD support, with no remorse, but
gabucino
parents:
11540
diff
changeset
|
166 use the kernel's filesystem driver at all, instead we reimplement it in |
20621 | 167 userspace. <systemitem>libdvdread</systemitem> 0.9.x does this. |
168 The kernel UDF filesystem driver | |
11598
d18111ea13d0
removing last pitiful traces of old-style DVD support, with no remorse, but
gabucino
parents:
11540
diff
changeset
|
169 is not needed as they already have their own builtin UDF filesystem driver. |
d18111ea13d0
removing last pitiful traces of old-style DVD support, with no remorse, but
gabucino
parents:
11540
diff
changeset
|
170 Also the DVD does not have to be mounted as only the raw sector-based access is |
d18111ea13d0
removing last pitiful traces of old-style DVD support, with no remorse, but
gabucino
parents:
11540
diff
changeset
|
171 used. |
9675 | 172 </para> |
173 | |
174 <para> | |
175 Sometimes <filename>/dev/dvd</filename> cannot be read by users, so the | |
176 <systemitem>libdvdread</systemitem> authors implemented an emulation layer | |
177 which transfers sector addresses to filenames+offsets, to emulate raw | |
178 access on top of a mounted filesystem or even on a hard disk. | |
179 </para> | |
180 | |
181 <para> | |
182 <systemitem>libdvdread</systemitem> even accepts the mountpoint instead of | |
183 the device name for raw access and checks <filename>/proc/mounts</filename> | |
184 to get the device name. It was developed for Solaris, where device names | |
185 are dynamically allocated. | |
186 </para> | |
187 | |
188 <formalpara> | |
20380 | 189 <title>DVD decryption</title> |
9675 | 190 <para> |
20380 | 191 DVD decryption is done by <systemitem>libdvdcss</systemitem>. The method |
192 can be specified through the <envar>DVDCSS_METHOD</envar> environment | |
20426
192efe61abaa
Remove confusing and probably wrong paragraph about libdvdcss.
diego
parents:
20385
diff
changeset
|
193 variable, see the manual page for details. |
9675 | 194 </para> |
195 </formalpara> | |
196 | |
197 <para> | |
198 RPC-1 DVD drives only protect region settings through software. RPC-2 drives | |
199 have a hardware protection that allows 5 changes only. It might be | |
200 needed/recommended to upgrade the firmware to RPC-1 if you have a RPC-2 DVD | |
13976 | 201 drive. You can try finding firmware upgrades for your drive on the internet, |
202 <ulink url="http://forum.rpc-1.com/dl_all.php">this firmware forum</ulink> | |
203 may be a good starting point for your search. | |
204 If there is no firmware upgrade available for your device, use the | |
205 <ulink url="http://linvdr.org/projects/regionset/">regionset tool</ulink> | |
9675 | 206 to set the region code of your DVD drive (under Linux). |
207 <emphasis role="bold">Warning</emphasis>: You can only set the region 5 times. | |
208 </para> | |
209 </sect1> | |
210 | |
15879
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
211 |
21521 | 212 <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> |
213 | |
15879
aa466b84b1d3
Slightly restructured, mention more tools, small fixes, cosmetics.
diego
parents:
14153
diff
changeset
|
214 |
9675 | 215 <sect1 id="vcd"> |
216 <title>VCD playback</title> | |
21521 | 217 |
9675 | 218 <para> |
21521 | 219 For the complete list of available options, please read the man page. The |
220 Syntax for a standard Video CD (VCD) is as follows: | |
10203 | 221 <screen>mplayer vcd://<replaceable><track></replaceable> [-cdrom-device <replaceable><device></replaceable>]</screen> |
9675 | 222 Example: |
20385
985accf8cf95
<replaceable> tags aren't needed in literal example
torinthiel
parents:
20380
diff
changeset
|
223 <screen>mplayer vcd://2 -cdrom-device /dev/hdc</screen> |
9675 | 224 The default VCD device is <filename>/dev/cdrom</filename>. If your setup |
225 differs, make a symlink or specify the correct device on the command line | |
226 with the <option>-cdrom-device</option> option. | |
227 </para> | |
228 | |
229 <note><para> | |
230 At least Plextor and some Toshiba SCSI CD-ROM drives have horrible performance | |
13973 | 231 reading VCDs. This is because the CDROMREADRAW <systemitem>ioctl</systemitem> |
9675 | 232 is not fully implemented for these drives. If you have some knowledge of SCSI |
233 programming, please <ulink url="../../tech/patches.txt">help us</ulink> | |
234 implement generic SCSI support for VCDs. | |
235 </para></note> | |
236 | |
237 <para> | |
238 In the meantime you can extract data from VCDs with | |
19733 | 239 <ulink url="http://ftp.ntut.edu.tw/ftp/OS/Linux/packages/X/viewers/readvcd/">readvcd</ulink> |
9675 | 240 and play the resulting file with <application>MPlayer</application>. |
241 </para> | |
242 | |
243 <formalpara> | |
244 <title>VCD structure</title> | |
14153 | 245 <para> |
246 A Video CD (VCD) is made up of CD-ROM XA sectors, i.e. CD-ROM mode 2 | |
21521 | 247 form 1 and 2 tracks: |
9675 | 248 <itemizedlist> |
249 <listitem><para> | |
21521 | 250 The first track is in mode 2 form 2 format which means it uses L2 |
251 error correction. The track contains an ISO-9660 filesystem with 2048 | |
252 bytes/sector. This filesystem contains VCD metadata information, as | |
253 well as still frames often used in menus. MPEG segments for menus can | |
254 also be stored in this first track, but the MPEGs have to be broken up | |
255 into a series of 150-sector chunks. The ISO-9660 filesystem may | |
256 contain other files or programs that are not essential for VCD | |
257 operation. | |
9675 | 258 </para></listitem> |
259 | |
260 <listitem><para> | |
21521 | 261 The second and remaining tracks are generally raw 2324 bytes/sector |
262 MPEG (movie) tracks, containing one MPEG PS data packet per | |
263 sector. These are in mode 2 form 1 format, so they store more data per | |
264 sector at the loss of some error correction. It is also legal to have | |
265 CD-DA tracks in a VCD after the first track as well. | |
266 On some operating systems there is some trickery that goes on to make | |
267 these non-ISO-9660 tracks appear in a filesystem. On other operating | |
268 systems like GNU/Linux this is not the case (yet). Here the MPEG data | |
269 <emphasis role="bold">cannot be mounted</emphasis>. As most movies are | |
270 inside this kind of track, you should try <option>vcd://2</option> | |
271 first. | |
272 </para></listitem> | |
9675 | 273 |
274 <listitem><para> | |
21521 | 275 There exist VCD disks without the first track (single track and no filesystem |
276 at all). They are still playable, but cannot be mounted. | |
9675 | 277 </para></listitem> |
14153 | 278 |
21521 | 279 <listitem><para> |
280 The definition of the Video CD standard is called the | |
281 Philips "White Book" and it is not generally available online as it | |
282 must be purchased from Philips. More detailed information about Video | |
283 CDs can be found in the | |
284 <ulink url="http://www.vcdimager.org/pub/vcdimager/manuals/0.7/vcdimager.html#SEC4">vcdimager documentation</ulink>. | |
14153 | 285 </para></listitem> |
9675 | 286 </itemizedlist> |
21521 | 287 </para> |
288 </formalpara> | |
9675 | 289 |
290 <formalpara> | |
291 <title>About .DAT files</title> | |
292 <para> | |
293 The ~600 MB file visible on the first track of the mounted VCD is not a real | |
294 file! It is a so called ISO gateway, created to allow Windows to handle such | |
295 tracks (Windows does not allow raw device access to applications at all). | |
296 Under Linux you cannot copy or play such files (they contain garbage). Under | |
297 Windows it is possible as its iso9660 driver emulates the raw reading of | |
298 tracks in this file. To play a .DAT file you need the kernel driver which can | |
299 be found in the Linux version of PowerDVD. It has a modified iso9660 filesystem | |
300 (<filename>vcdfs/isofs-2.4.X.o</filename>) driver, which is able to emulate the | |
301 raw tracks through this shadow .DAT file. If you mount the disc using their | |
21521 | 302 driver, you can copy and even play .DAT files with |
303 <application>MPlayer</application>. But it will not | |
10184
b6c63ab184a4
Changed a few remaining -dvd and -vcd options to dvd:// and vcd://.
diego
parents:
9776
diff
changeset
|
304 work with the standard iso9660 driver of the Linux kernel! Use |
b6c63ab184a4
Changed a few remaining -dvd and -vcd options to dvd:// and vcd://.
diego
parents:
9776
diff
changeset
|
305 <option>vcd://</option> instead. Alternatives for VCD copying are the |
9675 | 306 new <ulink url="http://www.elis.rug.ac.be/~ronsse/cdfs/">cdfs</ulink> kernel |
21521 | 307 driver (not part of the official kernel) that shows CD sessions as image files |
308 and <ulink url="http://cdrdao.sf.net/">cdrdao</ulink>, a bit-by-bit | |
9675 | 309 CD grabbing/copying application. |
310 </para> | |
311 </formalpara> | |
312 </sect1> | |
313 </chapter> |