diff options
author | voroshil <voroshil@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2006-09-16 10:15:42 +0000 |
---|---|---|
committer | voroshil <voroshil@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2006-09-16 10:15:42 +0000 |
commit | 52204b1e9381b7c856be3e16dc795a97b041b068 (patch) | |
tree | eff227cc6eaa6c06950966b573753cce62295a7e /DOCS/xml | |
parent | b66f019a1efe92b9ad086f03ee466a54b4460785 (diff) | |
download | mpv-52204b1e9381b7c856be3e16dc795a97b041b068.tar.bz2 mpv-52204b1e9381b7c856be3e16dc795a97b041b068.tar.xz |
translation by Vladimir Voroshilov, voroshil gmail com
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19851 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'DOCS/xml')
-rw-r--r-- | DOCS/xml/ru/video.xml | 2546 |
1 files changed, 2546 insertions, 0 deletions
diff --git a/DOCS/xml/ru/video.xml b/DOCS/xml/ru/video.xml new file mode 100644 index 0000000000..4315b4f8c1 --- /dev/null +++ b/DOCS/xml/ru/video.xml @@ -0,0 +1,2546 @@ +<?xml version="1.0" encoding="koi8-r"?> +<!-- synced with r19832 --> +<chapter id="video"> +<title>Устройства вывода видео</title> + +<sect1 id="mtrr"> +<title>Настройка MTRR</title> + +<para> +ОЧЕНЬ важно проверить, правильно ли установлены MTRR регистры, +поскольку они могут дать большой прирост производительности. +</para> + +<para> +Выполните <command>cat /proc/mtrr</command>: +<screen> +<prompt>--($:~)--</prompt> cat /proc/mtrr +reg00: base=0xe4000000 (3648MB), size= 16MB: write-combining, count=9 +reg01: base=0xd8000000 (3456MB), size= 128MB: write-combining, count=1<!-- +--></screen> +</para> + +<para> +Здесь все верно, показана моя Matrox G400 с 16Мб памяти. Я выполнил это из-под +XFree 4.x.x , который автоматически устанавливает регистры MTRR. +</para> + +<para> +Если ничего не сработало, вам придется сделать это вручную. Во-первых, +вы должны определить базовый адрес. Существует три способа выяснить его: + +<orderedlist> +<listitem><para> + из сообщений запуска X11, например: + <screen> +(--) SVGA: PCI: Matrox MGA G400 AGP rev 4, Memory @ 0xd8000000, 0xd4000000 +(--) SVGA: Linear framebuffer at 0xD8000000<!-- +--></screen> + </para></listitem> +<listitem><para> + из <filename>/proc/pci</filename> (используйте команду <command>lspci -v</command>): + <screen> +01:00.0 VGA compatible controller: Matrox Graphics, Inc.: Unknown device 0525 +Memory at d8000000 (32-bit, prefetchable) + </screen> + </para></listitem> +<listitem><para> + из сообщений драйвера ядра mga_vid (используйте <command>dmesg</command>): + <screen>mga_mem_base = d8000000</screen> + </para></listitem> +</orderedlist> +</para> + +<para> +Теперь давайте найдем объем памяти. Это очень просто, просто преобразуйте +размер видео памяти в шестнадцатеричный формат, или используйте таблицу: +<informaltable frame="none"> +<tgroup cols="2"> +<tbody> +<row><entry>1 MB</entry><entry>0x100000</entry></row> +<row><entry>2 MB</entry><entry>0x200000</entry></row> +<row><entry>4 MB</entry><entry>0x400000</entry></row> +<row><entry>8 MB</entry><entry>0x800000</entry></row> +<row><entry>16 MB</entry><entry>0x1000000</entry></row> +<row><entry>32 MB</entry><entry>0x2000000</entry></row> +</tbody> +</tgroup> +</informaltable> +</para> + +<para> +Вы знаете бызовый адрес и размер памяти, так давайте настроим регистры MTRR! +Например, для вышеуказанной карты Matrox (<literal>base=0xd8000000</literal>) +с 32Мб памяти (<literal>size=0x2000000</literal>) просто выполните: +<screen> +echo "base=0xd8000000 size=0x2000000 type=write-combining" >| /proc/mtrr +</screen> +</para> + +<para> +Не все CPU имеют MTRR. Например, старый K6-2 (около 266MHz, +степпинг 0) не имеет MTRR, но у степпинга 12 они уже есть +(запустите <command>cat /proc/cpuinfo</command> чтобы это проверить). +</para> +</sect1> + +<sect1 id="output-trad"> +<title>Видео вывод для традиционных видео карт</title> +<sect2 id="xv"> +<title>Xv</title> + +<para> +Под XFree86 4.0.2 или новее, вы можете использовать функции работы с YUV[YUV routines] +вашей видеокарты, используя расширение XVideo, то, которое используется при указании опциии +'<option>-vo xv</option>'. +<!-- FIXME +Also, this driver supports adjusting +brightness/contrast/hue/etc (unless you use the old, slow DirectShow DivX +codec, which supports it everywhere), see the man page. +--> +К тому же этот драйвер поддерживает управление +яркостью/контрастностью/цветностью/и т.д. (кроме случая использования старого ,медленного +DivX кодека DirectShow, котороый везде это поддерживает), смотрите страницу man. + +</para> + +<para> +Чтобы заставить его работать, убедитесь, что выполняется следующее: + +<orderedlist> +<listitem><para> + Требуется использовать XFree86 4.0.2 или новее (предыдущие версии не меют XVideo) + </para></listitem> +<listitem><para> + Ваша карта действительно поддерживает аппаратное ускорение (современные - да) + </para></listitem> +<listitem><para> + X загружают расширение XVideo, это похоже на: + <programlisting>(II) Loading extension XVideo</programlisting> + в <filename>/var/log/XFree86.0.log</filename> + <note><para> + Это всего лишь загружается расширение XVideo. При нормальной установке оно грузится + всегда, это не означает, что загружена <emphasis role="bold">аппаратная</emphasis> + поддержка XVideo. + </para></note> + </para></listitem> +<listitem><para> + Ваша карта имеет поддержку Xv для inux. Чтобы это проверить, запустите + <command>xvinfo</command>, являющуюся частью дистрибутива XFree86. Она должна + выдать на экран длинный текст, похожий на этот: + <screen> +X-Video Extension version 2.2 +screen #0 + Adaptor #0: "Savage Streams Engine" + number of ports: 1 + port base: 43 + operations supported: PutImage + supported visuals: + depth 16, visualID 0x22 + depth 16, visualID 0x23 + number of attributes: 5 +(...) + Number of image formats: 7 + id: 0x32595559 (YUY2) + guid: 59555932-0000-0010-8000-00aa00389b71 + bits per pixel: 16 + number of planes: 1 + type: YUV (packed) + id: 0x32315659 (YV12) + guid: 59563132-0000-0010-8000-00aa00389b71 + bits per pixel: 12 + number of planes: 3 + type: YUV (planar) +(...и т.д....)<!-- +--></screen> + Карта должна поддерживать YUY2 пакованные и YUV12 планарные[planar] форматы + пикселов, чтобы быть полезной в <application>MPlayer</application>. + </para></listitem> +<listitem><para> + И, наконец, проверьте, что <application>MPlayer</application> собран с + поддержкой 'xv'. Выполните <command>mplayer -vo help | grep xv </command>. + Исли поддержка 'xv' включена, то увидите похожую строку: + <screen> + xv X11/Xv<!-- + --></screen> + </para></listitem> +</orderedlist> +</para> + +<sect3 id="tdfx"> +<title>3dfx карты</title> + +<para> +Хорошо известно, что старые 3dfx драйвера имеют проблемы с ускорением XVideo, они не +поддерживают ни YUY2 ни YV12, и т.п. Проверьте, что у вас XFree86 версии +4.2.0 или новее, он хорошо работает с YV12 и YUY2. Предыдущие версии, +включая 4.1.0, <emphasis role="bold">с YV12 приводят к краху</emphasis>. + +Если вы столкнулись со странными эффектами при использовании <option>-vo xv</option>, +попробуйте SDL (он тоже имеет поддержку XVideo), и посмотрите поможет ли это. Обратитесь к +разделу <link linkend="sdl">SDL</link> за подробностями. +</para> + +<para> +<emphasis role="bold">ИЛИ</emphasis>, попробуйте НОВЫЙ +<option>-vo tdfxfb</option> драйвер! Смотрите раздел <link linkend="tdfxfb">tdfxfb</link>. +</para> +</sect3> + + +<sect3 id="s3"> +<title>S3 карты</title> + +<para> +S3 Savage3D, должны прекрасно работать, но для Savage4 используйте XFree86 версии 4.0.3 или +выше (в случае проблем с изображением попробуйте 16bpp). По поводу S3 Virge: +она поддерживает xv, но карта сама по себе слишком медленная, так что лучше будет ее +продать. +</para> +<para> +Существует родной драйвер фреймбуфера для карт S3 Virge, аналогичный +tdfxfb. Настройте ваш фреймбуфер (например, укажите ядру +"<option>vga=792 video=vesa:mtrr</option>") и воспользуйтесь +<option>-vo s3fb</option> (<option>-vf yuy2</option> и <option>-dr</option> +тоже помогут). +</para> + +<note> +<para> +Пока не ясно в каких моделях Savage отсутствует поддержка YV12, и преобразование +осуществляется драйвером (медленно). Есл вы грешите на свою карту, возьмите +свежий драйвер иди вежливо спросите в списке рассылки MPlayer-users +о драйвере с поддержкой MMX/3DNow!. +</para> +</note> +</sect3> + + +<sect3 id="nvidia"> +<title>nVidia карты</title> + +<para> +nVidia под Linux - не всегда хороший выбор ... Открытые драйвера XFree86 +поддерживают большинство этих карт, но в некоторых случаях придется +использовать закрытый бинарный драйвер от nVidia, доступный на +<ulink url="http://www.nvidia.com/object/linux.html">сайте nVidia</ulink>. +Этот драйвер также всегда необходим для задействования 3D ускорения. +</para> + +<para> + +Карты Riva128 не имеют поддержки XVideo с драйвером nVidia от XFree86 :( +Подайте жалобу nVidia. +</para> + +<para> +Тем не менее, <application>MPlayer</application> имеет +<link linkend="vidix">VIDIX</link> драйвер для большинства карт nVidia. Сейчас он +в стадии беты и имеет некоторые недостатки. За подробостями обращайтесь +к разделу <link linkend="vidix-nvidia">nVidia VIDIX</link>. +</para> +</sect3> + + +<sect3 id="ati"> +<title>ATI карты</title> + +<para> +<ulink url="http://gatos.sf.net">Драйвер GATOS</ulink> +(который стоит использовать, если у вас не Rage128 или Radeon) по-умолчанию имеет включенную +опцию VSYNC. Это значит, что скорость декодирования (!) синхронизирована с частотой обновления +монитора. Если воспроизведение кажется медленным, попробуйте как-нибудь отключить VSYNC или +установите частоту обновления в n*(fps[кадров/с] фильма) Гц. +</para> + +<para> +Radeon VE - если нужен X, используйте XFree86 4.2.0 или новее. +Нет поддержки TV-выхода. Конечно, с <application>MPlayer</application> вы можете успешно +получить <emphasis role="bold">ускоренное</emphasis> отображение, с или без +<emphasis role="bold">TV-выхода</emphasis>, без каких-либо библиотек X. +Читайте раздел <link linkend="vidix">VIDIX</link>. +</para> +</sect3> + + +<sect3 id="neomagic"> +<title>NeoMagic карты</title> + +<para> +Эти карты можно найти во многих ноутбуках. Вы должны использовать XFree86 4.3.0 или +более новый, или использовать +<ulink url="http://www.mplayerhq.hu/MPlayer/contrib/NeoMagic-driver/">Xv-совместимые драйвера</ulink>. +от Stefan Seyfried. Просто выберите подходящий для вашей версии XFree86. +</para> + +<para> +XFree86 4.3.0 включает поддержку Xv, недавно Bohdan Horst отослал небольшой +<ulink url="http://www.mplayerhq.hu/MPlayer/contrib/NeoMagic-driver/neo_driver.patch">патч</ulink> +для исходников XFree86, ускоряющий операции с фреймбуфером (и XVideo) в четыре раза. +Патч был включен в XFree86 CVS и должен быть в следующем релизе после 4.3.0. +</para> + +<para> +Чтобы сделать возможным воспроизведение фильмов DVD разрешения поправьте ваш XF86Config как +указано здесь: +<programlisting> +Section "Device" + [...] + Driver "neomagic" + <emphasis>Option "OverlayMem" "829440"</emphasis> + [...] +EndSection<!-- +--></programlisting> +</para> +</sect3> + + +<sect3 id="trident"> +<title>Trident карты</title> +<para> +Если хотите использовать Xv с картой Trident, учитывая, что они не работают с +4.1.0, установите XFree 4.2.0. +4.2.0 добавляет поддержку полноэкранного Xv с картой Cyberblade XP. +</para> + +<para> +Другой вариант: <application>MPlayer</application> имеет +<link linkend="vidix">VIDIX</link> драйвер для карт Cyberblade/i1. +</para> + +</sect3> + + +<sect3 id="kyro"> +<title>Kyro/PowerVR карты</title> +<para> +Если хотите использовать Xv с картами на базе Kyro (например, +Hercules Prophet 4000XT), следует скачать драйверы с +<ulink url="http://www.powervr.com/">сайта PowerVR</ulink> +</para> +</sect3> +</sect2> + +<!-- ********** --> + +<sect2 id="dga"> +<title>DGA</title> + +<formalpara> +<title>ПРЕАМБУЛА</title> +<para> +Этот документ пытается сказать несколько слов о том, что такое DGA в целом и +что можт сделать DGA драйвер для <application>MPlayer</application> +(а что нет). +</para> +</formalpara> + +<formalpara> +<title>ЧТО ТАКОЕ DGA</title> +<para> +<acronym>DGA</acronym> это сокращение от <emphasis>Direct Graphics +Access[Прямой Доступ к Графике]</emphasis> и означает обход +программами X сервера и прямое изменение ими памяти фреймбуфера. +Говоря техническим языком, это происходит при помощи отображения[mapping] +памяти фреймбуфера в адресное простанство вашего процесса. Это позволяется +ядром, только если у вас есть привилегии суперпользователя. Вы можете +получить их либо войдя в систему под именем +<systemitem class="username">root</systemitem>, либо установив SUID бит на +испольняемый файл <application>MPlayer</application> (<emphasis role="bold">не +рекомендуется</emphasis>). +</para> +</formalpara> +<para> +Есть две версии DGA: DGA1 используется XFree 3.x.x и DGA2, появившийся в XFree 4.0.1. +</para> + +<para> +DGA1 предоставляет только прямой доступ в фреймбуферу, как описано выше. +Для переключения виеорежимов придется обратиться в расширению XVidMode. +</para> + +<para> +DGA2 объединяет возможности расширения XVidMode и, к тому же, позволяет изменять +глубину цвета отображения. Таким образом, вы можете,работая, в основном, +в X с 32-х битной глубиной цвета, переключиться на глубину 15 бит и наоборот. +</para> + +<para> +Однако DGA имеет некоторые недостатки. Похоже, оно каким-то образом зависит от +используемого графического чипа и реализации видеодрайвера сервера X, +управляющего этим чипом. Так что он работает не на всех системах. +</para> + +<formalpara> +<title>УСТАНОВКА ПОДДЕРЖКИ DGA ДЛЯ MPLAYER</title> + +<para> +Во-первых, убедитесь, что X загружает расширение DGA, смотрите в +<filename>/var/log/XFree86.0.log</filename>: + +<programlisting>(II) Loading extension XFree86-DGA</programlisting> + +Смотрите, <emphasis role="bold">крайне рекомендуется</emphasis> XFree86 4.0.x или старше! +DGA драйвер программы <application>MPlayer</application> определяется автоматически скриптом +<filename>./configure</filename>, или можете принудительно указать его использование +опцией <option>--enable-dga</option>. +</para> +</formalpara> + +<para> +Если драйвер не смог переключиться на меньшее разрешение, поэкспериментируйте с +опциями <option>-vm</option> (только для X 3.3.x), <option>-fs</option>, +<option>-bpp</option>, <option>-zoom</option> чтобы найти видеорежим +в который поместиться фильм. Конвертера Пока что нет :( +</para> + +<para> +Получите права <systemitem class="username">root</systemitem>. DGA требует +права root для прямой записи в видеопамять. Если хотите запускать от имени обычного +пользователя, установите бит SUID на <application>MPlayer</application>: + +<screen> +chown root <replaceable>/usr/local/bin/mplayer</replaceable> +chmod 750 <replaceable>/usr/local/bin/mplayer</replaceable> +chmod +s <replaceable>/usr/local/bin/mplayer</replaceable> +</screen> + +Теперь это работает и под обычным пользователем. +</para> + +<caution> +<title>Риск безопасности</title> +<para> +В этом заключается <emphasis role="bold">большой</emphasis> риск безопасности! +<emphasis role="bold">Никогда</emphasis> не делайте этого на сервере или комппьютере, +к которому имеют доступ другие люди, т.к. они могут получить права root через +<application>MPlayer</application> с битом SUID. +</para> +</caution> + +<para> +Теперь используйте опцию <option>-vo dga</option>, и вперед! (мы надеемся :) +Можете попробовать, работает ли у вас опция <option>-vo sdl:driver=dga</option>! +Это намного быстрее! +</para> + + +<formalpara id="dga-modelines"> +<title>ПЕРЕКЛЮЧЕНИЕ РЕЖИМОВ</title> + +<para> +DGA драйвер позволяет переключать режимы (менять разрешение) выходного сигнала. +Это позволяет избежать (медленного) программного масштабирования и в то же +время предоставить полкоэкранное изображение. В идеале следует переключаться в +режим с таким же (необязательно с сохранением пропорций) как у видеоданных разрешением, +но X сервер позволяет переключаться в режимы, предопределенные в +<filename>/etc/X11/XF86Config</filename> +(<filename>/etc/X11/XF86Config-4</filename> для XFree 4.X.X соответственно). +Они определяются так называемыми моделайнами[modelines] и зависят +возможностей вашей видеокарты. X сервер читает этот файл при старте и +отключает режимы, недопустимые для вашего оборудованиея. Вы можете определить +какие режимы остались, посмотрев лог файл X11. Он может быть найден в: +<filename>/var/log/XFree86.0.log</filename>. +</para> +</formalpara> + +<para> +Вот значения, про которые известно, что они работают с чипом Riva128 при +использовании X драйвера nv.o. +</para> + + +<para><programlisting> +Section "Modes" + Identifier "Modes[0]" + Modeline "800x600" 40 800 840 968 1056 600 601 605 628 + Modeline "712x600" 35.0 712 740 850 900 400 410 412 425 + Modeline "640x480" 25.175 640 664 760 800 480 491 493 525 + Modeline "400x300" 20 400 416 480 528 300 301 303 314 Doublescan + Modeline "352x288" 25.10 352 368 416 432 288 296 290 310 + Modeline "352x240" 15.750 352 368 416 432 240 244 246 262 Doublescan + Modeline "320x240" 12.588 320 336 384 400 240 245 246 262 Doublescan +EndSection +</programlisting></para> + + +<formalpara> +<title>DGA & MPLAYER</title> +<para> +DGA используется программой <application>MPlayer</application> двумя способами: +можно указать SDL использовать его (<option>-vo sdl:driver=dga</option>) и +с помощью DGA драйвера (<option>-vo dga</option>). Все сказанное выше верно для обоих; +в следующих разделах будет расказано как работает DGA драйвер для +<application>MPlayer</application>. +</para> +</formalpara> + + +<formalpara> +<title>ВОЗМОЖНОСТИ</title> + +<para> +DGA запускается указанием <option>-vo dga</option> в командной строке. По-умолчанию, +он пытается переключить режим с ближайшим к оригинальному видео разрешением. +Он преднамеренно игнорирует опции <option>-vm</option> и <option>-fs</option> +(переключение видеорежимов и полноэкранный режим) - он всегда старается +занять как можно большую площадь экрана переключением видеорежима, +избегая таким образом использования дополнительных тактов CPU для +масштабирования изображения. Если выбранный режим вам не нравится, можете +принудительно указать использовать разрешение ближайшее к указанному вами опциями +<option>-x</option> и <option>-y</option>. При указании опции +<option>-v</option>, DGA драйвер выведет, кроме множества других вещей, список +всех поддерживаемых режимов, указанных в <filename>XF86Config</filename>. +Имея DGA2 вы также можете указать использование определенной глубины цвета +при помощи опции <option>-bpp</option>. Допустимыми значениями являются 15, 16, 24 и 32. +Зависит от оборудования, какие значения поддерживаются аппаратно, а для каких необходимо +производить (возможно медленное) преобразование. +</para> +</formalpara> +<para> +<!--FIXME offscreen memory --> +Если вам повезло иметь достаточно свободной памяти[offscreen memory], чтобы поместить +туда изображение целиком, DGA драйвер будет использовать двойную буферизацию, +что приведет к более плавному воспроизведению фильма. Он сообщит вам включена ли +двойная буферизация или нет. +</para> + +<para> +Двойная буферизация означает, что каждый следующий кадр вашего фильма рисуется +в некоторую память[offscreen memory], пока отображается теущий кадр. +Когда следующий кадр готов, графическому чипу сообщается его расположение +в памяти, и чип просто выбирает оттуда данные для отображения. +В это время новыми видео данными заполняется другой участок буфера. +</para> + +<para> +Двойная буферизация может быть задействована опцией +<option>-double</option> и отключена при помощи +<option>-nodouble</option>. В данный момент двойной буфер по-умолчанию отключен. +При использовании DGA драйвера, экранное отображение (OSD) работает только +с двойной буферизацией. Однако, включение двойной буферизации может привести +к существенному снижению скорости (на моем K6-II+ 525 оно использует дополнительные +20% времени CPU!) в зависимости от реализации DGA для вашего оборудования. +</para> + + +<formalpara> +<title>ПРОБЛЕМЫ БЫСТРОДЕЙСТВИЯ</title> + +<para> +<!-- FIXME как-то криво звучит --> +Проще говоря, DGA доступ к фреймбуферу должен быть настолько быстр, насколько +быстр используемый X11 драйвер c дополительной выгодой[benefit] получения +полкоэкранного изображения. Процентные значения скорости, выводимые +<application>MPlayer</application>, должны интерпретироваться с некоторой +осторожностью, например, с драйвером X11 они не включают время, используемое +сервером X11 непосредственно для прорисовки. Подключите терминал к +последовательному порту и запустите <command>top</command>, чтобы +увидеть, что на самом деле происходит. +</para> +</formalpara> + +<para> +Проще говоря, ускорение, полученное от использования DGA относительно +'обычного' использования X11, сильно зависит от видео карты и того, +насколько хорошо оптимизирован модуль X11 для него. +</para> + +<para> +Если у вас медленная система, лучше использовать глубину 15 или 16 бит, +поскольку это потребует половину пропускной способности памяти 32-х +битного дисплея. +</para> + +<para> +Даже использование глубины 24 бита - хорошая идея, если ваша карта +аппаратно поддерживает только 32 бита, поскольку передается на 25% +меньше данных по сравнению с режимом 32/32. +</para> + +<para> +Приходилось видеть, как некоторые AVI файлы воспроизводились на Pentium MMX 266. +AMD K6-2 CPU может работать начиная с 400 МГц и выше. +</para> + + +<formalpara> +<title>ИЗВЕСТНЫЕ ОШИБКИ</title> + +<para> +Ну, по мнению некоторых разработчиков XFree, DGA - это немного монстр. +Они говорят, что лучше его не использовать. Его реализация не +безупречна для любого существующего драйвера XFree. +изъянов. +</para> +</formalpara> + +<itemizedlist> +<listitem><simpara> + С XFree 4.0.3 и <filename>nv.o</filename> существует ошибка приводящая + к странным цветам. + </simpara></listitem> +<listitem><simpara> + ATI драйвер требует неоднократного переключения режима после + завершения использования DGA. + </simpara></listitem> +<listitem><simpara> + Некоторые драйвера просто не в состоянии переключиться обратно в + нормальный режим (используйте + <keycap>Ctrl</keycap>+<keycap>Alt</keycap>+<keycap>Keypad +</keycap> и + <keycap>Ctrl</keycap>+<keycap>Alt</keycap>+<keycap>Keypad -</keycap> + для нормального переключения). + </simpara></listitem> +<listitem><simpara> + Некоторые драйвера просто отображают странные цвета. + </simpara></listitem> +<listitem><simpara> + Некоторые драйвера неверно сообщают о количестве памяти, которое они отобразли в + адресное простарство процесса, так что vo_dga не будет использовать + двойную буферизацию (SIS?). + </simpara></listitem> +<listitem><simpara> + Некоторые драйвера, похоже, не могут сообщить даже об одном верном режиме. + В этом случае DGA рухнет, сообщая о невероятном режиме + 100000x100000 или о чем-нибудь похожем. + </simpara></listitem> +<listitem><simpara> + OSD работает только с задействованным двойным буфером (иначе он моргает). + </simpara></listitem> +</itemizedlist> + +</sect2> +<!--</sect1>--> + +<!-- ********** --> + +<sect2 id="sdl"> +<title>SDL</title> + +<para> +<acronym>SDL</acronym> (Simple Directmedia Layer) - это, в основном, унифицированный +видео/аудио интерфейс. Программы, его использующие, знают только про SDL, а не про +то, какой видео или аудио драйвер реально используется. Например, порт игры Doom, +используя SDL, может запуститься на svgalib, aalib, X, fbdev и других, вам +придется только указать (для примера) используемый видеодрайвер при помощи +переменной окружения <envar>SDL_VIDEODRIVER</envar>. Ну, в теории. +</para> + +<para> +<!-- FIXME is translation correct ? +With <application>MPlayer</application>, we used its X11 driver's software +scaler ability for cards/drivers that doesn't support XVideo, until we made +our own (faster, nicer) software scaler. Also we used its aalib output, but +now we have ours which is more comfortable. Its DGA mode was better than +ours, until recently. Get it now? :) +--> +Для карт/драйверов, не поддерживающих XVideo, мы использовали в +<application>MPlayer</application> собственные возможности программного масштабирования +SDL'вских X11 драйверов, пока не написали наш собственный (более быстрый и изящный) +программный модуль масштабирования. Также мы использовали его aalib вывод, но +теперь у нас есть свой, более удобный. До некоторых пор его DGA режим был +лучше нашего. Хотите получить его прямо сейчас ? :) +</para> + +<para> +Он также помогает с некоторыми сбоящими драйверами/картами, если видео +прерывается (если это не проблема недостаточного быстродействия), или заикается звук. +</para> + +<para> +SDL видео вывод поддерживает отображения субтитров внизу, на черной полосе (если она есть). +</para> + +<variablelist> +<title>Есть несколько параметров командной строки для SDL:</title> +<varlistentry> + <term><option>-vo sdl:driver=<replaceable>название</replaceable></option></term> + <listitem><simpara> + указывает исользуемый SDL видео драйвер (например, <literal>aalib</literal>, + <literal>dga</literal>, <literal>x11</literal>) + </simpara></listitem> +</varlistentry> +<varlistentry> + <term><option>-ao sdl:<replaceable>название</replaceable></option></term> + <listitem><simpara> + указывает используемый SDL аудио драйвер (например, <literal>dsp</literal>, + <literal>esd</literal>, <literal>artsc</literal>) + </simpara></listitem> +</varlistentry> +<varlistentry> + <term><option>-noxv</option></term> + <listitem><simpara> + отключает ускорение XVideo + </simpara></listitem> +</varlistentry> +<varlistentry> + <term><option>-forcexv</option></term> + <listitem><simpara> + пытается включить ускорение XVideo принудительно + </simpara></listitem> +</varlistentry> +</variablelist> + +<table> +<title>клавиши управления SDL</title> +<tgroup cols="2"> +<thead> +<row><entry>Клавиша</entry><entry>Действие</entry></row> +</thead> +<tbody> +<row><entry><keycap>c</keycap></entry><entry> + циклическое переключение доступных полноэкранных режимов + </entry></row> +<row><entry><keycap>n</keycap></entry><entry> + возврат в нормальный режим + </entry></row> +</tbody> +</tgroup> +</table> + +<itemizedlist> +<title>Известные ошибки:</title> +<listitem><simpara> + Клавиша ,нажатая при использовании sdl:driver=aalib, бесконечно повторяется. + (используйте <option>-vo aa</option>!). Это оишбка SDL, я не могу ее исправить + (проверено с SDL 1.2.1). + </simpara></listitem> +<listitem><simpara> + НЕ ИСПОЛЬЗУЙТЕ SDL с GUI! Это не работает так как должно. + </simpara></listitem> +</itemizedlist> +</sect2> + + +<sect2 id="svgalib"> +<title>SVGAlib</title> + +<formalpara> +<title>УСТАНОВКА</title> +<para> +потребуется установить svgalib и ее пакет разработки, чтобы +<application>MPlayer</application> собрал свой SVGAlib драйвер (определяется +автоматически, но можко включить принудительно), и отредактировать +<filename>/etc/vga/libvga.config</filename> в соответствии с вашией картой и монитором. +</para> +</formalpara> + +<note> +<para> +Убедитесь, что не используете опцию <option>-fs</option>, поскольку она включает +использование программного масштабирования и работает медленно. Если вам действительно +это необходимо, используйте опцию <option>-sws 4</option>, которая будет давать плохое +качество, но несколько быстрее. +</para> +</note> + +<formalpara><title>ПОДДЕРЖКА EGA (4BPP)</title> +<para> +SVGAlib включает в себя EGAlib, и <application>MPlayer</application> имеет +возможность выводить любой фильм в 16-ти цветах. Используется в таких вариантах: +</para> +</formalpara> + +<itemizedlist> +<listitem><simpara> + EGA карта с EGA монитором: 320x200x4bpp, 640x200x4bpp, 640x350x4bpp + </simpara></listitem> +<listitem><simpara> + EGA карта с CGA монитором: 320x200x4bpp, 640x200x4bpp + </simpara></listitem> +</itemizedlist> + +<para> +Значение bpp (бит на пиксел) должно быть вручную установлено в 4: +<option>-bpp 4</option> +</para> + +<para> +Возможно потребуется отмасштабировать фильм, чтобы уместить в размеры EGA режима: +<screen>-vf scale=640:350</screen> +or +<screen>-vf scale=320:200</screen> +</para> + +<para> +Для масштабировани требуется быстрый алгоритм с плохим качеством: +<screen>-sws 4</screen> +</para> + +<para> +Возможно надо отключить автоматическую коррекцию пропорций: +<screen>-noaspect</screen> +</para> + +<note><para> +Как показывает мой опыт, лучшее качество на EGA экране получается +при небольшом уменьшении яркости: +<option>-vf eq=-20:0</option>. Мне также пришлось уменьшить частоту дискретизации [samplerate] +на моей машине, поскольку звук не работал на 44kГц. +<option>-srate 22050</option>. +</para></note> + +<para> +ВЫ можете включить OSD и субтитры только с плагином <option>expand</option>, +смотрите страницу руководства man для точных параметров. +</para> +</sect2> + + +<sect2 id="fbdev"> +<title>Вывод во фреймбуфер (FBdev)</title> + +<para> +Надо ли собирать FBdev автоматически определяется скриптом +<filename>./configure</filename>. Прочтите документацию на фреймбуйер в +исходниках ядра (<filename>Documentation/fb/*</filename>) для более подробной +информации. +</para> + +<para> +Если ваша карта не поддерживает стандарт VBE 2.0 (старые ISA/PCI карты, такие +как S3 Trio64), а только VBE 1.2 (или еще старее?): ну, VESAfb все же будет доступна, +но вам потребуется загрузить SciTech Display Doctor (она же UniVBE) до загрузки Linux. +Используйте загрузочный диск DOS или что либо другое. И не забудьте зарегистрировать +ваш UniVBE ;)) +</para> + +<para> +Драйвер FBdev вместе с прочими принимает несколько дополнительных параметров: +</para> + +<variablelist> +<varlistentry> + <term><option>-fb</option></term> + <listitem><simpara> + указывает какой устройство фреймбуфера использовать + (по-умолчанию: <filename>/dev/fb0</filename>) + </simpara></listitem> +</varlistentry> +<varlistentry> + <term><option>-fbmode</option></term> + <listitem><simpara> + название используемого режима (в соответствии с <filename>/etc/fb.modes</filename>) + </simpara></listitem> +</varlistentry> +<varlistentry> + <term><option>-fbmodeconfig</option></term> + <listitem><simpara> + конфигурационный файл с режимами (по-умолчанию: <filename>/etc/fb.modes</filename>) + </simpara></listitem> +</varlistentry> +<varlistentry> + <term><option>-monitor-hfreq</option></term> + <term><option>-monitor-vfreq</option></term> + <term><option>-monitor-dotclock</option></term> + <listitem><simpara> + <emphasis role="bold">важные</emphasis> знаячения, смотрите + <filename>example.conf</filename> + </simpara></listitem> +</varlistentry> +</variablelist> + +<para> +При желании переключиться в особый режим используйте: +<screen> +mplayer -vm -fbmode <replaceable>название_режима</replaceable> <replaceable>имя_файла</replaceable> +</screen> +</para> + +<itemizedlist> +<listitem><para> + <option>-vm</option> в одиночку выберет наиболее подходящий режим из + <filename>/etc/fb.modes</filename>. Также может использоваться совместно с + <option>-x</option> и <option>-y</option>. Опция + <option>-flip</option> поддерживается, только если формат точки фильма совпадает с + форматом точки видеорежима. Обратите внимание на значение bpp, fbdev пытается + использовать текущий или указанный вами опцией <option>-bpp</option>. + </para></listitem> +<listitem><para> + Опция <option>-zoom</option> не поддерживается (используйте <option>-vf scale</option>). + Вы не можете использовать режимы с 8bpp (или меньше). + </para></listitem> +<listitem><para> + Вы, возможно, захотите отключить курсор: + <screen>echo -e '\033[?25l'</screen> + или + <screen>setterm -cursor off</screen> + и хранитель экрана: + <screen>setterm -blank 0</screen> + Чтобы снова включить курсор: + <screen>echo -e '\033[?25h'</screen> + или + <screen>setterm -cursor on</screen> + </para></listitem> +</itemizedlist> + +<note> +<para> +Смена режимов FBdev <emphasis>не работает</emphasis> с VESA фреймбуфером. +Не просите об этом, т.к. это не ограничения <application>MPlayer</application>. +</para> +</note> +</sect2> + + +<sect2 id="mga_vid"> +<title>Matrox фреймбуфер (mga_vid)</title> + +<para> +Этот раздел о поддержке Matrox G200/G400/G450/G550 BES (Back-End Scaler) +и драйвере ядра <systemitem>mga_vid</systemitem>. +Он имеет поддержку VSYNC с тройной буферизацией. Работает как во фреймбуфер консоли, так и +под X. +</para> |