Mercurial > mplayer.hg
comparison DOCS/ru/cd-dvd.html @ 9418:5053cb2433e5
Russian translation by Daniel A. Nagy <nagydani@mast.queensu.ca>.
author | diego |
---|---|
date | Fri, 14 Feb 2003 02:14:18 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
9417:5eea6d903b4c | 9418:5053cb2433e5 |
---|---|
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> | |
2 <HTML> | |
3 | |
4 <HEAD> | |
5 <LINK REL="stylesheet" TYPE="text/css" HREF="../default.css"> | |
6 <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=koi8-r"> | |
7 </HEAD> | |
8 | |
9 <BODY> | |
10 | |
11 | |
12 <P><B><A NAME=drives>4.1. Дисководы CD-ROM</A></B></P> | |
13 | |
14 <P>Из Linux'овской документации:</P> | |
15 | |
16 <P>Некоторые CD-ROM'ы способны регулировать скорость чтения. Несколько | |
17 аргументов в пользу использования этой возможности:</P> | |
18 | |
19 <UL> | |
20 <LI>При высоких оборотах возрастает вероятность ошибки при чтении, | |
21 особенно с неправильно записанных дисков.</LI> | |
22 <LI>Уровень шума, возрастающий с оборотами, может оказаться весьма | |
23 существенным.</LI> | |
24 </UL> | |
25 | |
26 <P>Рекомендуется использования программ 'hdparm' или 'setcd'.</P> | |
27 | |
28 <P> <CODE>hdparm -E [скорость] [дисковод]</CODE></P> | |
29 | |
30 <P> <CODE>setcd -x [скорость] [дисковод]</CODE></P> | |
31 | |
32 <P>Альтернативный метод:</P> | |
33 | |
34 <P> <CODE>echo current_speed:4 >/proc/ide/[дисковод]/settings</CODE></P> | |
35 | |
36 <P>но для этого требуются привилегии администратора. Следующая команда | |
37 тоже может быть полезна:</P> | |
38 <P> <CODE>echo file_readahead:2000000 >/proc/ide/[дисковод]/settings</CODE></P> | |
39 | |
40 <P>Таким образом предварительно cчитывается 2 мегабайта (полезно при | |
41 дисках с царапинами). Если поставить слишком высокое значение, то постоянный | |
42 запуск и остановка вращения диска драматически снизят эффективность. | |
43 Предлагается также использовать программу 'hdparm':</P> | |
44 | |
45 | |
46 <P> <CODE>hdparm -d1 -a8 -u1 [дисковод]</CODE></P> | |
47 | |
48 <P>Таким образом включается непосредственный доступ к памяти[DMA], предварительное | |
49 чтение и размаскировка IRQ (если это непонятно, <EM>прочти man-страницу | |
50 'hdparm'</EM>)</P> | |
51 | |
52 <P>Можешь поэкспериментировать файлом <CODE>/proc/ide/[дисковод]/settings</CODE> | |
53 для прочих настроек.</P> | |
54 | |
55 <P>FreeBSD:</P> | |
56 | |
57 <P> Скорость: <CODE>cdcontrol [-f дисковод] speed [скорость]</CODE></P> | |
58 <P> DMA: <CODE>sysctl hw.ata.atapi_dma=1</CODE></P> | |
59 | |
60 <P><B><A NAME=dvd>4.2. Просмотр DVD</A></B></P> | |
61 | |
62 <P>Полный список возможных опций можно прочитать в man.</P> | |
63 | |
64 <H4>Новая поддержка DVD (mpdvdkit2)</H4> | |
65 | |
66 <P><B>MPlayer</B> использует библиотеки <CODE>libdvdread</CODE> и | |
67 <CODE>libdvdcss</CODE> для расшифровки и просмотра DVD. Эти две программы | |
68 находятся в субдиректории <CODE>libmpdvdkit/</CODE>, так что отдельно | |
69 устанавливать их не нужно (и бесполезно). Мы выбрали такое решение потому, | |
70 что нам пришлось исправить ошибку в <CODE>libdvdread</CODE> и добавить патч | |
71 к <CODE>libdvdcss</CODE> для поддержки <B>сохранения взломанных ключей | |
72 CSS</B>, что в свою очередь предотвращает повторного взлома ключа при каждом | |
73 просмотре, существенно увеличивая скорость.</P> | |
74 | |
75 <P><B>MPlayer</B> способен использовать <CODE>libdvdread</CODE> и | |
76 <CODE>libdvdcss</CODE> установленные отдельно, но такое решение <B>не | |
77 рекомендуется</B>, так как может приводить к ошибкам, несовместимости и | |
78 потере скорости.</P> | |
79 | |
80 <H4>Навигация DVD (dvdnav)</H4> | |
81 | |
82 <P>Работы по поддержке <CODE>libdvdnav</CODE> проводились, но эта часть кода | |
83 никогда не была доведена до ума, и на данном этапе заброшена, не работает.</P> | |
84 | |
85 <P><B>Старая поддержка DVD - <I>ОПЦИОНАЛЬНО</I></B></P> | |
86 | |
87 <P>Это может оказаться полезным, например, при просмотре зашифрованных | |
88 VOB-файлов с <B>жесткого диска</B>. Cкомпилируй и установи <B>libcss</B> | |
89 (версию 0.0.1, не в коем случае не более позднюю). Если <B>MPlayer</B> ее не | |
90 обнаружит, добавь <CODE>-csslib /path/to/libcss.so</CODE>. Для использования | |
91 необходимы привилегии администратора или suid root на выполняемом файле.</P> | |
92 | |
93 <H4>Структура DVD</H4> | |
94 | |
95 <P>Диски DVD используют сектора размером в 2048 байтов с ECC/CRC. На них обычно | |
96 единственная файловая система UDF на одной дорожке, которая содержит | |
97 различные файлы (коротенькие .IFO и .BUK и длинные (порядка гигабайта) | |
98 .VOB). Это настоящие файлы, которые можно просматривать/переписывать сo | |
99 cмонтированного не зашифрованного DVD.</P> | |
100 | |
101 <P>Файлы .IFO содержат информацию для навигации (раздел/ролик/угол/язык и | |
102 пр.), необходимую для интерпретации содержания .VOB (кино). Файлы .BUK | |
103 — их дубли. Эти файлы содержат адреса в <B>секторах</B>, так что для | |
104 исполнения навигации и расшифровки DVD, нужен доступ к файлам на уровне | |
105 секторов.</P> | |
106 | |
107 <P>Из-за этого старая поддержка DVD нуждается в cмонтированной файловой | |
108 системе и посекторному доступу к устройству. К сожалению, для этого нужны | |
109 привилегии администратора (под Linux). Проблема решается двумя способами:</P> | |
110 | |
111 <UL> | |
112 <LI>Привилегированный доступ или исполняемый файл с suid root.</LI> | |
113 <LI>Исполнение файловой системы UDF в userspace. Именно это делают | |
114 libdvdread 0.9.x и libmpdvdkit (новая поддержка DVD). В таком случае | |
115 драйвер UDF в ядре не нужен, как и монтирование DVD, так как | |
116 используется исключительно посекторное чтение.</LI> | |
117 </UL> | |
118 | |
119 <P>Иногда пользователям закрыт доступ к /dev/dvd, так что авторы libdvdread | |
120 исполнили некий эмуляционный слой, который конвертирует секторные | |
121 адреса в названия файла и офсет, таким образом эмулируя непосредственный | |
122 доступ на монтированной файловой системе или на жестком диске.</P> | |
123 | |
124 <P>libdvdread также принимает точку монтирования вместо устройства, и получает | |
125 его название из <CODE>/proc/mounts</CODE>. Этот метод придуман для | |
126 Solaris-ов, где данные названия присваиваются динамически.</P> | |
127 | |
128 <P>Устройство DVD по умолчанию — <CODE>/dev/dvd</CODE>. Если у тебя это не | |
129 так, то сделай символический линк или добавь правильное название в командной | |
130 строке после ключа <CODE>-dvd-device</CODE>.</P> | |
131 | |
132 <H4>DVD аутентификация</H4> | |
133 | |
134 <P>Это, как и взлом ключей зашифрованных DVD происходит при помощи | |
135 отпатченого libdvdcss. Выбор метода осуществляется через переменную | |
136 окружения <CODE>DVDCSS_METHOD</CODE>. Возможные значения: <CODE>key</CODE>, | |
137 <CODE>disk</CODE>, или <CODE>title</CODE>.</P> | |
138 | |
139 <P>Если ничего не предписано, делаются следующие попытки (по умолчанию: key, | |
140 title request):</P> | |
141 | |
142 <OL> | |
143 <LI><B>bus key:</B> этот ключ вырабатывается в процессе аутентификации | |
144 (множество ioctl вперемешку с обменами ключами — | |
145 криптографические процедуры), и при его помощи шифруются ключи диска и | |
146 роликов передаваемые по открытой шине (во избежания подслушивания). Он | |
147 необходим для получения и предварительной расшифровки ключа диска.</LI> | |
148 <LI><B>cached key:</B> MPlayer подбирает подходящий взломанный ключ из директории | |
149 <CODE>~/.mplayer/DVDKeys</CODE> (быстро ;-)</LI> | |
150 <LI><B>key:</B> При отсутствии подходящего ключа, MPlayer пытается | |
151 расшифровать диск при помощи набора ключей проигрывателя.</LI> | |
152 <LI><B>disk:</B> В случае неудачи (на пример при отсутствии ключей | |
153 проигрывателя) ключ диска форсируется. Этот метод интенсивно использует | |
154 процессор и нуждается в 64 мегабайтах памяти (хэш-таблица из 16 миллионов 32-разрядных | |
155 записей). Работает наверняка (но медленно).</LI> | |
156 <LI><B>title request:</B> Используя ключ диска MPlayer получает | |
157 зашифрованные ключи роликов находящиеся в <I>скрытых секторах</I> при | |
158 помощи <CODE>ioctl()</CODE>. Региональная защита проигрывателей RPC-2 | |
159 осуществляется именно на этом этапе; может не сработать на подобных | |
160 проигрывателях. При удачи, ключи роликов расшифровываются при помощи | |
161 ключа диска и ключа шины.</LI> | |
162 <LI><B>title:</B> Данный метод используется если title request не | |
163 срабатывает. Он не опирается на обмен ключами с дисководом. Ключи роликов | |
164 непосредственно атакуются криптографически, исходя из избыточности | |
165 расшифрованного содержания .VOB файлов. Метод также известен под названиями | |
166 "атака с известным открытым текстом" или "DeCSSPlus". В редких случаях | |
167 этот метод проваливается, по причине недостаточности зашифрованного | |
168 содержания для статистической атаки или изменения ключа в середине | |
169 ролика. Это единственный метод расшифровать содержания DVD на жестком | |
170 диске или на диске из неподходящего региона на проигрывателе RPC-2. | |
171 (медленный метод)</LI> | |
172 </OL> | |
173 | |
174 <P>С дисководами RPC-1, региональная защита осуществляется программно. | |
175 Дисководы RPC-2 защищены аппаратными средствами, разрешающими менять регион | |
176 всего 5 раз. Рекомендуется перегрузить RPC-1 в firmware если у тебя дисковод | |
177 RPC-2 с <A HREF="http://www.firmware-flash.com/">этого</A> сайта. Если для | |
178 твоего дисковода нет апгрейда, используй для изменения региона дисковода | |
179 <A HREF="http://www.linuxtv.org/download/dvd/dvd_disc_20000215.tar.gz">regionset</A> | |
180 (под Linux). <B>Осторожно:</B> Изменить регион можно всего 5 раз.</P> | |
181 | |
182 <P><B><A NAME="vcd">4.3. просмотр VCD</A></B></P> | |
183 | |
184 <P>Полный список возможных опций можно прочитать в man. Синтаксис для обычного | |
185 Видео-CD (VCD):</P> | |
186 | |
187 <P><CODE>mplayer -vcd <дорожка> [-cdrom-device <устройство>]</CODE></P> | |
188 | |
189 <P>Пример: <CODE>mplayer -vcd 2 -cdrom-device /dev/hdc</CODE></P> | |
190 | |
191 <P>Устройство VCD по умолчанию — <CODE>/dev/cdrom</CODE>. Если у тебя это не | |
192 так, то сделай символический линк или добавь правильное название в командной | |
193 строке после ключа <CODE>-cdrom-device</CODE>.</P> | |
194 | |
195 <P><B>Замечание:</B> Некоторые дисководы SCSI (по крайней мере Plextor | |
196 и некоторые изделия Toshiba) работают ужасно плохо при чтении VCD. Это | |
197 объясняется неполным исполнением ioctl CDROMREADRAW для этих дисководах. | |
198 Если ты имеешь некоторые познания в сфере программирования SCSI, пожалуйста | |
199 <A HREF="tech/patches.txt">помоги нам</A> в исполнении общей поддержки | |
200 SCSI для VCD.</P> | |
201 | |
202 <H4>Структура VCD</H4> | |
203 | |
204 <P>Диски VCD состоят из одной или нескольких дорожек:</P> | |
205 | |
206 <UL> | |
207 <LI>Первая дорожка содержит несколько мегабайтов секторами по 2048 байтов, | |
208 с файловой системой iso9660, обычно содержащей проигрыватель VCD для | |
209 Windows или прочую информацию, вроде картинок или текста.</LI> | |
210 <LI>Вторая и остальные дорожки содержат MPEG-поток секторами по 2324 | |
211 байта, по одному пакету MPEG PS на сектор вместо файловой системы. Так | |
212 же как и дорожки аудио дисков, эти дорожки <B>не монтируются</B>. Так | |
213 как большинство фильмов именно на этой дорожке, попробуй сначала | |
214 <CODE>-vcd 2</CODE>.</LI> | |
215 <LI>Существуют VCD диски без первой дорожки (единственная дорожка без файловой | |
216 системы). Они просматриваются, но не монтируются.</LI> | |
217 </UL> | |
218 | |
219 <P>Про файлы .DAT:</P> | |
220 | |
221 <P>Файл в примерно 600 мегабайтов на первой дорожке не настоящий. Это так | |
222 называемый ISO-переход, для доступа к другим дорожкам, не поддерживаемый | |
223 драйвером файловой системы iso9660 в оригинальном ядре Linux. Драйвер для | |
224 такого доступа входит в PowerDVD для Linux. Альтернативами для копирования | |
225 VCD может послужить новый драйвер cdfs (не входит в официальное ядро) | |
226 который показывает дорожки на диске как файлы образов или | |
227 <A HREF="http://cdrao.sf.net/">cdrao</A>, приложения для побитного | |
228 чтения/копирования CD.</P> | |
229 | |
230 | |
231 </BODY> | |
232 | |
233 </HTML> |