Mercurial > mplayer.hg
changeset 19845:900c9417644b
translation by Vladimir Voroshilov, voroshil gmail com
author | voroshil |
---|---|
date | Sat, 16 Sep 2006 10:15:42 +0000 |
parents | a5c94f7cdedc |
children | bcc792bfa431 |
files | DOCS/xml/ru/video.xml |
diffstat | 1 files changed, 2546 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/DOCS/xml/ru/video.xml Sat Sep 16 10:15:42 2006 +0000 @@ -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> + +<warning> +<para> +Он только для Linux! На не-Linux системах (проверялось на FreeBSD) можете вместо +него использовать <link linkend="vidix">VIDIX</link>! +</para> +</warning> + +<procedure> +<title>Установка:</title> +<step><para> + чтобы ипользовать его, придется, во-первых, скомпилировать <filename>mga_vid.o</filename>: + <screen> +cd drivers +make<!-- +--></screen> + </para></step> +<step><para> + Затем создайте устройство <filename>/dev/mga_vid</filename>: + <screen>mknod /dev/mga_vid c 178 0</screen> + и загрузите драйвер: + <screen>insmod mga_vid.o</screen> + </para></step> +<step><para> + Вам следует проверить определение размера памяти, используя + команду <command>dmesg</command>. Если он неверен, укажите опцию + <option>mga_ram_size</option> + (но сначала <command>rmmod mga_vid</command>), + указав размер памяти в Мб: + <screen>insmod mga_vid.o mga_ram_size=16</screen> + </para></step> +<step><para> + чтобы в случае необходимости загружать его автоматической, сначала добавьте + следующую строку в конец файла <filename>/etc/modules.conf</filename>: + + <programlisting>alias char-major-178 mga_vid</programlisting> + + Затем скопируйте модуль <filename>mga_vid.o</filename> в соответствующее место в каталоге + <filename>/lib/modules/<replaceable>версия_ядра</replaceable>/<replaceable>где_то_тут</replaceable></filename>. + </para><para> + Затем запустите + <screen>depmod -a</screen> + </para></step> +<step><para> + Теперь надо (пере)скомпилировать <application>MPlayer</application>, + <filename>./configure</filename> определит + <filename>/dev/mga_vid</filename> и соберет драйвер 'mga'. + Использование его в <application>MPlayer</application> осуществляется + опцией <option>-vo mga</option>, если используете консоль matroxfb, или + опцией <option>-vo xmga</option> из-под XFree86 3.x.x или 4.x.x. + </para></step> +</procedure> + +<para> +Драйвер mga_vid работает совместно с Xv. +</para> + +<para> +Из файла устройства <filename>/dev/mga_vid</filename> можно получать некоторую информацию, +например, командой +<screen>cat /dev/mga_vid</screen> +В него можно писать для изменения яркости: +<screen>echo "brightness=120" > /dev/mga_vid</screen> +</para> +</sect2> + + +<sect2 id="tdfxfb" xreflabel="3Dfx YUV support (tdfxfb)"> +<title>Поддержка 3Dfx YUV</title> +<para> +Этот драйвер использует ядерный драйвер фреймбуфера tdfx для воспроизведения +фильмой с YUV ускорением. Вам потребуется ядро с поддержкой tdfxfb и перекомпиляция с +<screen>./configure --enable-tdfxfb</screen> +</para> +</sect2> + + +<sect2 id="opengl"> +<title>OpenGL вывод</title> + +<para> +<application>MPlayer</application> поддерживает воспроизведение фильмов через OpenGL, +но если ваша платформа/драйвер поддердивает xv, как в случае PC с Linux, +лучше используйте xv, производительность OpenGL значительно ниже. Если у вас +реализация X11 без поддержки xv, OpenGL жизнеспособная замена. +</para> + +<para> +К сожалению, не все драйвера поддерживают эту возможность. Драйвера +Utah-GLX (для XFree86 3.3.6) имеют ее для всех карт. +Подробности установки смотрите <ulink url="http://utah-glx.sf.net"/>. +</para> + +<para> +XFree86(DRI) 4.0.3 или новее поддерживает OpenGL с картами Matrox и Radeon, +4.2.0 или более поздние поддерживают и Rage128. +Инструкции по закачиванию и установке смотрите на <ulink url="http://dri.sf.net"/> . +</para> + +<para> +Подсказка от одного из наших пользователей: видео вывод GL может использоваться +для получения синхронизированного по вертикали TV вывода. Необходимо установить +переменную окружения (как минимум для nVidia): +</para> + +<para> +<command>export $__GL_SYNC_TO_VBLANK=1</command> +</para> + +</sect2> + + +<sect2 id="aalib"> +<title>AAlib - отображение в текстовом режиме</title> + +<para> +AAlib - это библиотека для отображения графики в текстовом режиме, используя мощный +ASCII рендерер[renderer]. Существует <emphasis>множество</emphasis> программ уже +поддерживающих ее, такие как Doom, Quake, и т.д. <application>MPlayer</application> +содержит очень удобный драйвер для нее. Если <filename>./configure</filename> +обнаруживает установленную aalib, будет собран libvo драйвер для aalib. +</para> + +<para> +В AA Window можно использовать некоторые клавиши для изменения настроек рендеринга: +</para> + +<informaltable> +<tgroup cols="2"> +<thead> + <row><entry>Клавиша</entry><entry>Действие</entry></row> +</thead> +<tbody> +<row><entry><keycap>1</keycap></entry><entry> + уменьшить контрастность + </entry></row> +<row><entry><keycap>2</keycap></entry><entry> + увеличить контрастность + </entry></row> +<row><entry><keycap>3</keycap></entry><entry> + уменьшить яркость + </entry></row> +<row><entry><keycap>4</keycap></entry><entry> + увеличить яркость + </entry></row> +<row><entry><keycap>5</keycap></entry><entry> + включение/отключение быстрого рендеринга + </entry></row> +<row><entry><keycap>6</keycap></entry><entry> + установка режима зашумления[dithering] (отсутствие, распределение ошибки[error distribution], Floyd Steinberg) + </entry></row> +<row><entry><keycap>7</keycap></entry><entry> + инвертировать изображение + </entry></row> +<row><entry><keycap>8</keycap></entry><entry> + переключение между управлением aa и <application>MPlayer</application> + </entry></row> +</tbody> +</tgroup> +</informaltable> + +<variablelist> +<title>Могут быть использованы следующие опции командной строки:</title> +<varlistentry> + <term><option>-aaosdcolor=<replaceable>V</replaceable></option></term> + <listitem><para> + Смена цвета OSD + </para></listitem> +</varlistentry> +<varlistentry> + <term><option>-aasubcolor=<replaceable>V</replaceable></option></term> + <listitem><para> + Смена цвета субтитров + </para><para> + где <replaceable>V</replaceable> может быть: + <literal>0</literal> (нормальный), + <literal>1</literal> (темный), + <literal>2</literal> (жирный), + <literal>3</literal> (жирный шрифт), + <literal>4</literal> (реверсный[reverse]), + <literal>5</literal> (специальный). + </para></listitem> +</varlistentry> +</variablelist> + +<variablelist> +<title>AAlib сама предоставляет большое количество опций. Вот некоторые из важных::</title> +<varlistentry> + <term><option>-aadriver</option></term> + <listitem><simpara> + Установить рекомендуемый aa драйвер (X11, curses, Linux). + </simpara></listitem> +</varlistentry> +<varlistentry> + <term><option>-aaextended</option></term> + <listitem><simpara> + Использовать все 256 символов. + </simpara></listitem> +</varlistentry> +<varlistentry> + <term><option>-aaeight</option></term> + <listitem><simpara> + Использовать восьмибитную ASCII. + </simpara></listitem> +</varlistentry> +<varlistentry> + <term><option>-aahelp</option></term> + <listitem><simpara> + Выводит все опции aalib. + </simpara></listitem> +</varlistentry> +</variablelist> + +<note> +<para> +Рандеринг очень сильно загружает CPU, особенно при использовании AA-on-X +(использование aalib под X), и меньше при использовании стандартной не-фреймбуфер +консоли. Используйте SVGATextMode, чтобы настроить большой текстовый режим и +наслаждайтесь! (второй выход карт Hercules рулит[secondary head Hercules cards +rock] :) ), но, IMHO, вы можете использовать опцию <option>-vf 1bpp</option>, чтобы +получить графику на hgafb :) +</para> +</note> + +<para> +Используйте опцию <option>-framedrop</option>, если ваш компьютер недостаточно быстр +для отрисовки всех кадров! +</para> + +<para> +При воспроизведении на терминале, вы получите лучшую скорость и качество при +использовании драйвера Linux, а не curses(<option>-aadriver linux</option>). +Но при этом вы долны иметь право записи в +<filename>/dev/vcsa<replaceable><терминал></replaceable></filename>! +Это не определяется aalib автоматически, но vo_aa вместо нее пытается определить +лучший режим. Смотрите <ulink url="http://aa-project.sf.net/tune"/> для +дальнейших задач тюнинга. +</para> +</sect2> + + +<sect2 id="caca"> +<title><systemitem class="library">libcaca</systemitem> - Цветная ASCII Art библиотека</title> + +<para> +Библиотека <ulink url="http://sam.zoy.org/projects/libcaca/"><systemitem class="library">libcaca</systemitem></ulink> - +это графическая библиотека, выводящая чекст вместо пикселов, так что она может +работать на старых видео картах или текстовых терминалах. Она не такая, как +знаменитая <systemitem class="library">AAlib</systemitem>. +<systemitem class="library">libcaca</systemitem> требует терминал для своей работы, +так что она будет работать на всех unix системах (включая Max OS X), используя +библиотеку <systemitem class="library">slang</systemitem> или +<systemitem class="library">ncurses</systemitem>, под DOS используя библиотеку +<systemitem class="library">conio.h</systemitem>, и под windows, используя либо +<systemitem class="library">slang</systemitem>, либо +<systemitem class="library">ncurses</systemitem> (через Cygwin эмуляцию), либо +<systemitem class="library">conio.h</systemitem>. Если скрипт +<filename>./configure</filename> +определяет <systemitem class="library">libcaca</systemitem>, то caca libvo драйвер +будет собран. +</para> + +<itemizedlist> +<title>Отличия от <systemitem class="library">AAlib</systemitem> следующие:</title> +<listitem><simpara> + 16 доступных цветов для вывода символов (256 цветовых пар) + </simpara></listitem> +<listitem><simpara> + зашумление[dithering] цветного изображения + </simpara></listitem> +</itemizedlist> + +<itemizedlist> +<title>Но <systemitem class="library">libcaca</systemitem> также имеет следующие +ограничения:</title> +<listitem><simpara> + нет поддержки яркости, контрастности, гаммы + </simpara></listitem> +</itemizedlist> + +<para> +ВЫ можете использовать следующие клавиши в окне caca для именения опций +рендеринга: +</para> + +<informaltable> +<tgroup cols="2"> +<thead> + <row><entry>Клавиша</entry><entry>Действие</entry></row> +</thead> +<tbody> +<row><entry><keycap>d</keycap></entry><entry> + Перключение методов зашумления[dithering] <systemitem class="library">libcaca</systemitem>. + </entry></row> +<row><entry><keycap>a</keycap></entry><entry> + Перекллючение сглаживания[antialiasing] <systemitem class="library">libcaca</systemitem>. + </entry></row> +<row><entry><keycap>b</keycap></entry><entry> + Переключение фона <systemitem class="library">libcaca</systemitem>. + </entry></row> +</tbody> +</tgroup> +</informaltable> + +<variablelist> +<title><systemitem class="library">libcaca</systemitem> также анализирует следующие +переменные окружения:</title> +<varlistentry> + <term><option>CACA_DRIVER</option></term> + <listitem><simpara> + Установить рекомендуемый caca драйвер, например ncurses, slang, x11. + </simpara></listitem> +</varlistentry> +<varlistentry> + <term><option>CACA_GEOMETRY (только X11)</option></term> + <listitem><simpara> + Указывает количество строк и стольбцов, например, 128x50. + </simpara></listitem> +</varlistentry> +<varlistentry> + <term><option>CACA_FONT (только X11)</option></term> + <listitem><simpara> + Указывает используемый шрифт, например, fixed, nexus. + </simpara></listitem> +</varlistentry> +</variablelist> + +<para> +Испольуйте опцию <option>-framedrop</option>, если ваш компьютер недостаточно быстр для +рендеринга всех кадров. +</para> + +</sect2> + + +<sect2 id="vesa"> +<title>VESA - вывод в VESA BIOS</title> + +<para> +Этот драйвер был разработатн и представлен как <emphasis role="bold">универсальный +драйвер</emphasis> для любых карт с VESA VBE 2.0 совместимым BIOS. +Другое преимущество этого драйвера заключается в том ,что он пытается принудительно +включить TV вывод. +<citetitle>VESA BIOS EXTENSION (VBE) Версия 3.0 Дата: 16 сентября, 1998</citetitle> +(Страница 70) гласит: +</para> + +<blockquote> +<formalpara><title>Dual-Controller Designs</title> +<para> +VBE 3.0 поддерживает дизайн с двумя контроллерами, предполагая, что поскольку +оба контроллера обычно имеют одного производителя, и управляются единственной +BIOS ROM на той же карте, то возможно скрыть от приложения факт наличия на самом +деле двух контроллеров. Это ограничивает их независимое одновременное использование, +но позволяет приложеням, выпущенным до VBE 3.0 +нормально работать. VBE функция 00h (Вернуть информацию о контроллере) возвращает +комбинированную информацию двух контроллеров, включая объединенный список +доступных режимов. Когда приложение выбирает режим, активируется соответствующий +контроллер. Каждая из остальных VBE функций затем работает с активным +контроллером. +</para> +</formalpara> +</blockquote> + +<para> +Так что у вас ест шанс получить работающий TV выход, используя этот драйвер. +(Предполагается, что TV-выход - отдельный контроллер[standalone head] или +отдельный выход как минимум.) +</para> + +<itemizedlist spacing="compact"> +<title>ПРЕИМУЩЕСТВА</title> +<listitem><simpara> + У вас есть шанс смотреть фильмы, <emphasis role="bold">даже если Linux + не знает</emphasis> ваше видео оборудование. + </simpara></listitem> +<listitem><simpara> + Вам не требуется устанавливать в Linux ничего, относящегося к графике + (вроде X11 (он же XFree86), fbdev и т.п.). Этот драйвер может запускаться + из <emphasis role="bold">текстового режима</emphasis>. + </simpara></listitem> +<listitem><simpara> + У вас есть шанс получить <emphasis role="bold">работающий TV-выход</emphasis>. + (Это известно как минимум для ATI карт). + </simpara></listitem> +<listitem><simpara> + Этот драйвер вызывает обработчик <function>int 10h</function>, так что это + не эмуляция - он вызывает <emphasis role="bold">реальные</emphasis> + вещи <emphasis>реального</emphasis> BIOS в <emphasis>реальном режиме</emphasis> + (на самом деле vm86 режим). + </simpara></listitem> +<listitem><simpara> + С ним вы можете использовать VIDIX, получая ускоренное отображение видео, + <emphasis role="bold">и</emphasis> TV вывод одновременно! + (Рекомендуется для ATI карт.) + </simpara></listitem> +<listitem><simpara> + Если у вас есть VESA VBE 3.0+, и вы где-то указали + <option>monitor-hfreq, monitor-vfreq, monitor-dotclock</option> + (в файле конфигурации или в командной строке), то получите наибольшую возможную + частоту обновления. (Используя General Timing Formula). Чтобы задействовать + эту возможность, вы должны указать <emphasis role="bold">все</emphasis> опции + вашего монитора. + </simpara></listitem> +</itemizedlist> + +<itemizedlist spacing="compact"> +<title>НЕДОСТАТКИ</title> +<listitem><simpara> + Это работает только на <emphasis role="bold">x86 системах</emphasis>. + </simpara></listitem> +<listitem><simpara> + Может использваться только пользователем <systemitem class="username">root</systemitem>. + </simpara></listitem> +<listitem><simpara> + В данный момент доступно только для <emphasis role="bold">Linux</emphasis>. + </simpara></listitem> +</itemizedlist> + +<important> +<para> +Не используйте этот драйвер с <emphasis role="bold">GCC 2.96</emphasis>! +Он не будет работать! +</para> +</important> + +<variablelist> +<title>ОПЦИИ КОМАНДНОЙ СТРОКИ, ДОСТУПНЫЕ ДЛЯ VESA</title> +<varlistentry> + <term><option>-vo vesa:<replaceable>опции</replaceable></option></term> + <listitem><simpara> + данный момент распознаются: <literal>dga</literal> для включения режима dga + и <literal>nodga</literal> для его отключения. В dga режиме вы можете включить + двойную буферизацию опцией <option>-double</option>. Замечание: вы можете + опустить эти параметры для <emphasis role="bold">автоопределения</emphasis> + режтма dga. + </simpara></listitem> +</varlistentry> +</variablelist> + +<itemizedlist spacing="compact"> +<title>ИЗВЕСТНЫЕ ПРОБЛЕМЫ И СПОСОБЫ ИХ РЕШЕНИЯ</title> +<listitem><simpara> + Если вы установили <emphasis role="bold">NLS</emphasis> шрифт на вашем + Linux и запускаете VESA драйвер из текстового режима, то после завершения + <application>MPlayer</application> у вас окажется загруженным + <emphasis role="bold">ROM шрифт</emphasis> вместо национального. + Вы можете загрузить национальный шрифт снова, воспользовавшись утилитой + <command>setsysfont</command> из дистрибутива Mandrake/Mandriva, например. + (<emphasis role="bold">Подсказка</emphasis>: Та же утилита используется для + локализации fbdev). + </simpara></listitem> +<listitem><simpara> + Некоторые <emphasis role="bold">графические драйверы Linux</emphasis> не обновляют + активный <emphasis role="bold">BIOS режим</emphasis> в DOS памяти. + Таким образом, если у вас подобная проблема - всегда используете VESA драйвер + только из <emphasis role="bold">текстового режима</emphasis>. Иначе в любом случае будет + активирован текстовый режим (#03) и вам придется перезагружать компьютер.. + </simpara></listitem> +<listitem><simpara> + Часто после завершения работы VESA драйвера вы получаете + <emphasis role="bold">черный</emphasis> экран. Чтобы вернуться в обычный режим + просто переключитесь на другую консоль + (нажав <keycap>Alt</keycap>+<keycap>F<x></keycap>) затем переключитесь + обратно тем же способом. + </simpara></listitem> +<listitem><simpara> + Для получения <emphasis role="bold">работающего TV выхода</emphasis> необходимо, + чтобы TV разъем был подключен до включения вашего PC, т.к. видео BIOS + инициализирует себя только один раз во время POST процедуры. + </simpara></listitem> +</itemizedlist> +</sect2> + + +<sect2 id="x11"> +<title>X11</title> + +<para> +Избегайте, если возможно. Вывод в X11 (используя расширение разделяемой памяти) - +без какого-либо ускорения.Поддерживается (MMX/3DNow/SSE ускоренное, но все равно +медленное) программное масштабирование, используйте опции <option>-fs -zoom</option>. +Большинство карт имеют поддержку масштабирования, для этого используйте вывод +<option>-vo xv</option>, или <option>-vo xmga</option> для карт Matrox. +</para> + +<para> +Проблема в том, что большинство драйверов карт не поддерживают аппаратное +ускорение на втором мониторе/TV. В этом случае вы увидите окно зеленого/синего +цвета вместо изображения, и этот драйвер будет полезным, +но требуется мощный CPU для программного масштабирования. Не используйте +програмный вывод+масштабирование SDL драйвера, он имеет худшее качество +картинки! +</para> + +<para> +Программное масштабирование очень медленное, лучше попробуйте вместо этого +изменить видео режим. Это очень просто. Смотрите <link linkend="dga-modelines">раздел DGA +режимы</link> и вставьте соотвествующие строки в ваш <filename>XF86Config</filename>. + +<itemizedlist spacing="compact"> +<listitem><simpara> + Если у вас XFree86 4.x.x: используйте <option>-vm</option> опцию. Она + переключится в режим с подходящим разрешением. Если нет: + </simpara></listitem> +<listitem><simpara> + C XFree86 3.x.x: циклически переключайтесь между разными разрешениями с помощью + клавиш + <keycap>Ctrl</keycap>+<keycap>Alt</keycap>+<keycap>плюч</keycap> + and + <keycap>Ctrl</keycap>+<keycap>Alt</keycap>+<keycap>минус</keycap>. + </simpara></listitem> +</itemizedlist> +</para> + +<para> +Если не находите вставленные видео режимамы, просмотрите вывод Xfree86. +Некоторые драйверы не могут использовать низкие частоты пикселизации (количество +отрисовываемых пикселей в секунду), необходимые для видео режимов с низким разрешением. +</para> +</sect2> + + +<sect2 id="vidix"> +<title>VIDIX</title> + +<formalpara> +<title>ПРЕАМБУЛА</title> +<para> +<acronym>VIDIX</acronym> - это аббревиатура для <emphasis role="bold">VID</emphasis>eo +<emphasis role="bold">I</emphasis>nterface for *ni<emphasis role="bold">X</emphasis> +(Вмдео интерфейс для Unix). +VIDIX разработан и введен как интерфейс для быстрых драйверов пространства +пользователя[user-space], обеспечивающих такую же производительность, как mga_vid +для карт Matrox. Они к тому же хорошо переносимы. +</para> +</formalpara> +<para> +Этот интерфейс был разработан, чтобы уместить существующие интерфейсы ускорения видео +(известные как mga_vid, rage128_vid, radeon_vid, pm3_vid) в единую схему. +Он предоставляет высокоуровневый интерфейс к чипам, известным как +BES (BackEnd scalers) или OV (Video Overlays). Он не предоставляет низкоуровневого интерфейса +к вещам, известным как графические серверы (Я не хочу соревноваться с командой X11 +в переключении режимов.) Т.е. основная цель интерфейса - ускорить до максимума +скорость воспроизведения видео. +</para> + +<itemizedlist spacing="compact"> +<title>ИСПОЛЬЗОВАНИЕ</title> +<listitem><simpara> + Вы можете использовать отдельный видеодрайвер: <option>-vo xvidix</option>. + Этот драйвер был разработан как X11 фронтенд к VIDIX технологии. Он + требует X сервер и может работать только под ним. Имейте ввиду, что + поскольку этот драйвер напрямую обращается к оборудованию в обход драйвера X, + то могут быть повреждены растровые изображения, кешированные в памяти + видеокарты. + Вы можете предотвратить это, ограничив размер видеопамяти, используемой X, + XF86Config опцией "VideoRam" в разделе устройств. Вам следует установить этот + параметр в количество установленной видеопамяти минус 4Мб. Если у вас меньше + 8Мб видеопамяти, вместо этого можно использовать опцию "XaaNoPixmapCache" в + разделе экранов. + </simpara></listitem> +<listitem><simpara> + Существует консольный VIDIX драйвер: <option>-vo cvidix</option>. + Для большинства карт требуется работающий и инициализированный фреймбуфер + (в противном случае просто испортите изображение на экране), + и вы будете иметь тот же эффект, что и с <option>-vo mga</option> или + <option>-vo fbdev</option>. Карты nVidia, тем не менее, способны выводить + полностью графическое видео в настоящей текстовой консоли. Смотрите раздел + <link linkend="vidix-nvidia">nvidia_vid</link> для более подробной информации. + </simpara></listitem> +<listitem><simpara> + Вы можете использовать подустройство VIDIX, примененное к различным + драйверам видео вывода, например: <option>-vo vesa:vidix</option> + (<emphasis role="bold">только Linux</emphasis>) и + <option>-vo fbdev:vidix</option>. + </simpara></listitem> +</itemizedlist> + +<para> +Это действительно неважно, какой драйвер вывода видео используется с +<emphasis role="bold">VIDIX</emphasis>. +</para> + +<itemizedlist spacing="compact"> +<title>ТРЕБОВАНИЯ</title> +<listitem><simpara> + Видеокарта должна находиться в графическом режиме (кроме карт nVidia с + драйвером <option>-vo cvidix</option>). + </simpara></listitem> +<listitem><simpara> + Драйвер вывода видео <application>MPlayer</application> должен знать + текущий видеорежим и быть способным сообщить VIDIX некоторые видео характеристики сервера. + </simpara></listitem> +</itemizedlist> + +<formalpara> +<title>СПОСОБЫ ИСПОЛЬЗОВАНИЯ</title> +<para> +Когда VIDIX используется в качестве <emphasis role="bold">подустройства</emphasis> (<option>-vo +vesa:vidix</option>), настройка видеорежима производится драйвером вывода видео +(короче говоря <emphasis role="bold">vo_server</emphasis>). Следовательно, вы можете +передать в командную строку <application>MPlayer</application> те же ключи, что и для +vo_server. Дополнительно он понимает ключ <option>-double</option> +как глобально видимый параметр. (Я рекомендую использовать этот ключ с VIDIX как минимум +для карт ATI). <option>-vo xvidix</option> дополнительно понимает следующие опции: +<option>-fs -zoom -x -y -double</option>. +</para> +</formalpara> +<para> +Вы можете напрямую указать VIDIX драйвер третьим параметром к командной строке +: + +<screen>mplayer -vo xvidix:mga_vid.so -fs -zoom -double <replaceable>file.avi</replaceable></screen> +или +<screen>mplayer -vo vesa:vidix:radeon_vid.so -fs -zoom -double -bpp 32 <replaceable>file.avi</replaceable></screen> + +Но это опасно, и вам не следует этого делать. В этом случае принудительно +запускается указанный драйвер и результат может быть непредсказуемым +(он может <emphasis role="bold">подвесить</emphasis> ваш компьютер). +Вам следует это делать ТОЛЬКО если вы абсолютно уверены, что он работает и +<application>MPlayer</application> не использует его автоматически. +Пожалуйста, сообщите об этом разработчикам. Правильный путь - использование +VIDIX без аргументов для задействования автоопределения драйвера. +</para> + +<para> +Поскольку VIDIX требует прямой доступ к оборудованию, вы можете либо +запускать его от имени root, либо установить SUID бит на исполняемый файл +<application>MPlayer</application> ((<emphasis role="bold">Внимание: +Это большой риск безопастности</emphasis>). +Как вариант, вы можете использовать специальный модуль ядра, как этот: +</para> + +<procedure> +<step><para> +<!-- FIXME correct translation of 'development version' --> + Скачайте <ulink url="http://www.arava.co.il/matan/svgalib/">разрабатываемую версию</ulink> + svgalib (например 1.9.17), <emphasis role="bold">ИЛИ</emphasis> + версию, созданную Alex специально для использования с <application>MPlayer</application> + (она не требует наличия исходников svgalib для компиляции) + <ulink url="http://www.mplayerhq.hu/MPlayer/contrib/svgalib/svgalib_helper-1.9.17-mplayer.tar.bz2">отсюда</ulink>. + </para></step> +<step><para> + Скомпилируйте модуль в каталоге <filename class="directory">svgalib_helper</filename> + (он может быть найден внутри каталога + <filename class="directory">svgalib-1.9.17/kernel/</filename>, если вы скачали исходники + с сайта svgalib) и выполните insmod для него. + </para></step> +<step><para> + Для создания необходимых устройств в каталоге <filename class="directory">/dev</filename>, + выполните от имени root команду <screen>make device</screen> в + <filename class="directory">svgalib_helper</filename>. + </para></step> +<step><para> + Переместите каталог <filename class="directory">svgalib_helper</filename> в + <filename class="directory">mplayer/main/libdha/svgalib_helper</filename>. + </para></step> +<step><para> + Требуется, если вы скачали исходники с сайта svgalib: Удалите комментарий перед строкой + CFLAGS, содержаший строку "svgalib_helper" в файле + <filename class="directory">libdha/Makefile</filename>. + </para></step> +<step><para> + Перекомпилируйте и установите libdha. + </para></step> +</procedure> + +<sect3 id="vidix-ati"> +<title>ATI карты</title> +<para> +В даный момент для большинства карт ATI, начиная от Mach64 и заканчивая последними +Radeon, имеется встроенная поддержка. +</para> + +<para> +Существует два скомпилрованных бинарных файла: <filename>radeon_vid</filename> для +Radeon и <filename>rage128_vid</filename> для карт Rage 128. Вы можете принудительно +использовать один из них или позволить VIDIX автоматически опробовать все доступные +драйверы. +</para> +</sect3> + +<sect3 id="vidix-mga"> +<title>Matrox карты</title> +<para> +Сообщалось, что работают Matrox G200, G400, G450 и G550. +</para> + +<para> +<!-- FIXME what is 'video equalizers ' ? --> +Драйвер поддерживает видео эквалайзеры и должем быть столь же быстр, как и +<link linkend="mga_vid">Matrox фреймбуфер</link> +</para> +</sect3> + +<sect3 id="vidix-trident"> +<title>Trident карты</title> +<para> +Существует драйвер для чипсета Trident Cyberblade/i1, который можно найти +на материнских платах VIA Epia. +</para> + +<para> +Драйвер написан и поддерживается +<ulink url="http://www.blackfiveservices.co.uk/EPIAVidix.shtml">Alastair M. Robinson</ulink> +</para> +</sect3> + +<sect3 id="vidix-3dlabs"> +<title>3DLabs карты</title> +<para> +Хотя драйвер для чипов 3DLabs GLINT R3 и Permedia3 существует, никто его не +тестировал, так что отчеты приветствуются. +</para> +</sect3> + +<sect3 id="vidix-nvidia"> +<title>nVidia карты</title> + +<para> + Уникальная особенность драйвера nvidia_vid заключается в способности отображать + видео в <emphasis role="bold">простой, чисто текстовой консоли</emphasis> - без + какого бы то ни было фреймбуфера или магии с X. Для этой цели мы будем использовать + драйвер вывода видео <option>cvidix</option>, как показывет следующий пример: + <screen>mplayer -vo cvidix <replaceable>example.avi</replaceable></screen> +</para> + +</sect3> + +<sect3 id="vidix-sis"> +<title>SiS карты</title> +<para> +Это, как и nvidia_vid, весьма экспериментальный код. +</para> + +<para> +Он тестровался на SiS 650/651/740 (наиболее распространный чипсет, используемый в +SiS версиях байрбонов[barebones] "Shuttle XPC") +</para> + +<para> +Отчеты ожидаются! +</para> +</sect3> +</sect2> + +<sect2 id="directfb"> +<title>DirectFB</title> +<blockquote><para> +"DirectFB - это графическая библиотека, которая была разработана с учетом +особенностей встроенных систем. Она предоставляет максимум производительности +при минимуме используемых ресурсов и накладных расходов." - +процитировано с <ulink url="http://www.directfb.org"/> +</para></blockquote> + +<para>Я исключу описание возможностей DirectFB из этого раздела.</para> + +<para> +Несмотря на то, что <application>MPlayer</application> не поддерживается в DirectFB +как "video провайдер", этот драйвер вывода видео задействует воспроизведение +видео через DirectFB. Он будет - конечно - работать с ускорением, на моей Matrox G400 +скорость DirectFB такая же как у XVideo. +</para> + +<para> +Всегда старайтесь использовать последнюю версию DirectFB. Вы можете использовать опции +DirectFB в командной строке, при помощи <option>-dfbopts</option>. Выбор слоя +производится методом подустройства, например.: <option>-vo directfb:2</option> +(по-умолчанию -1: автоопределение) +</para> +</sect2> + +<sect2 id="dfbmga"> +<title>DirectFB/Matrox (dfbmga)</title> +<para> +Прочтите <link linkend="directfb">основной DirectFB</link> раздел для общей информации. +</para> + +<para> +Этот драйвер вывода видео задействует CRTC2 (на втором мониторе[second head]) на картах +Matrox G400/G450/G550, отображающий видео +<emphasis role="bold">независимо</emphasis> от первого монитора[first head]. +</para> + +<para> +Ville Syrjala имеет +<ulink url="http://www.sci.fi/~syrjala/directfb/Matrox_TV-out_README.txt">README</ulink> +и +<ulink url="http://www.sci.fi/~syrjala/directfb/matrox-tv-out-howto">HOWTO</ulink> +на своей странице, описывающие как задейстовать вывод DirectFB TV на картах Matrox. +</para> + +<note><para> +Первая версия DirectFB, на которой удалось это сделать, была +0.9.17 (имеющая ошибки, требует <systemitem>surfacemanager</systemitem> +патч с указанного выше URL). Портирование кода CRTC2 в +<link linkend="mga_vid">mga_vid</link> планируется уже несколько лет, +<ulink url="../../tech/patches.txt">патчи</ulink> приветствуются. +</para></note> +</sect2> +</sect1> + +<sect1 id="mpeg_decoders"> +<title>MPEG декодеры</title> + +<sect2 id="dvb"> +<title>DVB ввод и вывод</title> +<para> +<application>MPlayer</application> поддерживает карты с чипсетом Siemens DVB и +таких производителей, как Siemens, Technotrend, Galaxis или Hauppauge. +Последние DVB драйверы доступны с <ulink url="http://www.linuxtv.org">сайта Linux TV</ulink>. +Если вы собираетесь делать программное транскодирование, у вас должен быть как минимум 1ГГц CPU. +</para> + +<para> +Скрипт configure должен определить вашу DVB карту. Если нет, принудительно укажите +определение с помошью +</para> + +<para><screen>./configure --enable-dvb</screen></para> + +<para>Если заголовочные файлы ost находятся не в стандартных каталогах, укажите путь с</para> + +<para><screen>./configure --with-extraincdir=<replaceable>каталог исходников DVB</replaceable>/ost/include +</screen></para> + +<para>Затем компилируйте и устанавливайте как обычно.</para> + +<formalpara> +<title>ИСПОЛЬЗОВАНИЕ</title> +<para> +Аппаратное декодирование (воспроизведение стандартных MPEG-1/2 файлов) может быть выполнено +следующей командой: +</para> +</formalpara> + +<para> +<screen>mplayer -ao mpegpes -vo mpegpes <replaceable>file.mpg|vob</replaceable></screen> +</para> + +<para> +Программное декодирование или транскодирование различных форматов в MPEG-1 производится, +используя команду: +</para> +<para><screen> +mplayer -ao mpegpes -vo mpegpes <replaceable>yourfile.ext</replaceable> +mplayer -ao mpegpes -vo mpegpes -vf expand <replaceable>yourfile.ext</replaceable> +</screen></para> + +<para> +Имейте в виду, что DVB карты поддерживают высоту изображения только 288 и 576 для PAL и +240 и 480 для NTSC. Для других значений высоты вы <emphasis role="bold">должны</emphasis> +отмасштабировать изображение, добавив <option>scale=ширина:высота</option> к опции +<option>-vf</option> с желаемыми значениями ширины и высоты. +DVB карты допускают различные значения ширины: 720, 704, 640, 512, 480, 352 и т.д. и +производят аппаратное масштабирование по горизонтали, так что в большинстве случаев +масштабировать по горизонтали не нужно. Для 512x384 (пропорции 4:3) MPEG-4 (DivX) +попробуйте: +</para> + +<para><screen>mplayer -ao mpegpes -vo mpegpes -vf scale=512:576</screen></para> + +<para>Если у вас есть широкоформатный фильм и вы не хотите растягивать его на +полную высоту, используйте плагин <option>expand=w:h</option> для добавления черных +полос. Чтобы посмотреть 640x384 MPEG-4 (DivX), попробуйте: +</para> + +<para> +<screen>mplayer -ao mpegpes -vo mpegpes -vf expand=640:576 <replaceable>file.avi</replaceable> +</screen> +</para> + +<para> +Если ваш CPU слишком слаб для полноразмерного 720x576 MPEG-4 (DivX), попробуйте уменьшить +размер: +</para> + +<para> +<screen>mplayer -ao mpegpes -vo mpegpes -vf scale=352:576 <replaceable>file.avi</replaceable> +</screen> +</para> + +<para>Если скорость не увеличилась, попробуйте уменьшить размер по вертикали тоже:</para> + +<para> +<screen>mplayer -ao mpegpes -vo mpegpes -vf scale=352:288 <replaceable>file.avi</replaceable> +</screen> +</para> + +<para> +Для OSD и субтитров используйте возможности OSD плагина expand. Так, вместо +<option>expand=w:h</option> или <option>expand=w:h:x:y</option>, используйте +<option>expand=w:h:x:y:1</option> (5-й параметр <option>:1</option> в конце для +включения OSD рендеринга). Вы можете слегка подвинуть изображение вверх, чтобы получить +большую черную область для субтитров. Вы также можете переместить субтитры вверх, если +они выходят за пределы TV экрана, используйте для этого <option>-subpos <0-100></option> +(<option>-subpos 80</option> - хороший выбор). +</para> + +<para> +Чтобы воспроизвести не-25fps фильмы на PAL TV или на машине со слабым CPU, добавьте опцию + +<option>-framedrop</option>. +</para> + +<para> +Для сохранения пропорций MPEG-4 (DivX) файлов и получения оптимальных параметров +масштабирования (аппаратное горизонтальное и программное вертикальное масштабирование с +сохранением пропорций), используйте плагин dvbscale: +</para> + +<para><screen> +for a 4:3 TV: -vf dvbscale,scale=-1:0,expand=-1:576:-1:-1:1 +for a 16:9 TV: -vf dvbscale=1024,scale=-1:0,expand=-1:576:-1:-1:1 +</screen></para> + +<formalpara> +<title>Цифровое TV (DVB драйвер ввода )</title> +<para>Вы можете использовать DVB карту для просмотра Цифрового TV.</para> +</formalpara> + +<para> + Вы должны иметь установленные программы <command>scan</command> и + <command>szap/tzap/czap/azap</command>; все они входят в пакет драйверов. +</para> + +<para> + Проверьте, что ваши драйверы правильно работают с такими программами, как + <ulink url="http://sf.net/projects/dvbtools/"><command>dvbstream</command></ulink> + (это основа DVB драйвера ввода). +</para> + +<para> + Теперь вам следует создать файл <filename>~/.mplayer/channels.conf</filename>, + с понятным <command>szap/tzap/czap/azap</command> синтаксисом, или + позволить <command>scan</command> сделать это для вас. +</para> + +<para> + Если у вас несколько разнотипных карт (например, для спутникового TV, наземного , + кабельного и ATSC), можете сохранить файлы как + <filename>~/.mplayer/channels.conf.sat</filename>, + <filename>~/.mplayer/channels.conf.ter</filename>, + <filename>~/.mplayer/channels.conf.cbl</filename>, + и <filename>~/.mplayer/channels.conf.atsc</filename>, + соответственно, с тем, чтобы можно было явно указать <application>MPlayer</application> + какой файл использовать вместо стандартного <filename>~/.mplayer/channels.conf</filename>, + и какую карту с ним использовать. +</para> + +<para> + Убедитесь, что в <filename>channels.conf</filename> находятся каналы + <!-- FIXME Free to Air --> + <emphasis>только</emphasis> для обычного телевидения[Free to Air], иначе + переход <application>MPlayer</application> к следующему видимому + может занять длительное время, если в файле окажется много подряд идущих + зашифрованных. +</para> + +<para> + В полях аудио и видео вы можете использовать расширенный синтаксис: + <option>...:pid[+pid]:...</option> (в каждом максимум 6 pid'ов); + в этом случае <application>MPlayer</application> включит в поток все указанные + pid плюс pid 0 (содержащий PAT). Поощряется указание (если вы его знаете) + PMD pid в каждой строке для соответствующего канала. + Другие возможные применения: телетекст pid, второая аудио дорожка, и т.д. +</para> + +<para> + Если <application>MPlayer</application> часто жалуется на + <screen>Too many video/audio packets in the buffer</screen> или + если вы заметили растущую рассинхронизацию между звуком и видео + попробуйте воспользоваться libavformat MPEG-TS декодером, добавив + <option>-demuxer lavf -lavfdopts probesize=128</option> в + командную строку. +</para> + +<para> + Для показа первого из доступных каналов, запустите +</para> + +<screen> + mplayer dvb:// +</screen> + +<para> + Если вы хотите посмотреть определенный канал, например R1, запустите +</para> + +<screen> + mplayer dvb://R1 +</screen> + +<para> + Если у вас больше одной карты, также надо указать номер той, с которой доступен канал: +</para> + +<screen> + mplayer dvb://2@R1 +</screen> + +<para> + Для смены канала, нажимайте клавиши <keycap>h</keycap> (следующий) и + <keycap>k</keycap> (предыдущий), или используйте + <link linkend="osdmenu">OSD меню</link>. +</para> + +<para> + Если ваш <filename>~/.mplayer/menu.conf</filename> содержит запись + <literal><dvbsel></literal>, как в файле с примерами + <filename>etc/dvb-menu.conf</filename> (можете использовать его чтобы + перезаписать <filename>~/.mplayer/menu.conf</filename>), главное меню + будет отображать подменю, позволяющее вам выбрать один из присутствующих + в <filename>channels.conf</filename> каналов, возможно, с предшествующим + ему подменю с DVB выбором карт, доступных <application>MPlayer</application>. +</para> + +<para> + Если хотите записать какую-то программу на диск, используйте +</para> + +<screen> + mplayer -dumpfile r1.ts -dumpstream dvb://R1 +</screen> + +<para> + Если хотите вместо этого записать ее в другом формате (перекодировать), следует + использовать такую команду: +</para> + +<screen> + mencoder -o r1.avi -ovc xvid -xvidencopts bitrate=800 -oac mp3lame -lameopts cbr:br=128 -pp=ci dvb://R1 +</screen> + +<para> + Полный список опций для DVB драйвера ввода можно найти на странице руководства man. +</para> + +<formalpara> +<title>БУДУЩЕЕ</title> +<para> +Если у вас есть вопросы, или вы хотите получать сообщения о новых возможностях и +принять участие в дискуссиях на эту тему, подпишитесь на список рассылки +<ulink url="http://lists.mplayerhq.hu/mailman/listinfo/mplayer-dvb">MPlayer-DVB</ulink>. +Помните, что язык рассылки - Английский. +</para> +</formalpara> + +<para> +В будущем вы можете рассчитывать на возможность отображения OSD и субтитров, +используя встроенные OSD возможности DVB карт, также как и более плавное +воспроизведение не-25fps фильмов и транскодирование в реальном времени между +MPEG-2 и MPEG-4 (частичная декомпрессия). +</para> +</sect2> + +<sect2 id="dxr2"> +<title>DXR2</title> +<para><application>MPlayer</application> поддерживает аппаратное ускорение воспроизведения +с картами Creative DXR2. +</para> +<para> +Прежде всего вам потребуется правильно установленные DXR2 драйверы. Их и руководство по +установке можно найти на сайте <ulink url="http://dxr2.sf.net/">Ресурсного Центра DXR2</ulink>. +</para> + +<variablelist> +<title>ИСПОЛЬЗОВАНИЕ</title> +<varlistentry> +<term><option>-vo dxr2</option></term> +<listitem><para>Включить TV выход.</para></listitem> +</varlistentry> + +<varlistentry> +<term><option>-vo dxr2:x11</option> or <option>-vo dxr2:xv</option></term> +<listitem><para>Включить вывод через оверлей в X11.</para></listitem> +</varlistentry> + +<varlistentry> +<term><option>-dxr2 <option1:option2:...></option></term> +<listitem><para>Эта опция используется для управления драйвером DXR2.</para></listitem> +</varlistentry> +</variablelist> + +<para> +Чипсет оверлея, использовавшийся на DXR2 довольно плохого качества, но +с настройками по-умолчанию будет работать у всех. OSD может работать +с оверлеем (не на TV), отрисовывая себя в ключевом цвете[colorkey]. +С настройками ключевого цвета[colorkey] по-умолчанию, вы можете получить +разные результаты, скорее всего увидите ключевой цвет[colorkey] вокруг +символов или другие забавные эффекты. Но при правильных настройках, +можно получить вполне приемлемый результат. +</para> + +<para>Смотрите страницу man руководства для списка доступных опций.</para> +</sect2> + +<sect2 id="dxr3"> +<title>DXR3/Hollywood+</title> +<para> +<application>MPlayer</application> поддерживает аппаратно ускоренное воспроизведение +картами Creative DXR3 и Sigma Designs Hollywood Plus. Обе эти карты используют +MPEG декодер на чипе em8300 от Sigma Designs +</para> + +<para> +Прежде всего вам потребуются правильно установленные драйвера DXR3/H+, версии +0.12.0 или выше. Драйверы и инструкции по установке могут быть найдены на +сайте <ulink url="http://dxr3.sf.net/">DXR3 & Hollywood Plus для Linux</ulink> +<filename>configure</filename> должен автоматически определить вашу карту, +компиляция должна пройти без проблем. +</para> + +<!-- FIXME: find a more clear presentation --> +<variablelist> +<title>ИСПОЛЬЗОВАНИЕ</title> +<varlistentry> +<term><option>-vo dxr3:prebuf:sync:norm=x:<replaceable>device</replaceable></option></term> +<listitem><para> +Опция <option>overlay</option> активирует оверлей вместо TVOut. Для корректной работы +она требует его правильной настройки. Самый простой способ правильно его +настроить - сначала запустить autocal, затем запустить mplayer с драйвером +dxr3 и выключенным оверлеем, потом запустить dxr3view. В dxr3view вы можете +менять настройки оверлея и выдеть результат в реальном времени, может быть, +в будущем эта возможность будет поддерждиваться в <application>MPlayer</application> +GUI. После того как овердей правильно настроен, надобность в dxr3view отпадает. +Опция <option>prebuf</option> включает пребуферинг. Пребуферинг - это возможность +чипа em8300, позволяющая ему хранить более одного кадра видео в каждый момент времени. +Это значит, что при включенном пребуферинге <application>MPlayer</application> +будет пытаться всегда держать буфер заполненным данными. Если у вас медленная машина, +то <application>MPlayer</application> будет забирать практически 100% CPU. +Это особенно часто случается, если вы воспроизводите чистые MPEG потоки +(DVD, SVCD и т.д.), т.к., поскольку <application>MPlayer</application> не должен +перекодировать их в MPEG, то он заполняет буфер очень быстро. +С пребуферингом воспроизведение видео <emphasis role="bold">значительно</emphasis> +меньше зависит от остальных программ, прибирающих к рукам CPU, он не будет +терять кадры, кроме случая, когда приложения захватит CPU на довольно длительное +время. При запуске без пребуферинга, em8300 намного более чувствителен к +загрузке CPU, так что настоятельно рекомендуется включить <option>-framedrop</option> +опцию <application>MPlayer</application> для избежания потери синхронизации. +<option>sync</option> включит алгоритм синхронизации. Пока что это еще +экспериментальная возможность. С включенной sync возможностью будут постоянно +проверяться встроенные часы em8300, и если начинается отклонение от +часов <application>MPlayer</application> чип будет сброшен, что приведет к +пропуску всех запаздывающих кадров. +</para><para> +<option>norm=x</option> установит TV стандарт DXR3 карты без необходимости +использования внешних утилит вроде em8300setup. Допустимые стандарты: 5 = NTSC, 4 = PAL-60, +3 = PAL. Специальные стандарты 2 (автонастрока, используя PAL/PAL-60) и 1 (автонастройка +используя PAL/NTSC) решают какой стандарт использовать на основе частоты кадров. +because they decide which norm to use by looking at the frame +rate of the movie. norm = 0 (по-умолчанию) не изменяет текущий стандарт. +</para><para> +<option><replaceable>device</replaceable></option> = номер устройства, если их у вас несколько +em8300 карт. +Любые из этих опций могут быть опущены. +</para><para> +<option>:prebuf:sync</option>, похоже, отлично работает при воспроизведении фильмов MPEG-4 (DivX). +Пользователи сообщали о проблемах при использования prebuf опции при воспроизведении +файлов MPEG-1/2. Вы можете попробовать запустить программу сначала вообще без указания опций, +если же имеете проблемы с синхронизацией или с DVD субтитрами, попытайтесь с <option>:sync</option>. +</para></listitem> +</varlistentry> + +<varlistentry> +<term><option>-ao oss:/dev/em8300_ma-<replaceable>X</replaceable></option></term> +<listitem><para> +Для вывода звука, где <replaceable>X</replaceable> - номер устройства (0, если карта одна). +</para></listitem> +</varlistentry> + +<varlistentry> +<term><option>-af resample=<replaceable>xxxxx</replaceable></option></term> +<listitem><para> +em8300 не может воспроизводить частоты дискретизации ниже 44100Hz. Если частота +ниже 44100Hz, выберите либо 44100Hz, либо 48000Hz в зависимости от +того, какая частота ближайшая. Т.е. если фильм использует 22050Hz укажите 44100Hz, т.к. +44100 / 2 = 22050, если 24000Hz, используйте 48000Hz, т.к. 48000 / 2 = 24000 и т.д. +Это не работает с цифровым выводом звука (<option>-ac hwac3</option>). +</para></listitem> +</varlistentry> + +<varlistentry> +<term><option>-vf lavc/fame</option></term> +<listitem><para> +Для просмотра не-MPEG контента на em8300 (напрмер MPEG-4 (DivX) или RealVideo) +вы должны указать MPEG-1 видеоплагин, такой как +<systemitem class="library">libavcodec</systemitem> (lavc) или +<systemitem class="library">libfame</systemitem> (fame). На данный момент +lavc одновременно и более быстрый и дающий лучшее качество изображения, предлагается использовать +его, кроме случаев, когда с ним у вас проблемы. Смотрите страницу руководства man для +дальнейшей информации о <option>-vf lavc/fame</option>. +Использование lavc настоятельно рекомендуется. В данный момент неизвестно способа установить +значение fps для em8300, что означает фиксированную величину, равную 30000/1001 fps, +поэтому крайне рекомендуется использовать +<option>-vf lavc=<replaceable>quality</replaceable>:25</option>, особенно, если +используете пребуферинг. Почему 25, а не 30000/1001? Ну, причина в том, что при +использовании 30000/1001 изображение начинает слегка дрожать. Причина нам неизвестна. +Если вы ставите это значение где-то между 25 и 27 картинка стабилизируется. +Пока что мы можем только принять это как факт +</para></listitem> +</varlistentry> + +<varlistentry> +<term><option>-vf expand=-1:-1:-1:-1:1</option></term> +<listitem><para> +Хотя драйвер DXR3 может помещать некоторый OSD в MPEG-1/2/4 видео, он +имеет намного более плохое качество, чем традиционный OSD +<application>MPlayer</application>, и имеет несколько проблем при обновлении к +тому же. Команда, указанная выше, сначала отконвертирует входное видео в +MPEG-4 (это обязательно, извините), затем применит плагин expand, который не будет +ничего расширять (-1: по-умоляанию), но наложит нормальное OSD на картинку +(это все, что делает "1" в конце строки). +</para></listitem> +</varlistentry> + +<varlistentry> +<term><option>-ac hwac3</option></term> +<listitem><para> +em8300 поддерживает воспроизведение звука AC3 (окружающий звук) через +цифровой аудио выход карты.Смотрите опцию <option>-ao oss</option> выше, +она должна использоваться для указания вывода через DXR3 вместо звуковой карты. +</para></listitem> +</varlistentry> +</variablelist> +</sect2> + +</sect1> + +<sect1 id="other"> +<title>Другое оборужование вывода видео</title> + +<sect2 id="zr"> +<title>Zr</title> + +<para> +Это видеодрайвер (<option>-vo zr</option>) для некоторого количества MJPEG карт +захвата/воспроизведения (тестировался на DC10+ и Buz, но также должен работать для +LML33, DC10). Драйвер работает, кодируя кадр в JPEG, и отправляя его карте. +Для кодирования JPEG используется и требуется библиотека +<systemitem class="library">libavcodec</systemitem>. +Со специальным режимом <emphasis>cinerama</emphasis>, +вы можете смотреть фильмы на действительно широком экране, который можно получить, +иемя два проектора и две MJPEG карты. В зависимости от разрешения +и настроек качества, этот драйвер может потребовать существенной мощности CPU, +не забывайте указывать <option>-framedrop</option>, если маша машина +слишком медленная. Замечание: Мой AMD K6-2 350МГц является (с +<option>-framedrop</option>) вполне подходящим для просмотра материала размера VCD, +и фильмов с уменьшенным разрешением. +</para> + +<para> +Этот драйвер общается с драйвером ядра, доступном на +<ulink url="http://mjpeg.sf.net"/>, так что сначала должен корректно заработать второй. +Наличие MJPEG карты автоматически определяется скриптом +<filename>configure</filename>, если этого не происходит, включите принудитольное определение +при помощи +<screen>./configure --enable-zr</screen> +</para> +<para> +Вывод может управляться несколькими опциями, подробные описания можно найти +на странице рководства man, короткий список опций получите, выполнив +<screen>mplayer -zrhelp</screen> +</para> + +<para> +Такие вещи как масштабирование и OSD не осуществляются этим +драйвером, но могут быть сделаны, используя видеоплагины. Например, предположим, что +вы имеете фильм с разрешением 512x272 и хотите просмотреть эго в полноэкранном +режиме на DC10+. Есть три главные возможности: вы можете отмасштабировать фильм +до ширины 768, 384 или 192. По причинам производительности и качества я бы +выбрал масштабирование до 384x204, используя быстрый билинейный программный +модуль. Командная строка: +<screen> +mplayer -vo zr -sws 0 -vf scale=384:204 <replaceable>movie.avi</replaceable> +</screen> +</para> + +<para> +Обрезка может быть выполнена плагином <option>crop</option> и самим драйвером. +Предполагая, что фильм слишком широк для отображения на Buz, и вы хотите +использовать <option>-zrcrop</option> для уменьшения ширины, то необходимо применить +следующую команду: +<screen> +mplayer -vo zr -zrcrop 720x320+80+0 <replaceable>benhur.avi</replaceable> +</screen> +</para> + +<para> +Если вы хотите использовать плагин <option>crop</option>, выполните +<screen> +mplayer -vo zr -vf crop=720:320:80:0 <replaceable>benhur.avi</replaceable> +</screen> +</para> + +<para> +Дополнительное указание <option>-zrcrop</option> активизирует +режим <emphasis>cinerama</emphasis>, т.е. вы можете распределить фильм на несколько +TV или проекторов для создания большего экрана. Предположим у вас два проектора. +Левый подключен к Buz на <filename>/dev/video1</filename>,а правый подключен +к DC10+ на <filename>/dev/video0</filename>. Фильм имеет разрешение 704x288. +Также предположим, что вы хотите выводить на правый проектор в черно-белом цвете, а +левый должен иметь JPEG кадры качества 10. в этом случае вы должны указать: +<screen> +mplayer -vo zr -zrdev /dev/video0 -zrcrop 352x288+352+0 -zrxdoff 0 -zrbw \ + -zrcrop 352x288+0+0 -zrdev /dev/video1 -zrquality 10 \ + <replaceable>movie.avi</replaceable> +</screen> +</para> + +<para> +Можно видеть, что опции, встречающиеся до второго <option>-zrcrop</option>, применяются +только к DC10+, а опции после второго применяются только к Buz. +Максимальное количество карт для режима <emphasis>cinerama</emphasis> равно +четырем, так что вы можете построить 2x2 видеостену. +</para> + +<para> +Наконец важное замечание: Не запускайте и не останавливайте XawTV на устройстве +воспроизведения, это может подвесить ваш компьютер. Тем не менее, можно прекрасно +<emphasis role="bold">СНАЧАЛА</emphasis> запустить XawTV, <emphasis role="bold">ЗАТЕМ</emphasis> +запустить <application>MPlayer</application>, подождать, пока <application>MPlayer</application> +завершит работу и <emphasis role="bold">ЗАТЕМ</emphasis> остановить XawTV. +</para> +</sect2> + +<sect2 id="blinkenlights"> +<title>Blinkenlights[Мерцающие огни?]</title> +<para> +Этот драйвер способен воспроизводить, используя Blinkenlights UDP протокол. Если не +знаете, что такое <ulink url="http://www.blinkenlights.de/">Blinkenlights</ulink> +или его преемник <ulink url="http://www.blinkenlights.de/arcade/">Arcade</ulink>, +выясните это. Хотя это, возможно, реже всего используемый драйвер, без сомнения, +это самая клевая вещь, предлагаемая <application>MPlayer</application>. Просто +посмотрите некоторые из +<ulink url="http://www.blinkenlights.de/video.en.html">видеороликов документации Blinkenlights</ulink>. +На видео Arcade вы можете видеть драйвер видеовывода Blinkenlights в действии в 00:07:50. +</para> +</sect2> +</sect1> + +<sect1 id="tvout"> +<title>Поддержка TV-выхода</title> + +<sect2 id="tvout-mga-g400"> +<title>Matrox G400 карты</title> + +<para> +Под Linux есть два способа получить работающий TV выход на G400: +</para> + +<important> +<para> +инструкции по TV-выходу для Matrox G450/G550, смотрите в следующем разделе! +</para> +</important> + +<variablelist> +<varlistentry> + <term>XFree86</term> + <listitem><para> + Используя драйвер и HAL модуль, доступный с + <ulink url="http://www.matrox.com">сайта Matrox</ulink>. Это даст вам X на TV. + </para><para> + <emphasis role="bold">Этот метод на дает ускоренного воспроизведения</emphasis> + как под Windows! Второй выход имеет только YUV фреймбуфер, <emphasis>BES</emphasis> + (Back End Scaler, модуль YUV масштабирования на картах G200/G400/G450/G550) на + нем не работает! Драйвер windows как-то это обходит, возможно используя + 3D движок для масштабирования, а YUV фреймбуфер - для вывода отмасштабированного + изображения. Если вы действительно хотите использовать X, используйте опции + <option>-vo x11 -fs -zoom</option>, но это будет <emphasis role="bold">МЕДЛЕННО</emphasis>, + и будет иметь включенную защиту от копирования <emphasis role="bold">Macrovision</emphasis> + (можно "обойти" Macrovision используя этот + <ulink url="http://avifile.sf.net/mgamacro.pl">скрипт на perl</ulink>). + </para></listitem> +</varlistentry> +<varlistentry> + <term>Framebuffer</term> + <listitem><para> + Используя <emphasis role="bold">модули matroxfb</emphasis> в 2.4 ядрах. + 2.2 ядра не имеют в этих модулях возможности работы с TVout, так что для нашего + дела непригодны. Вы должны включить ВСЕ matroxfb-относящиеся возможности во время компиляции + (кроме MultiHead), и скомпилировать их в <emphasis role="bold">модули</emphasis>! + Вам также необходима задействованная I2C. + </para> + + <procedure> + <step><para> + Войдите в <filename class="directory">TVout</filename> и наберите + <command>./compile.sh</command>. Установите + <filename>TVout/matroxset/matroxset</filename> + куда-нидудь в ваши <envar>PATH</envar>. + </para></step> + <step><para> + Если вы еще не имеете установленного <command>fbset</command>, поместите + <filename>TVout/fbset/fbset</filename> + куда-нибуть в ваши <envar>PATH</envar>. + </para></step> + <step><para> + Еслы <command>con2fb</command> у вас еще не установлен, поместите + <filename>TVout/con2fb/con2fb</filename> + куда-нибуть в ваши <envar>PATH</envar>. + </para></step> + <step><para> + Затем войдите в каталог <filename class="directory">TVout/</filename> + в исходниках <application>MPlayer</application>, и запустите + <filename>./modules</filename> от имени root. Ваша консоль из текстового режима + переключится в режим фреймбуфера (обратно не получится!). + </para></step> + <step><para> + Затем, ОТРЕДАКТИРУЙТЕ и запустите скрипт <filename>./matroxtv</filename>. + Он покажет вам очень простое меню. Нажмите <keycap>2</keycap> и + <keycap>Enter</keycap>. Теперь вы должны иметь одинаковую картинку на + мониторе и TV. Если картинка на TV (PAL по-умолчанию) имеет некоторые + странные полосы, значит скрипт не смог корректно установить разрешение + (на 640x512 по-умолчанию). Попробуйте другие разрешения из меню + и/или поэкспериментируйте с fbset. + </para></step> + <step><para> + Йоу. Следующая задача - убрать курсор с tty1 (или где он есть), и выключить + гашение экрана. Запустите следующие команды: + + <screen> +echo -e '\033[?25l' +setterm -blank 0<!-- + --></screen> + or + <screen> +setterm -cursor off +setterm -blank 0<!-- + --></screen> + Возможно вы захотите поместить вышеуказанное в скрипт, добавив очистку экрана. + Чтобы вернуть курсор назад + <screen>echo -e '\033[?25h'</screen> или + <screen>setterm -cursor on</screen> + </para></step> + <step><para> + Готово. Запускайте воспроизведение + <screen> +mplayer -vo mga -fs -screenw 640 -screenh 512 <replaceable>filename</replaceable><!-- + --></screen> + + (Если используете X, переключитесь теперь в matroxfb при помощи, например + <keycap>Ctrl</keycap>+<keycap>Alt</keycap>+<keycap>F1</keycap>.) + Замените <literal>640</literal> и <literal>512</literal>, если установили другое + разрешение... + </para></step> + <step><para> + <emphasis role="bold">Наслаждайтесь супер-быстрым, супер-навороченным выводом Matrox TV + (лучше чем Xv)!</emphasis> + </para></step> + </procedure> + </listitem> +</varlistentry> +</variablelist> + +<formalpara> +<title>Создание кабеля Matrox TV-out</title> +<para> +Никто не дает никаких гарантий и не несет никакой ответственности +за возможное нанесение ущерба, вызванное выполнением инструкций, указанныех в этой +документации. +</para> +</formalpara> +<!-- FIXME check for correct translation of cable pins assignments --> +<formalpara> +<title>Кабель для G400</title> +<para> +Четвертый контакт CRTC2 коннектора - это композитный видео сигнал. Земля - шестой, +седьмой и восьмой контакты. (информация получена от BalАzs RАcz) +</para> +</formalpara> + +<formalpara> +<title>Кабель для G450</title> +<para> +Первый контакт CRTC2 коннектора - это композитный видео сигнал. Земля - пятый, +шестой, седьмой и пятнадцатый (5, 6, 7, 15) контакты. +(информация получена от BalАzs Kerekes) +</para> +</formalpara> +</sect2> + +<sect2 id="tv-out_matrox_g450"> +<title>Matrox G450/G550 карты</title> +<para> +Поддержка TV выхода для этих карт была добавлена недавно, и пока отсутствует в основном +ядре. В данный момент <emphasis role="bold">mga_vid</emphasis> не может быть использован +AFAIK, поскольку дрйвер G450/G550 работает только в одной конфигурации: +первый чип CRTC (с наибольшим количеством возможностей) на первом экране +(мониторе), и второй чип CRTC (без <emphasis role="bold">BES</emphasis> - для объяснения, +что такое BES, смотрите раздел о G400 выше) на TV. Так что в настоящий момент вы +можете использовать только драйвер вывода <emphasis>fbdev</emphasis> программы +<application>MPlayer</application>. +</para> + +<para> +Первый CRTC не может быть перенаправлен на второй выход на текущий момент. +Автор драйвера ядра matroxfb - Petr Vandrovec - возможно добавит поддержку для +этого, отображая вывод первого CRTC одновременно на два выхода, как в данный момент и +рекомендуется для G400, смотрите раздел выше. +</para> + +<para> +Необходимый патч для ядра и детальное HOWTO можно скачать с +<ulink url="http://www.bglug.ca/matrox_tvout/"/> +</para> +</sect2> + + +<sect2 id="tvout-ati"> +<title>ATI карты</title> + +<formalpara> +<title>ПРЕАМБУЛА</title> +<para> +Сейчас ATI не хочет поддерживать ни один из ее TV-out чипов под Linux, по причине +технологии лицензированной ими у Macrovision. +</para> +</formalpara> + +<itemizedlist> +<title>СТАТУС ПОДДЕРЖКИ TV-OUT ДЛЯ КАРТ ATI ПОД LINUX</title> +<listitem><simpara> + <emphasis role="bold">ATI Mach64</emphasis>: + поддерживается <ulink url="http://gatos.sf.net">GATOS</ulink>. + </simpara></listitem> +<listitem><simpara> + <emphasis role="bold">ASIC Radeon VIVO</emphasis>: + поддерживается <ulink url="http://gatos.sf.net">GATOS</ulink>. + </simpara></listitem> +<listitem><simpara> + <emphasis role="bold">Radeon</emphasis> и <emphasis role="bold">Rage128</emphasis>: + поддерживается <application>MPlayer</application>! + Смотрите разделы <link linkend="vesa">VESA драйвер</link> и + <link linkend="vidix">VIDIX</link>. + </simpara></listitem> +<listitem><simpara> + <emphasis role="bold">Rage Mobility P/M, Radeon, Rage 128, Mobility M3/M4</emphasis>: + поддерживается <ulink url="http://www.stud.uni-hamburg.de/users/lennart/projects/atitvout/">atitvout</ulink>. + </simpara></listitem> +</itemizedlist> + +<para> +Для других карт просто используйте <link linkend="vesa">VESA</link> драйвер, без +VIDIX. Конечно, требуется мощный CPU. +</para> + +<para> +Единственная вещь, которую надо сделать - <emphasis role="bold">Иметь TV коннектор +подключенным до загрузки вашего PC</emphasis>, поскольку видео BIOS инициализирует +себя только один раз во время POST процедуры. +</para> +</sect2> + + +<sect2 id="tvout-nvidia"> +<title>nVidia</title> +<para> +Во-первых, вы ДОЛЖНЫ скачать закрытые драйверы с <ulink url="http://nvidia.com"/>. +Я не буду описывать процесс установки и настройки, поскольку это выходит за рамки данной +документации. +</para> + +<para> +После того, как XFree86, XVideo, и 3D ускорение заработает правильно, отредактируйте раздел +Device для вашей карты в файле <filename>XF86Config</filename>, в соответствии с +указанным ниже примером (адаптируйте к вашей карте/TV): + +<programlisting> +Section "Device" + Identifier "GeForce" + VendorName "ASUS" + BoardName "nVidia GeForce2/MX 400" + Driver "nvidia" + #Option "NvAGP" "1" + Option "NoLogo" + Option "CursorShadow" "on" + + Option "TwinView" + Option "TwinViewOrientation" "Clone" + Option "MetaModes" "1024x768,640x480" + Option "ConnectedMonitor" "CRT, TV" + Option "TVStandard" "PAL-B" + Option "TVOutFormat" "Composite" +EndSection +</programlisting> +</para> + +<para> +Конечно же важная часть - это TwinView. +</para> +</sect2> + +<sect2 id="tvout-neomagic"> +<title>NeoMagic</title> +<para> +Чип NeoMagic найден на различных ноутбуках, некоторые из которых оснащаются +простым аналоговым TV кодером, некоторые имеют более продвинутый. +<itemizedlist> +<listitem><para> + <emphasis role="bold">Чип аналогового кодера</emphasis>: + Сообщалось, что надежный TV выход можно получить, используя + <option>-vo fbdev</option> или <option>-vo fbdev2</option>. + Вам требуется иметь vesafb скомпилированный в вашем ядре и передать + следующие параметры в командной строке ядра: + <option>append="video=vesafb:ywrap,mtrr" vga=791</option>. + Вам следует запустить <application>X</application>, затем переключитесь в + консольный режим при помощи, например, <keycap>CTRL</keycap>+<keycap>ALT</keycap>+<keycap>F1</keycap>. + Если вы не запустите <application>X</application> до запуска + <application>MPlayer</application> в консоли, видео станет медленным и + дрожащим[choppy] (объяснения приветствуются). + Залогиньтесь в консоли и запустите следующую команду: + + <screen>clear; mplayer -vo fbdev -zoom -cache 8192 dvd://</screen> + + Теперь вы должны увидеть фильм, запущенный в консольном режиме, заполняющий + примерно половину LCD экрана вашего ноутбука. + Для переключения в TV нажмите <keycap>Fn</keycap>+<keycap>F5</keycap> три раза. + Тестировался на Tecra 8000, 2.6.15 ядре с vesafb, ALSA v1.0.10. + </para></listitem> +<listitem><simpara> + <emphasis role="bold">Chrontel 70xx чип кодирования</emphasis>: + Найден на IBM Thinkpad 390E и, возможно, других Thinkpad или ноутбуках. + </simpara><simpara> + Необходимо использовать <option>-vo vesa:neotv_pal</option> для PAL или + <option>-vo vesa:neotv_ntsc</option> для NTSC. + Это даст TV выход, работающий в следующих 16 bpp и 8 bpp режимах: + </simpara> + <itemizedlist> + <listitem><simpara>NTSC 320x240, 640x480 and maybe 800x600 too.</simpara></listitem> + <listitem><simpara>PAL 320x240, 400x300, 640x480, 800x600.</simpara></listitem> + </itemizedlist> + <simpara>Режим 512x384 не поддерживается в BIOS. Вы должны масштабировать + изображение в другое разрешение для задействования TV выхода. Если вы видите + изображение на экране в разрешении 640x480 или 800x600, но не 320x240 или другом + меньшем разрешении, вам требуется заменить две таблицы в <filename>vbelib.c</filename>. + Смотрите функцию vbeSetTV для подробностей. Пожалуйста, свяжитесь автором в этом + случае. + </simpara> + <simpara> + Известные проблемы: только VESA, не реализованы различные настройки, такие как яркость, + контрастность, уровень черного, фильтр дрожания[flickfilter]. + </simpara> +</listitem> +</itemizedlist> +</para> +</sect2> +</sect1> + +</chapter>