Mercurial > mplayer.hg
changeset 9418:5053cb2433e5
Russian translation by Daniel A. Nagy <nagydani@mast.queensu.ca>.
author | diego |
---|---|
date | Fri, 14 Feb 2003 02:14:18 +0000 |
parents | 5eea6d903b4c |
children | dfefd7f0c0a8 |
files | DOCS/ru/cd-dvd.html |
diffstat | 1 files changed, 233 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/DOCS/ru/cd-dvd.html Fri Feb 14 02:14:18 2003 +0000 @@ -0,0 +1,233 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + +<HEAD> + <LINK REL="stylesheet" TYPE="text/css" HREF="../default.css"> + <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=koi8-r"> +</HEAD> + +<BODY> + + +<P><B><A NAME=drives>4.1. Дисководы CD-ROM</A></B></P> + +<P>Из Linux'овской документации:</P> + +<P>Некоторые CD-ROM'ы способны регулировать скорость чтения. Несколько +аргументов в пользу использования этой возможности:</P> + + <UL> + <LI>При высоких оборотах возрастает вероятность ошибки при чтении, + особенно с неправильно записанных дисков.</LI> + <LI>Уровень шума, возрастающий с оборотами, может оказаться весьма + существенным.</LI> + </UL> + +<P>Рекомендуется использования программ 'hdparm' или 'setcd'.</P> + +<P> <CODE>hdparm -E [скорость] [дисковод]</CODE></P> + +<P> <CODE>setcd -x [скорость] [дисковод]</CODE></P> + +<P>Альтернативный метод:</P> + +<P> <CODE>echo current_speed:4 >/proc/ide/[дисковод]/settings</CODE></P> + +<P>но для этого требуются привилегии администратора. Следующая команда +тоже может быть полезна:</P> +<P> <CODE>echo file_readahead:2000000 >/proc/ide/[дисковод]/settings</CODE></P> + +<P>Таким образом предварительно cчитывается 2 мегабайта (полезно при +дисках с царапинами). Если поставить слишком высокое значение, то постоянный +запуск и остановка вращения диска драматически снизят эффективность. +Предлагается также использовать программу 'hdparm':</P> + + +<P> <CODE>hdparm -d1 -a8 -u1 [дисковод]</CODE></P> + +<P>Таким образом включается непосредственный доступ к памяти[DMA], предварительное +чтение и размаскировка IRQ (если это непонятно, <EM>прочти man-страницу +'hdparm'</EM>)</P> + +<P>Можешь поэкспериментировать файлом <CODE>/proc/ide/[дисковод]/settings</CODE> +для прочих настроек.</P> + +<P>FreeBSD:</P> + +<P> Скорость: <CODE>cdcontrol [-f дисковод] speed [скорость]</CODE></P> +<P> DMA: <CODE>sysctl hw.ata.atapi_dma=1</CODE></P> + +<P><B><A NAME=dvd>4.2. Просмотр DVD</A></B></P> + +<P>Полный список возможных опций можно прочитать в man.</P> + +<H4>Новая поддержка DVD (mpdvdkit2)</H4> + +<P><B>MPlayer</B> использует библиотеки <CODE>libdvdread</CODE> и +<CODE>libdvdcss</CODE> для расшифровки и просмотра DVD. Эти две программы +находятся в субдиректории <CODE>libmpdvdkit/</CODE>, так что отдельно +устанавливать их не нужно (и бесполезно). Мы выбрали такое решение потому, +что нам пришлось исправить ошибку в <CODE>libdvdread</CODE> и добавить патч +к <CODE>libdvdcss</CODE> для поддержки <B>сохранения взломанных ключей +CSS</B>, что в свою очередь предотвращает повторного взлома ключа при каждом +просмотре, существенно увеличивая скорость.</P> + +<P><B>MPlayer</B> способен использовать <CODE>libdvdread</CODE> и +<CODE>libdvdcss</CODE> установленные отдельно, но такое решение <B>не +рекомендуется</B>, так как может приводить к ошибкам, несовместимости и +потере скорости.</P> + +<H4>Навигация DVD (dvdnav)</H4> + +<P>Работы по поддержке <CODE>libdvdnav</CODE> проводились, но эта часть кода +никогда не была доведена до ума, и на данном этапе заброшена, не работает.</P> + +<P><B>Старая поддержка DVD - <I>ОПЦИОНАЛЬНО</I></B></P> + +<P>Это может оказаться полезным, например, при просмотре зашифрованных +VOB-файлов с <B>жесткого диска</B>. Cкомпилируй и установи <B>libcss</B> +(версию 0.0.1, не в коем случае не более позднюю). Если <B>MPlayer</B> ее не +обнаружит, добавь <CODE>-csslib /path/to/libcss.so</CODE>. Для использования +необходимы привилегии администратора или suid root на выполняемом файле.</P> + +<H4>Структура DVD</H4> + +<P>Диски DVD используют сектора размером в 2048 байтов с ECC/CRC. На них обычно +единственная файловая система UDF на одной дорожке, которая содержит +различные файлы (коротенькие .IFO и .BUK и длинные (порядка гигабайта) +.VOB). Это настоящие файлы, которые можно просматривать/переписывать сo +cмонтированного не зашифрованного DVD.</P> + +<P>Файлы .IFO содержат информацию для навигации (раздел/ролик/угол/язык и +пр.), необходимую для интерпретации содержания .VOB (кино). Файлы .BUK +— их дубли. Эти файлы содержат адреса в <B>секторах</B>, так что для +исполнения навигации и расшифровки DVD, нужен доступ к файлам на уровне +секторов.</P> + +<P>Из-за этого старая поддержка DVD нуждается в cмонтированной файловой +системе и посекторному доступу к устройству. К сожалению, для этого нужны +привилегии администратора (под Linux). Проблема решается двумя способами:</P> + +<UL> + <LI>Привилегированный доступ или исполняемый файл с suid root.</LI> + <LI>Исполнение файловой системы UDF в userspace. Именно это делают + libdvdread 0.9.x и libmpdvdkit (новая поддержка DVD). В таком случае + драйвер UDF в ядре не нужен, как и монтирование DVD, так как + используется исключительно посекторное чтение.</LI> +</UL> + +<P>Иногда пользователям закрыт доступ к /dev/dvd, так что авторы libdvdread +исполнили некий эмуляционный слой, который конвертирует секторные +адреса в названия файла и офсет, таким образом эмулируя непосредственный +доступ на монтированной файловой системе или на жестком диске.</P> + +<P>libdvdread также принимает точку монтирования вместо устройства, и получает +его название из <CODE>/proc/mounts</CODE>. Этот метод придуман для +Solaris-ов, где данные названия присваиваются динамически.</P> + +<P>Устройство DVD по умолчанию — <CODE>/dev/dvd</CODE>. Если у тебя это не +так, то сделай символический линк или добавь правильное название в командной +строке после ключа <CODE>-dvd-device</CODE>.</P> + +<H4>DVD аутентификация</H4> + +<P>Это, как и взлом ключей зашифрованных DVD происходит при помощи +отпатченого libdvdcss. Выбор метода осуществляется через переменную +окружения <CODE>DVDCSS_METHOD</CODE>. Возможные значения: <CODE>key</CODE>, +<CODE>disk</CODE>, или <CODE>title</CODE>.</P> + +<P>Если ничего не предписано, делаются следующие попытки (по умолчанию: key, +title request):</P> + +<OL> + <LI><B>bus key:</B> этот ключ вырабатывается в процессе аутентификации + (множество ioctl вперемешку с обменами ключами — + криптографические процедуры), и при его помощи шифруются ключи диска и + роликов передаваемые по открытой шине (во избежания подслушивания). Он + необходим для получения и предварительной расшифровки ключа диска.</LI> + <LI><B>cached key:</B> MPlayer подбирает подходящий взломанный ключ из директории + <CODE>~/.mplayer/DVDKeys</CODE> (быстро ;-)</LI> + <LI><B>key:</B> При отсутствии подходящего ключа, MPlayer пытается + расшифровать диск при помощи набора ключей проигрывателя.</LI> + <LI><B>disk:</B> В случае неудачи (на пример при отсутствии ключей + проигрывателя) ключ диска форсируется. Этот метод интенсивно использует + процессор и нуждается в 64 мегабайтах памяти (хэш-таблица из 16 миллионов 32-разрядных + записей). Работает наверняка (но медленно).</LI> + <LI><B>title request:</B> Используя ключ диска MPlayer получает + зашифрованные ключи роликов находящиеся в <I>скрытых секторах</I> при + помощи <CODE>ioctl()</CODE>. Региональная защита проигрывателей RPC-2 + осуществляется именно на этом этапе; может не сработать на подобных + проигрывателях. При удачи, ключи роликов расшифровываются при помощи + ключа диска и ключа шины.</LI> + <LI><B>title:</B> Данный метод используется если title request не + срабатывает. Он не опирается на обмен ключами с дисководом. Ключи роликов + непосредственно атакуются криптографически, исходя из избыточности + расшифрованного содержания .VOB файлов. Метод также известен под названиями + "атака с известным открытым текстом" или "DeCSSPlus". В редких случаях + этот метод проваливается, по причине недостаточности зашифрованного + содержания для статистической атаки или изменения ключа в середине + ролика. Это единственный метод расшифровать содержания DVD на жестком + диске или на диске из неподходящего региона на проигрывателе RPC-2. + (медленный метод)</LI> +</OL> + +<P>С дисководами RPC-1, региональная защита осуществляется программно. +Дисководы RPC-2 защищены аппаратными средствами, разрешающими менять регион +всего 5 раз. Рекомендуется перегрузить RPC-1 в firmware если у тебя дисковод +RPC-2 с <A HREF="http://www.firmware-flash.com/">этого</A> сайта. Если для +твоего дисковода нет апгрейда, используй для изменения региона дисковода +<A HREF="http://www.linuxtv.org/download/dvd/dvd_disc_20000215.tar.gz">regionset</A> +(под Linux). <B>Осторожно:</B> Изменить регион можно всего 5 раз.</P> + +<P><B><A NAME="vcd">4.3. просмотр VCD</A></B></P> + +<P>Полный список возможных опций можно прочитать в man. Синтаксис для обычного +Видео-CD (VCD):</P> + +<P><CODE>mplayer -vcd <дорожка> [-cdrom-device <устройство>]</CODE></P> + +<P>Пример: <CODE>mplayer -vcd 2 -cdrom-device /dev/hdc</CODE></P> + +<P>Устройство VCD по умолчанию — <CODE>/dev/cdrom</CODE>. Если у тебя это не +так, то сделай символический линк или добавь правильное название в командной +строке после ключа <CODE>-cdrom-device</CODE>.</P> + +<P><B>Замечание:</B> Некоторые дисководы SCSI (по крайней мере Plextor +и некоторые изделия Toshiba) работают ужасно плохо при чтении VCD. Это +объясняется неполным исполнением ioctl CDROMREADRAW для этих дисководах. +Если ты имеешь некоторые познания в сфере программирования SCSI, пожалуйста +<A HREF="tech/patches.txt">помоги нам</A> в исполнении общей поддержки +SCSI для VCD.</P> + +<H4>Структура VCD</H4> + +<P>Диски VCD состоят из одной или нескольких дорожек:</P> + +<UL> + <LI>Первая дорожка содержит несколько мегабайтов секторами по 2048 байтов, + с файловой системой iso9660, обычно содержащей проигрыватель VCD для + Windows или прочую информацию, вроде картинок или текста.</LI> + <LI>Вторая и остальные дорожки содержат MPEG-поток секторами по 2324 + байта, по одному пакету MPEG PS на сектор вместо файловой системы. Так + же как и дорожки аудио дисков, эти дорожки <B>не монтируются</B>. Так + как большинство фильмов именно на этой дорожке, попробуй сначала + <CODE>-vcd 2</CODE>.</LI> + <LI>Существуют VCD диски без первой дорожки (единственная дорожка без файловой + системы). Они просматриваются, но не монтируются.</LI> +</UL> + +<P>Про файлы .DAT:</P> + +<P>Файл в примерно 600 мегабайтов на первой дорожке не настоящий. Это так +называемый ISO-переход, для доступа к другим дорожкам, не поддерживаемый +драйвером файловой системы iso9660 в оригинальном ядре Linux. Драйвер для +такого доступа входит в PowerDVD для Linux. Альтернативами для копирования +VCD может послужить новый драйвер cdfs (не входит в официальное ядро) +который показывает дорожки на диске как файлы образов или +<A HREF="http://cdrao.sf.net/">cdrao</A>, приложения для побитного +чтения/копирования CD.</P> + + +</BODY> + +</HTML>