whitespace cosmetics: Remove all trailing whitespace.
[mplayer/glamo.git] / DOCS / xml / ru / video.xml
blob8f94a461b5a7af3ff1dc2852b3f17967b6203c66
1 <?xml version="1.0" encoding="utf-8"?>
2 <!-- synced with r26073 -->
3 <chapter id="video">
4 <title>Устройства вывода видео</title>
6 <sect1 id="mtrr">
7 <title>Настройка MTRR</title>
9 <para>
10 ОЧЕНЬ важно проверить, правильно ли установлены MTRR регистры,
11 поскольку они могут дать большой прирост производительности.
12 </para>
14 <para>
15 Выполните <command>cat /proc/mtrr</command>:
16 <screen>
17 <prompt>--($:~)--</prompt> cat /proc/mtrr
18 reg00: base=0xe4000000 (3648MB), size=  16MB: write-combining, count=9
19 reg01: base=0xd8000000 (3456MB), size= 128MB: write-combining, count=1<!--
20 --></screen>
21 </para>
23 <para>
24 Здесь все верно, показана моя Matrox G400 с 16Мб памяти. Я выполнил это из-под
25 XFree 4.x.x, который автоматически устанавливает регистры MTRR.
26 </para>
28 <para>
29 Если ничего не сработало, вам придется сделать это вручную. Во-первых,
30 вы должны определить базовый  адрес. Существует три способа выяснить его:
32 <orderedlist>
33 <listitem><para>
34   из сообщений запуска X11, например:
35   <screen>
36 (--) SVGA: PCI: Matrox MGA G400 AGP rev 4, Memory @ 0xd8000000, 0xd4000000
37 (--) SVGA: Linear framebuffer at 0xD8000000<!--
38   --></screen>
39 </para></listitem>
40 <listitem><para>
41   из <filename>/proc/pci</filename> (используйте команду <command>lspci -v</command>):
42   <screen>
43 01:00.0 VGA compatible controller: Matrox Graphics, Inc.: Unknown device 0525
44 Memory at d8000000 (32-bit, prefetchable)<!--
45   --></screen>
46 </para></listitem>
47 <listitem><para>
48   из сообщений драйвера ядра mga_vid (используйте <command>dmesg</command>):
49   <screen>mga_mem_base = d8000000</screen>
50 </para></listitem>
51 </orderedlist>
52 </para>
54 <para>
55 Теперь давайте найдем объем памяти. Это очень просто, просто преобразуйте
56 размер видео памяти в шестнадцатеричный формат, или используйте таблицу:
57 <informaltable frame="none">
58 <tgroup cols="2">
59 <tbody>
60   <row><entry>1 MB</entry><entry>0x100000</entry></row>
61   <row><entry>2 MB</entry><entry>0x200000</entry></row>
62   <row><entry>4 MB</entry><entry>0x400000</entry></row>
63   <row><entry>8 MB</entry><entry>0x800000</entry></row>
64  <row><entry>16 MB</entry><entry>0x1000000</entry></row>
65  <row><entry>32 MB</entry><entry>0x2000000</entry></row>
66 </tbody>
67 </tgroup>
68 </informaltable>
69 </para>
71 <para>
72 Вы знаете базовый адрес и размер памяти, так давайте настроим регистры MTRR!
73 Например, для вышеуказанной карты Matrox (<literal>base=0xd8000000</literal>)
74 с 32Мб памяти (<literal>size=0x2000000</literal>) просто выполните:
75 <screen>
76 echo "base=0xd8000000 size=0x2000000 type=write-combining" &gt; /proc/mtrr
77 </screen>
78 </para>
80 <para>
81 Не все CPU имеют MTRR. Например, старый K6-2 (около  266MHz,
82 степпинг 0) не имеет MTRR, но у степпинга 12 они уже есть
83 (запустите <command>cat /proc/cpuinfo</command> чтобы это проверить).
84 </para>
85 </sect1>
88 <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
91 <sect1 id="xv">
92 <title>Xv</title>
94 <para>
95 Под XFree86 4.0.2 или новее, вы можете использовать функции работы с YUV[YUV routines]
96 вашей видеокарты, используя расширение XVideo, то, которое используется при указании опциии
97 <option>-vo xv</option>.
98 <!-- FIXME
99 Also, this driver supports adjusting
100 brightness/contrast/hue/etc (unless you use the old, slow DirectShow DivX
101 codec, which supports it everywhere), see the man page.
103 К тому же этот драйвер поддерживает управление
104 яркостью/контрастностью/цветностью/и т.д. (кроме случая использования старого ,медленного
105 DivX кодека DirectShow, который везде это поддерживает), смотрите страницу man.
107 </para>
109 <para>
110 Чтобы  заставить его работать, убедитесь, что выполняется следующее:
112 <orderedlist>
113 <listitem><para>
114   Требуется использовать XFree86 4.0.2 или новее (предыдущие версии не меют XVideo)
115 </para></listitem>
116 <listitem><para>
117   Ваша карта действительно поддерживает аппаратное ускорение (современные - да)
118 </para></listitem>
119 <listitem><para>
120   X загружают расширение XVideo, это похоже на:
121   <programlisting>(II) Loading extension XVideo</programlisting>
122   в <filename>/var/log/XFree86.0.log</filename>
123   <note><para>
124    Это всего лишь загружается расширение XVideo. При нормальной установке оно грузится
125    всегда, это не означает, что загружена <emphasis role="bold">аппаратная</emphasis>
126    поддержка XVideo.
127   </para></note>
128 </para></listitem>
129 <listitem><para>
130   Ваша карта имеет поддержку Xv для Linux. Чтобы это проверить, запустите
131   <command>xvinfo</command>, являющуюся частью дистрибутива XFree86. Она должна
132   выдать на экран длинный текст, похожий на этот:
133   <screen>
134 X-Video Extension version 2.2
135 screen #0
136   Adaptor #0: "Savage Streams Engine"
137     number of ports: 1
138     port base: 43
139     operations supported: PutImage
140     supported visuals:
141       depth 16, visualID 0x22
142       depth 16, visualID 0x23
143     number of attributes: 5
144 (...)
145     Number of image formats: 7
146       id: 0x32595559 (YUY2)
147         guid: 59555932-0000-0010-8000-00aa00389b71
148         bits per pixel: 16
149         number of planes: 1
150         type: YUV (packed)
151       id: 0x32315659 (YV12)
152         guid: 59563132-0000-0010-8000-00aa00389b71
153         bits per pixel: 12
154         number of planes: 3
155         type: YUV (planar)
156 (...и т.д....)<!--
157 --></screen>
158   Карта должна поддерживать YUY2 пакованные и YUV12 планарные[planar] форматы
159   пикселов, чтобы быть полезной в <application>MPlayer</application>.
160 </para></listitem>
161 <listitem><para>
162   И, наконец, проверьте, что <application>MPlayer</application> собран с
163   поддержкой 'xv'. Выполните <command>mplayer -vo help | grep xv </command>.
164   Если поддержка 'xv' включена, то увидите похожую строку:
165   <screen>  xv      X11/Xv</screen>
166 </para></listitem>
167 </orderedlist>
168 </para>
171 <sect2 id="tdfx">
172 <title>3dfx карты</title>
174 <para>
175 Хорошо известно, что старые 3dfx драйвера имеют проблемы с ускорением XVideo, они не
176 поддерживают ни YUY2 ни YV12, ни т.п. Проверьте, что у вас XFree86 версии
177 4.2.0 или новее, он может работать с YV12 и YUY2, в то время как предыдущие версии,
178 включая 4.1.0, <emphasis role="bold">с YV12 приводят к краху</emphasis>.
180 Если вы столкнулись со странными эффектами при использовании <option>-vo xv</option>,
181 попробуйте SDL (он тоже имеет поддержку XVideo), и посмотрите поможет ли это. Обратитесь к
182 разделу <link linkend="sdl">SDL</link> за подробностями.
183 </para>
185 <para>
186 <emphasis role="bold">ИЛИ</emphasis>, попробуйте НОВЫЙ
187 <option>-vo tdfxfb</option> драйвер! Смотрите раздел <link linkend="tdfxfb">tdfxfb</link>.
188 </para>
189 </sect2>
192 <sect2 id="s3">
193 <title>S3 карты</title>
195 <para>
196 S3 Savage3D, должны прекрасно работать, но для Savage4 используйте XFree86 версии 4.0.3 или
197 выше (в случае проблем с изображением попробуйте 16bpp). По поводу S3 Virge:
198 она поддерживает xv, но карта сама по себе слишком медленная, так что лучше будет ее
199 продать.
200 </para>
202 <para>
203 Существует родной драйвер фреймбуфера для карт S3 Virge, аналогичный
204 tdfxfb. Настройте ваш фреймбуфер (например, укажите ядру
205 "<option>vga=792 video=vesa:mtrr</option>") и воспользуйтесь
206 <option>-vo s3fb</option> (<option>-vf yuy2</option> и <option>-dr</option>
207 тоже помогут).
208 </para>
210 <note><para>
211 Пока не ясно в каких моделях Savage отсутствует поддержка YV12, и преобразование
212 осуществляется драйвером (медленно). Если вы грешите на свою карту, возьмите
213 свежий драйвер иди вежливо спросите в списке рассылки MPlayer-users
214 о драйвере с поддержкой MMX/3DNow!.
215 </para></note>
216 </sect2>
219 <sect2 id="nvidia">
220 <title>nVidia карты</title>
222 <para>
223 nVidia под Linux - не всегда хороший выбор ... Открытые драйвера XFree86
224 поддерживают большинство этих карт, но в некоторых случаях придется
225 использовать закрытый бинарный драйвер от nVidia, доступный на
226 <ulink url="http://www.nvidia.com/object/linux.html">сайте nVidia</ulink>.
227 Этот драйвер также всегда необходим для задействования 3D ускорения.
228 </para>
230 <para>
232 Карты Riva128 не имеют поддержки XVideo с драйвером nVidia от XFree86 :(
233 Подайте жалобу nVidia.
234 </para>
236 <para>
237 Тем не менее, <application>MPlayer</application> имеет
238 <link linkend="vidix">VIDIX</link> драйвер для большинства карт nVidia. Сейчас он
239 в стадии беты и имеет некоторые недостатки. За подробостями обращайтесь
240 к разделу <link linkend="vidix-nvidia">nVidia VIDIX</link>.
241 </para>
242 </sect2>
245 <sect2 id="ati">
246 <title>ATI карты</title>
248 <para>
249 <ulink url="http://gatos.sf.net">Драйвер GATOS</ulink>
250 (который стоит использовать, если у вас не Rage128 или Radeon) по-умолчанию имеет включенную
251 опцию VSYNC. Это значит, что скорость декодирования (!) синхронизирована с частотой обновления
252 монитора. Если воспроизведение кажется медленным, попробуйте как-нибудь отключить VSYNC или
253 установите частоту обновления в n*(fps[кадров/с] фильма) Гц.
254 </para>
256 <para>
257 Radeon VE - если нужен X, используйте XFree86 4.2.0 или новее.
258 Нет поддержки TV-выхода. Конечно, с <application>MPlayer</application> вы можете успешно
259 получить <emphasis role="bold">ускоренное</emphasis> отображение, с или без
260 <emphasis role="bold">TV-выхода</emphasis>, без каких-либо библиотек X.
261 Читайте раздел <link linkend="vidix">VIDIX</link>.
262 </para>
263 </sect2>
266 <sect2 id="neomagic">
267 <title>NeoMagic карты</title>
269 <para>
270 Эти карты можно найти во многих ноутбуках. Вы должны использовать XFree86 4.3.0 или
271 более новый, или использовать
272 <ulink url="http://www.mplayerhq.hu/MPlayer/contrib/NeoMagic-driver/">Xv-совместимые драйвера</ulink>.
273 от Stefan Seyfried. Просто выберите подходящий для вашей версии XFree86.
274 </para>
276 <para>
277 XFree86 4.3.0 включает поддержку Xv, недавно Bohdan Horst отослал небольшой
278 <ulink url="http://www.mplayerhq.hu/MPlayer/contrib/NeoMagic-driver/neo_driver.patch">патч</ulink>
279 для исходников XFree86, ускоряющий операции с фреймбуфером (и XVideo) в четыре раза.
280 Патч был включен в XFree86 CVS и должен быть в следующем релизе после 4.3.0.
281 </para>
283 <para>
284 Чтобы сделать возможным воспроизведение фильмов DVD разрешения поправьте ваш XF86Config как
285 указано здесь:
286 <programlisting>
287 Section "Device"
288     [...]
289     Driver "neomagic"
290     <emphasis>Option "OverlayMem" "829440"</emphasis>
291     [...]
292 EndSection<!--
293 --></programlisting>
294 </para>
295 </sect2>
298 <sect2 id="trident">
299 <title>Trident карты</title>
301 <para>
302 Если хотите использовать Xv с картой Trident, учитывая, что они не работают с
303 4.1.0, установите XFree 4.2.0.
304 4.2.0 добавляет поддержку полноэкранного Xv с картой Cyberblade XP.
305 </para>
307 <para>
308 Другой вариант: <application>MPlayer</application> имеет
309 <link linkend="vidix">VIDIX</link> драйвер для карт Cyberblade/i1.
310 </para>
311 </sect2>
314 <sect2 id="kyro">
315 <title>Kyro/PowerVR карты</title>
317 <para>
318 Если хотите использовать Xv с картами на базе Kyro (например,
319 Hercules Prophet 4000XT), следует скачать драйверы с
320 <ulink url="http://www.powervr.com/">сайта PowerVR</ulink>.
321 </para>
322 </sect2>
325 <sect2 id="intel">
326 <title>Карты Intel</title>
328 <para>
329 Эти карты можно обнаружить во многих ноутбуках. Рекомендуется Xorg последней версии.
330 </para>
332 <para>
333 Для воспроизведения контента размера DVD (и более) поправьте
334 ваш XF86Config/xorg.conf как указано здесь:
335 <programlisting>
336 Section "Device"
337     [...]
338     Driver "intel"
339     <emphasis>Option "LinearAlloc" "6144"</emphasis>
340     [...]
341 EndSection
342 </programlisting>
343 Отсутствие этой опции скорее всего приведет к появлению ошибки
344 <screen>X11 error: BadAlloc (insufficient resources for operation)</screen>
345 при попытке использовать <option>-vo xv</option>.
346 </para>
347 </sect2>
348 </sect1>
350 <!-- ********** -->
352 <sect1 id="dga">
353 <title>DGA</title>
355 <formalpara>
356 <title>ПРЕАМБУЛА</title>
357 <para>
358 Этот документ пытается сказать несколько слов о том, что такое DGA в целом и
359 что можт сделать DGA драйвер  для <application>MPlayer</application>
360 (а что нет).
361 </para>
362 </formalpara>
364 <formalpara>
365 <title>ЧТО ТАКОЕ DGA</title>
366 <para>
367 <acronym>DGA</acronym> это сокращение от <emphasis>Direct Graphics
368 Access[Прямой Доступ к Графике]</emphasis>  и означает обход
369 программами X сервера и прямое изменение ими памяти фреймбуфера.
370 Говоря техническим языком, это происходит при помощи отображения[mapping]
371 памяти фреймбуфера в адресное пространство вашего процесса. Это позволяется
372 ядром, только если у вас есть привилегии суперпользователя. Вы можете
373 получить их либо войдя в систему под именем
374 <systemitem class="username">root</systemitem>, либо установив SUID бит на
375 исполняемый файл <application>MPlayer</application> (<emphasis role="bold">не
376 рекомендуется</emphasis>).
377 </para>
378 </formalpara>
379 <para>
380 Есть две версии DGA: DGA1 используется XFree 3.x.x и DGA2, появившийся в XFree 4.0.1.
381 </para>
383 <para>
384 DGA1 предоставляет только прямой доступ в фреймбуферу, как описано выше.
385 Для переключения видеорежимов придется обратиться в расширению XVidMode.
386 </para>
388 <para>
389 DGA2 объединяет возможности расширения XVidMode и, к тому же, позволяет изменять
390 глубину цвета отображения. Таким образом, вы можете,работая, в основном,
391 в X с 32-х битной глубиной цвета, переключиться на глубину 15 бит и наоборот.
392 </para>
394 <para>
395 Однако DGA имеет некоторые недостатки. Похоже, оно каким-то образом зависит от
396 используемого графического чипа и реализации видеодрайвера сервера X,
397 управляющего этим чипом. Так что он работает не на всех системах.
398 </para>
400 <formalpara>
401 <title>УСТАНОВКА ПОДДЕРЖКИ DGA ДЛЯ MPLAYER</title>
403 <para>
404 Во-первых, убедитесь, что X загружает расширение DGA, смотрите в
405 <filename>/var/log/XFree86.0.log</filename>:
407 <programlisting>(II) Loading extension XFree86-DGA</programlisting>
409 Смотрите, <emphasis role="bold">крайне рекомендуется</emphasis> XFree86 4.0.x или старше!
410 DGA драйвер программы <application>MPlayer</application> определяется автоматически скриптом
411 <filename>./configure</filename>, или можете принудительно указать его использование
412 опцией <option>--enable-dga</option>.
413 </para>
414 </formalpara>
416 <para>
417 Если драйвер не смог переключиться на меньшее разрешение, поэкспериментируйте с
418 опциями <option>-vm</option> (только для X 3.3.x), <option>-fs</option>,
419 <option>-bpp</option>, <option>-zoom</option> чтобы найти видеорежим
420 в который поместиться фильм. Конвертера Пока что нет :(
421 </para>
423 <para>
424 Получите права <systemitem class="username">root</systemitem>. DGA требует
425 права root для прямой записи в видеопамять. Если хотите запускать от имени обычного
426 пользователя, установите бит SUID на <application>MPlayer</application>:
428 <screen>
429 chown root <replaceable>/usr/local/bin/mplayer</replaceable>
430 chmod 750 <replaceable>/usr/local/bin/mplayer</replaceable>
431 chmod +s <replaceable>/usr/local/bin/mplayer</replaceable>
432 </screen>
434 Теперь это работает и под обычным пользователем.
435 </para>
437 <caution>
438 <title>Риск безопасности</title>
439 <para>
440 В этом заключается <emphasis role="bold">большой</emphasis> риск безопасности!
441 <emphasis role="bold">Никогда</emphasis> не делайте этого на сервере или комппьютере,
442 к которому имеют доступ другие люди, т.к. они могут получить права root через
443 <application>MPlayer</application> с битом SUID.
444 </para>
445 </caution>
447 <para>
448 Теперь используйте опцию <option>-vo dga</option>, и вперед! (мы надеемся :)
449 Можете попробовать, работает ли у вас опция <option>-vo sdl:driver=dga</option>!
450 Это намного быстрее!
451 </para>
454 <formalpara id="dga-modelines">
455 <title>ПЕРЕКЛЮЧЕНИЕ РЕЖИМОВ</title>
457 <para>
458 DGA драйвер позволяет переключать режимы (менять разрешение) выходного сигнала.
459 Это позволяет избежать (медленного) программного масштабирования и в то же
460 время предоставить полноэкранное изображение. В идеале следует переключаться в
461 режим с таким же (необязательно с сохранением пропорций) как у видеоданных разрешением,
462 но X сервер позволяет переключаться в режимы, предопределенные в
463 <filename>/etc/X11/XF86Config</filename>
464 (<filename>/etc/X11/XF86Config-4</filename> для XFree 4.X.X соответственно).
465 Они определяются так называемыми моделайнами[modelines] и зависят
466 возможностей вашей видеокарты. X сервер читает этот файл при старте и
467 отключает режимы, недопустимые для вашего оборудования. Вы можете определить
468 какие режимы остались, посмотрев лог файл X11. Он может быть найден в:
469 <filename>/var/log/XFree86.0.log</filename>.
470 </para>
471 </formalpara>
473 <para>
474 Вот значения, про которые известно, что они работают с чипом Riva128 при
475 использовании X драйвера nv.o.
476 </para>
479 <para><programlisting>
480 Section "Modes"
481   Identifier "Modes[0]"
482   Modeline "800x600"  40     800 840 968 1056  600 601 605 628
483   Modeline "712x600"  35.0   712 740 850 900   400 410 412 425
484   Modeline "640x480"  25.175 640 664 760 800   480 491 493 525
485   Modeline "400x300"  20     400 416 480 528   300 301 303 314 Doublescan
486   Modeline "352x288"  25.10  352 368 416 432   288 296 290 310
487   Modeline "352x240"  15.750 352 368 416 432   240 244 246 262 Doublescan
488   Modeline "320x240"  12.588 320 336 384 400   240 245 246 262 Doublescan
489 EndSection
490 </programlisting></para>
493 <formalpara>
494 <title>DGA &amp; MPLAYER</title>
495 <para>
496 DGA используется программой <application>MPlayer</application> двумя способами:
497 можно указать SDL использовать его (<option>-vo sdl:driver=dga</option>) и
498 с помощью DGA драйвера (<option>-vo dga</option>). Все сказанное выше верно для обоих;
499 в следующих разделах будет рассказано как работает DGA драйвер для
500 <application>MPlayer</application>.
501 </para>
502 </formalpara>
505 <formalpara>
506 <title>ВОЗМОЖНОСТИ</title>
508 <para>
509 DGA запускается указанием <option>-vo dga</option> в командной строке. По-умолчанию,
510 он пытается переключить режим с ближайшим к оригинальному видео разрешением.
511 Он преднамеренно игнорирует опции  <option>-vm</option> и <option>-fs</option>
512 (переключение видеорежимов и полноэкранный режим) - он всегда старается
513 занять как можно большую площадь экрана переключением видеорежима,
514 избегая таким образом использования дополнительных тактов CPU для
515 масштабирования изображения. Если выбранный режим вам не нравится, можете
516 принудительно указать использовать разрешение ближайшее к указанному вами опциями
517 <option>-x</option> и <option>-y</option>. При указании опции
518 <option>-v</option>, DGA драйвер выведет, кроме множества других вещей, список
519 всех поддерживаемых режимов, указанных в <filename>XF86Config</filename>.
520 Имея DGA2 вы также можете указать использование определенной глубины цвета
521 при помощи опции <option>-bpp</option>. Допустимыми значениями являются 15, 16, 24 и 32.
522 Зависит от оборудования, какие значения поддерживаются  аппаратно, а для каких необходимо
523 производить (возможно медленное) преобразование.
524 </para>
525 </formalpara>
526 <para>
527 <!--FIXME offscreen memory -->
528 Если вам повезло иметь достаточно свободной памяти[offscreen memory], чтобы поместить
529 туда изображение целиком, DGA драйвер будет использовать двойную буферизацию,
530 что приведет к более плавному воспроизведению фильма. Он сообщит вам включена ли
531 двойная буферизация или нет.
532 </para>
534 <para>
535 Двойная буферизация означает, что каждый следующий кадр вашего фильма рисуется
536 в некоторую память[offscreen memory], пока отображается текущий кадр.
537 Когда следующий кадр готов, графическому чипу сообщается его расположение
538 в памяти, и чип просто выбирает оттуда данные для отображения.
539 В это время новыми видео данными заполняется другой участок буфера.
540 </para>
542 <para>
543 Двойная буферизация может быть задействована опцией
544 <option>-double</option> и отключена при помощи
545 <option>-nodouble</option>. В данный момент двойной буфер по-умолчанию отключен.
546 При использовании DGA драйвера, экранное отображение (OSD) работает только
547 с двойной буферизацией. Однако, включение двойной буферизации  может привести
548 к существенному снижению скорости (на моем K6-II+ 525 оно использует дополнительные
549 20% времени CPU!) в зависимости от реализации DGA для вашего оборудования.
550 </para>
553 <formalpara>
554 <title>ПРОБЛЕМЫ БЫСТРОДЕЙСТВИЯ</title>
556 <para>
557 <!-- FIXME как-то криво звучит -->
558 Проще говоря, DGA доступ к фреймбуферу должен быть настолько быстр, насколько
559 быстр используемый X11 драйвер c дополнительной выгодой[benefit] получения
560 полноэкранного изображения. Процентные значения скорости, выводимые
561 <application>MPlayer</application>, должны интерпретироваться с некоторой
562 осторожностью, например, с драйвером X11 они не включают время, используемое
563 сервером X11 непосредственно для прорисовки. Подключите терминал к
564 последовательному порту и запустите <command>top</command>, чтобы
565 увидеть, что на самом деле происходит.
566 </para>
567 </formalpara>
569 <para>
570 Проще говоря, ускорение, полученное от использования DGA относительно
571 'обычного' использования X11, сильно зависит от видео карты и того,
572 насколько хорошо оптимизирован модуль X11 для него.
573 </para>
575 <para>
576 Если у вас медленная система, лучше использовать глубину 15 или 16 бит,
577 поскольку это потребует половину пропускной способности памяти 32-х
578 битного дисплея.
579 </para>
581 <para>
582 Использование глубины 24 бита - хорошая идея, даже если ваша карта
583 аппаратно поддерживает только 32 бита, поскольку передается на 25%
584 меньше данных по сравнению с режимом 32/32.
585 </para>
587 <para>
588 Приходилось видеть, как некоторые AVI файлы воспроизводились на Pentium MMX 266.
589 AMD K6-2 CPU может работать начиная с 400 МГц и выше.
590 </para>
593 <formalpara>
594 <title>ИЗВЕСТНЫЕ ОШИБКИ</title>
596 <para>
597 Ну, по мнению некоторых разработчиков XFree, DGA - это немного монстр.
598 Они говорят, что лучше его не использовать. Его реализация не
599 безупречна для любого существующего драйвера XFree.
600 изъянов.
601 </para>
602 </formalpara>
604 <itemizedlist>
605 <listitem><para>
606   С XFree 4.0.3 и <filename>nv.o</filename> существует ошибка приводящая
607   к странным цветам.
608 </para></listitem>
609 <listitem><para>
610   ATI драйвер требует  неоднократного переключения режима после
611   завершения использования DGA.
612 </para></listitem>
613 <listitem><para>
614   Некоторые драйвера просто не в состоянии переключиться обратно в
615   нормальный режим (используйте
616   <keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>Keypad +</keycap></keycombo>
617   и
618   <keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>Keypad -</keycap></keycombo>
619   для нормального переключения).
620 </para></listitem>
621 <listitem><para>
622   Некоторые драйвера просто отображают странные цвета.
623 </para></listitem>
624 <listitem><para>
625   Некоторые драйвера неверно сообщают о количестве памяти, которое они отобразили в
626   адресное пространство процесса, так что vo_dga не будет использовать
627   двойную буферизацию (SIS?).
628 </para></listitem>
629 <listitem><para>
630   Некоторые драйвера, похоже, не могут сообщить  даже об одном верном режиме.
631   В этом случае DGA рухнет, сообщая о невероятном режиме
632   100000x100000 или о чем-нибудь похожем.
633 </para></listitem>
634 <listitem><para>
635   OSD работает только с задействованным двойным буфером (иначе он моргает).
636 </para></listitem>
637 </itemizedlist>
639 </sect1>
641 <!-- ********** -->
643 <sect1 id="sdl">
644 <title>SDL</title>
646 <para>
647 <acronym>SDL</acronym> (Simple Directmedia Layer) - это, в основном, унифицированный
648 видео/аудио интерфейс. Программы, его использующие, знают только про SDL, а не про
649 то, какой видео или аудио драйвер реально используется. Например, порт игры Doom,
650 используя SDL, может запуститься на svgalib, aalib, X, fbdev и других, вам
651 придется только указать (для примера) используемый видеодрайвер при помощи
652 переменной окружения <envar>SDL_VIDEODRIVER</envar>. Ну, в теории.
653 </para>
655 <para>
656 <!-- FIXME is translation correct ?
657 With <application>MPlayer</application>, we used its X11 driver's software
658 scaler ability for cards/drivers that doesn't support XVideo, until we made
659 our own (faster, nicer) software scaler. Also we used its aalib output, but
660 now we have ours which is more comfortable. Its DGA mode was better than
661 ours, until recently. Get it now? :)
663 Для карт/драйверов, не поддерживающих XVideo, мы использовали в
664 <application>MPlayer</application> собственные возможности программного масштабирования
665 SDL'вских X11 драйверов, пока не написали наш собственный (более быстрый и изящный)
666 программный модуль масштабирования. Также мы использовали его aalib вывод, но
667 теперь у нас есть свой, более удобный. До некоторых пор его DGA режим был
668 лучше нашего. Хотите получить его прямо сейчас ? :)
669 </para>
671 <para>
672 Он также помогает с некоторыми сбоящими  драйверами/картами, если видео
673 прерывается (если это не проблема недостаточного быстродействия), или заикается звук.
674 </para>
676 <para>
677 SDL видео вывод поддерживает отображения субтитров внизу, на черной полосе (если она есть).
678 </para>
679 </sect1>
681 <!-- ********** -->
683 <sect1 id="svgalib">
684 <title>SVGAlib</title>
686 <formalpara>
687 <title>УСТАНОВКА</title>
688 <para>
689 потребуется установить svgalib и ее пакет разработки, чтобы
690 <application>MPlayer</application> собрал свой SVGAlib драйвер (определяется
691 автоматически, но можко включить принудительно), и отредактировать
692 <filename>/etc/vga/libvga.config</filename> в соответствии с вашией картой и монитором.
693 </para>
694 </formalpara>
696 <note><para>
697 Убедитесь, что не используете опцию <option>-fs</option>, поскольку она включает
698 использование программного масштабирования и работает медленно. Если вам действительно
699 это необходимо, используйте опцию <option>-sws 4</option>, которая будет давать плохое
700 качество, но несколько быстрее.
701 </para></note>
703 <formalpara>
704 <title>ПОДДЕРЖКА EGA (4BPP)</title>
705 <para>
706 SVGAlib включает в себя EGAlib, и <application>MPlayer</application> имеет
707 возможность выводить любой фильм в 16-ти цветах. Используется в таких вариантах:
708 </para>
709 </formalpara>
711 <itemizedlist>
712 <listitem><para>
713   EGA карта с EGA монитором: 320x200x4bpp, 640x200x4bpp, 640x350x4bpp
714 </para></listitem>
715 <listitem><para>
716   EGA карта с CGA монитором: 320x200x4bpp, 640x200x4bpp
717 </para></listitem>
718 </itemizedlist>
720 <para>
721 Значение bpp (бит на пиксел) должно быть вручную установлено в 4:
722 <option>-bpp 4</option>
723 </para>
725 <para>
726 Возможно потребуется отмасштабировать фильм, чтобы уместить в размеры EGA режима:
727 <screen>-vf scale=640:350</screen>
729 <screen>-vf scale=320:200</screen>
730 </para>
732 <para>
733 Для масштабирования требуется быстрый алгоритм с плохим качеством:
734 <screen>-sws 4</screen>
735 </para>
737 <para>
738 Возможно надо отключить автоматическую коррекцию пропорций:
739 <screen>-noaspect</screen>
740 </para>
742 <note><para>
743 Как показывает мой опыт, лучшее качество на EGA экране получается
744 при небольшом уменьшении яркости:
745 <option>-vf eq=-20:0</option>. Мне также пришлось уменьшить частоту дискретизации [samplerate]
746 на моей машине, поскольку звук не работал на 44kГц.
747 <option>-srate 22050</option>.
748 </para></note>
750 <para>
751 ВЫ можете включить OSD и субтитры только с плагином <option>expand</option>,
752 смотрите страницу руководства man для точных параметров.
753 </para>
754 </sect1>
756 <!-- ********** -->
758 <sect1 id="fbdev">
759 <title>Вывод во фреймбуфер (FBdev)</title>
761 <para>
762 Надо ли собирать FBdev автоматически определяется скриптом
763 <filename>./configure</filename>. Прочтите документацию на фреймбуйер в
764 исходниках ядра (<filename>Documentation/fb/*</filename>) для более подробной
765 информации.
766 </para>
768 <para>
769 Если ваша карта не поддерживает стандарт VBE 2.0 (старые ISA/PCI карты, такие
770 как S3 Trio64), а только VBE 1.2 (или еще старее?): ну, VESAfb все же будет доступна,
771 но вам потребуется загрузить SciTech Display Doctor (она же UniVBE) до загрузки Linux.
772 Используйте загрузочный диск DOS или что либо другое. И не забудьте зарегистрировать
773 ваш UniVBE ;))
774 </para>
776 <para>
777 Драйвер FBdev вместе с прочими принимает несколько дополнительных параметров:
778 </para>
780 <variablelist>
781 <varlistentry>
782   <term><option>-fb</option></term>
783   <listitem><para>
784     указывает какой устройство фреймбуфера использовать
785     (по-умолчанию: <filename>/dev/fb0</filename>)
786   </para></listitem>
787 </varlistentry>
788 <varlistentry>
789   <term><option>-fbmode</option></term>
790   <listitem><para>
791     название используемого режима (в соответствии с <filename>/etc/fb.modes</filename>)
792   </para></listitem>
793 </varlistentry>
794 <varlistentry>
795   <term><option>-fbmodeconfig</option></term>
796   <listitem><para>
797     конфигурационный файл с режимами (по-умолчанию: <filename>/etc/fb.modes</filename>)
798   </para></listitem>
799 </varlistentry>
800 <varlistentry>
801   <term><option>-monitor-hfreq</option></term>
802   <term><option>-monitor-vfreq</option></term>
803   <term><option>-monitor-dotclock</option></term>
804   <listitem><para>
805     <emphasis role="bold">важные</emphasis> знаячения, смотрите
806     <filename>example.conf</filename>
807   </para></listitem>
808 </varlistentry>
809 </variablelist>
811 <para>
812 При желании переключиться в особый режим используйте:
813 <screen>
814 mplayer -vm -fbmode <replaceable>название_режима</replaceable> <replaceable>имя_файла</replaceable>
815 </screen>
816 </para>
818 <itemizedlist>
819 <listitem><para>
820   <option>-vm</option> в одиночку выберет наиболее подходящий режим из
821   <filename>/etc/fb.modes</filename>. Также может использоваться совместно с
822   <option>-x</option> и <option>-y</option>. Опция
823   <option>-flip</option> поддерживается, только если формат точки фильма совпадает с
824   форматом точки видеорежима. Обратите внимание на значение bpp, fbdev пытается
825   использовать текущий или указанный вами опцией <option>-bpp</option>.
826 </para></listitem>
827 <listitem><para>
828   Опция <option>-zoom</option> не поддерживается (используйте <option>-vf scale</option>).
829   Вы не можете использовать режимы с 8bpp (или меньше).
830 </para></listitem>
831 <listitem><para>
832   Вы, возможно, захотите отключить курсор:
833   <screen>echo -e '\033[?25l'</screen>
834   или
835   <screen>setterm -cursor off</screen>
836   и хранитель экрана:
837   <screen>setterm -blank 0</screen>
838   Чтобы снова включить курсор:
839   <screen>echo -e '\033[?25h'</screen>
840   или
841   <screen>setterm -cursor on</screen>
842 </para></listitem>
843 </itemizedlist>
845 <note><para>
846 Смена режимов FBdev <emphasis>не работает</emphasis> с VESA фреймбуфером.
847 Не просите об этом, т.к. это не ограничения <application>MPlayer</application>.
848 </para></note>
849 </sect1>
851 <!-- ********** -->
853 <sect1 id="mga_vid">
854 <title>Matrox фреймбуфер (mga_vid)</title>
856 <para>
857 <systemitem>mga_vid</systemitem> - это комбинация драйвера вывода и модуля ядра
858 Linux, использующая модуль видео масштабирования/оверлея
859 Matrox G200/G400/G450/G550 для выполнения YUV->RGB преобразования цветового
860 пространства и произвольного масштабирования.
861 <systemitem>mga_vid</systemitem> имеет аппаратную поддержку VSYNC с тройной
862 буферизацией. Работает как во фреймбуфер
863 консоли, так и под X, но только с Linux 2.4.x.
864 </para>
866 <para>
867 Версию этого драйверя для Linux 2.6.x ищите на
868 <ulink url="http://attila.kinali.ch/mga/"/>.
869 </para>
871 <procedure>
872 <title>Установка:</title>
873 <step><para>
874   чтобы использовать его, придется, во-первых, скомпилировать <filename>mga_vid.o</filename>:
875   <screen>
876 cd drivers
877 make<!--
878 --></screen>
879 </para></step>
880 <step><para>
881   Затем запустите (под <systemitem class="username">root</systemitem>)
882   <screen>make install</screen>
883   что должно установить модуль и создать для Вас файл устройства.
884   Загрузите драйвер:
885   <screen>insmod mga_vid.o</screen>
886 </para></step>
887 <step><para>
888   Вам следует проверить определение размера памяти, используя
889   команду <command>dmesg</command>. Если он неверен, укажите опцию
890   <option>mga_ram_size</option>
891   (но сначала <command>rmmod mga_vid</command>),
892   указав размер памяти в Мб:
893   <screen>insmod mga_vid.o mga_ram_size=16</screen>
894 </para></step>
895 <step><para>
896   чтобы в случае необходимости загружать его автоматической, сначала добавьте
897   следующую строку в конец файла <filename>/etc/modules.conf</filename>:
899   <programlisting>alias char-major-178 mga_vid</programlisting>
900 </para></step>
901 <step><para>
902   Теперь надо (пере)скомпилировать <application>MPlayer</application>,
903   <command>./configure</command> определит
904   <filename>/dev/mga_vid</filename> и соберет драйвер 'mga'.
905   Использование его в <application>MPlayer</application> осуществляется
906   опцией <option>-vo mga</option>, если используете консоль matroxfb, или
907   опцией <option>-vo xmga</option> из-под XFree86 3.x.x или 4.x.x.
908 </para></step>
909 </procedure>
911 <para>
912 Драйвер mga_vid работает совместно с Xv.
913 </para>
915 <para>
916 Из файла устройства <filename>/dev/mga_vid</filename> можно получать некоторую информацию,
917 например, командой
918 <screen>cat /dev/mga_vid</screen>
919 В него можно писать для изменения яркости:
920 <screen>echo "brightness=120" &gt; /dev/mga_vid</screen>
921 </para>
923 <para>
924 В том же каталоге есть тестовая программа, называющаяся
925 <command>mga_vid_test</command>. Если все работает нормально, она должна
926 рисовать на экране изображения 256x256.
927 </para>
929 </sect1>
931 <!-- ********** -->
933 <sect1 id="tdfxfb" xreflabel="3Dfx YUV support (tdfxfb)">
934 <title>Поддержка 3Dfx YUV</title>
935 <para>
936 Этот драйвер использует ядерный драйвер фреймбуфера tdfx для воспроизведения
937 фильмой с YUV ускорением. Вам потребуется ядро с поддержкой tdfxfb и перекомпиляция с
938 <screen>./configure --enable-tdfxfb</screen>
939 </para>
940 </sect1>
942 <!-- ********** -->
944 <sect1 id="tdfx_vid">
945 <title>tdfx_vid</title>
947 <para>
948 Это комбинация модуля Linux ядра и драйвера вывода видео, аналогичный
949 <link  linkend="mga_vid">mga_vid</link>.
950 Вам потребуется 2.4.x ядро с драйвером <systemitem>agpgart</systemitem>,
951 поскольку <systemitem>tdfx_vid</systemitem> использует AGP.
952 Укажите <command>configure</command> опцию <option>--enable-tdfxfb</option>
953 для сборки драйвера вывода видео и соберите модуль ядра, как указано далее.
954 </para>
956 <procedure>
957 <title>Установка tdfx_vid.o модуля ядра:</title>
958 <step><para>
959   Скомпилируйте <filename>tdfx_vid.o</filename>
960   <screen>
961 cd drivers
962 make</screen>
963 </para></step>
964 <step><para>
965   Запустите (от <systemitem class="username">root</systemitem>):
966   <screen>make install</screen>
967   что должно установить модуль и создать для Вас файл устройства.
968   Загрузите драйвер:
969   <screen>insmod tdfx_vid.o</screen>
970 </para></step>
971 <step><para>
972   Чтобы сделать его загружающимся/выгружающимся автоматически, сначала вставьте
973   следующую строку в конец <filename>/etc/modules.conf</filename>:
975   <programlisting>alias char-major-178 tdfx_vid</programlisting>
976 </para></step>
977 </procedure>
979 <para>
980 В том же каталоге есть тестовая программа, называющаяся
981 <command>tdfx_vid_test</command>. Она должна вывести некоторую полезную
982 информацию, если все работает нормально.
983 </para>
985 </sect1>
987 <!-- ********** -->
989 <sect1 id="opengl">
990 <title>OpenGL вывод</title>
992 <para>
993 <application>MPlayer</application> поддерживает воспроизведение фильмов через OpenGL,
994 но если ваша платформа/драйвер поддерживает xv, как в случае PC с Linux,
995 лучше используйте xv, производительность OpenGL значительно ниже. Если у вас
996 реализация X11 без поддержки xv, OpenGL жизнеспособная замена.
997 </para>
999 <para>
1000 К сожалению, не все драйвера поддерживают эту возможность. Драйвера
1001 Utah-GLX (для XFree86 3.3.6) имеют ее для всех карт.
1002 Подробности установки смотрите <ulink url="http://utah-glx.sf.net"/>.
1003 </para>
1005 <para>
1006 XFree86(DRI) 4.0.3 или новее поддерживает OpenGL с картами Matrox и Radeon,
1007 4.2.0 или более поздние поддерживают и Rage128.
1008 Инструкции по закачиванию и установке смотрите на <ulink url="http://dri.sf.net"/> .
1009 </para>
1011 <para>
1012 Подсказка от одного из наших пользователей: видео вывод GL может использоваться
1013 для получения синхронизированного по вертикали TV вывода. Необходимо установить
1014 переменную окружения (как минимум для nVidia):
1015 </para>
1017 <para>
1018 <command>export __GL_SYNC_TO_VBLANK=1</command>
1019 </para>
1021 </sect1>
1023 <!-- ********** -->
1025 <sect1 id="aalib">
1026 <title>AAlib - отображение в текстовом режиме</title>
1028 <para>
1029 AAlib - это библиотека для отображения графики в текстовом режиме, используя мощный
1030 ASCII рендерер[renderer]. Существует <emphasis>множество</emphasis> программ уже
1031 поддерживающих ее, такие как Doom, Quake, и т.д. <application>MPlayer</application>
1032 содержит очень удобный драйвер для нее. Если <filename>./configure</filename>
1033 обнаруживает установленную aalib, будет собран libvo драйвер для aalib.
1034 </para>
1036 <para>
1037 В AA Window можно использовать некоторые клавиши для изменения настроек рендеринга:
1038 </para>
1040 <informaltable>
1041 <tgroup cols="2">
1042 <thead>
1043   <row><entry>Клавиша</entry><entry>Действие</entry></row>
1044 </thead>
1045 <tbody>
1046 <row><entry><keycap>1</keycap></entry><entry>
1047   уменьшить контрастность
1048 </entry></row>
1049 <row><entry><keycap>2</keycap></entry><entry>
1050   увеличить контрастность
1051 </entry></row>
1052 <row><entry><keycap>3</keycap></entry><entry>
1053   уменьшить яркость
1054 </entry></row>
1055 <row><entry><keycap>4</keycap></entry><entry>
1056   увеличить яркость
1057 </entry></row>
1058 <row><entry><keycap>5</keycap></entry><entry>
1059   включение/отключение быстрого рендеринга
1060 </entry></row>
1061 <row><entry><keycap>6</keycap></entry><entry>
1062   установка режима зашумления[dithering] (отсутствие, распределение ошибки[error distribution], Floyd Steinberg)
1063 </entry></row>
1064 <row><entry><keycap>7</keycap></entry><entry>
1065   инвертировать изображение
1066 </entry></row>
1067 <row><entry><keycap>8</keycap></entry><entry>
1068   переключение между управлением aa и <application>MPlayer</application>
1069 </entry></row>
1070 </tbody>
1071 </tgroup>
1072 </informaltable>
1074 <variablelist>
1075 <title>Могут быть использованы следующие опции командной строки:</title>
1076 <varlistentry>
1077   <term><option>-aaosdcolor=<replaceable>V</replaceable></option></term>
1078   <listitem><para>
1079     Смена цвета OSD
1080   </para></listitem>
1081 </varlistentry>
1082 <varlistentry>
1083   <term><option>-aasubcolor=<replaceable>V</replaceable></option></term>
1084   <listitem><para>
1085     Смена цвета субтитров
1086     </para><para>
1087     где <replaceable>V</replaceable> может быть:
1088     <literal>0</literal> (нормальный),
1089     <literal>1</literal> (темный),
1090     <literal>2</literal> (жирный),
1091     <literal>3</literal> (жирный шрифт),
1092     <literal>4</literal> (реверсный[reverse]),
1093     <literal>5</literal> (специальный).
1094   </para></listitem>
1095 </varlistentry>
1096 </variablelist>
1098 <variablelist>
1099 <title>AAlib сама предоставляет большое количество опций. Вот некоторые из важных::</title>
1100 <varlistentry>
1101   <term><option>-aadriver</option></term>
1102   <listitem><para>
1103     Установить рекомендуемый aa драйвер (X11, curses, Linux).
1104   </para></listitem>
1105 </varlistentry>
1106 <varlistentry>
1107   <term><option>-aaextended</option></term>
1108   <listitem><para>
1109     Использовать все 256 символов.
1110   </para></listitem>
1111 </varlistentry>
1112 <varlistentry>
1113   <term><option>-aaeight</option></term>
1114   <listitem><para>
1115     Использовать восьмибитную ASCII.
1116   </para></listitem>
1117 </varlistentry>
1118 <varlistentry>
1119   <term><option>-aahelp</option></term>
1120   <listitem><para>
1121     Выводит все опции  aalib.
1122   </para></listitem>
1123 </varlistentry>
1124 </variablelist>
1126 <note><para>
1127 Рандеринг очень сильно загружает CPU, особенно при использовании AA-on-X
1128 (использование aalib под X), и меньше при использовании стандартной не-фреймбуфер
1129 консоли. Используйте SVGATextMode, чтобы настроить большой текстовый режим и
1130 наслаждайтесь! (второй выход карт Hercules рулит[secondary head Hercules cards
1131 rock] :) ), но, IMHO, вы можете использовать опцию  <option>-vf 1bpp</option>, чтобы
1132 получить графику на hgafb :)
1133 </para></note>
1135 <para>
1136 Используйте опцию <option>-framedrop</option>, если ваш компьютер недостаточно быстр
1137 для отрисовки всех кадров!
1138 </para>
1140 <para>
1141 При воспроизведении на терминале, вы получите лучшую скорость и качество при
1142 использовании драйвера Linux, а не curses(<option>-aadriver linux</option>).
1143 Но при этом вы долны иметь право записи в
1144 <filename>/dev/vcsa<replaceable>&lt;терминал&gt;</replaceable></filename>!
1145 Это не определяется aalib автоматически, но vo_aa вместо нее пытается определить
1146 лучший режим. Смотрите <ulink url="http://aa-project.sf.net/tune"/> для
1147 дальнейших задач тюнинга.
1148 </para>
1149 </sect1>
1151 <!-- ********** -->
1153 <sect1 id="caca">
1154 <title>
1155 <systemitem class="library">libcaca</systemitem> - Цветная ASCII Art библиотека
1156 </title>
1158 <para>
1159 Библиотека <ulink url="http://sam.zoy.org/projects/libcaca/"><systemitem class="library">libcaca</systemitem></ulink> -
1160 это графическая библиотека, выводящая чекст вместо пикселов, так что она может
1161 работать на старых видео картах или текстовых терминалах. Она не такая, как
1162 знаменитая <systemitem class="library">AAlib</systemitem>.
1163 <systemitem class="library">libcaca</systemitem> требует терминал для своей работы,
1164 так что она будет работать на всех unix системах (включая Max OS X), используя
1165 библиотеку <systemitem class="library">slang</systemitem> или
1166 <systemitem class="library">ncurses</systemitem>, под DOS используя библиотеку
1167 <systemitem class="library">conio.h</systemitem>, и под windows, используя либо
1168 <systemitem class="library">slang</systemitem>, либо
1169 <systemitem class="library">ncurses</systemitem> (через Cygwin эмуляцию), либо
1170 <systemitem class="library">conio.h</systemitem>. Если скрипт
1171 <filename>./configure</filename>
1172 определяет <systemitem class="library">libcaca</systemitem>, то caca libvo драйвер
1173 будет собран.
1174 </para>
1176 <itemizedlist>
1177 <title>Отличия от <systemitem class="library">AAlib</systemitem> следующие:</title>
1178 <listitem><para>
1179    16 доступных цветов для вывода символов (256 цветовых пар)
1180 </para></listitem>
1181 <listitem><para>
1182    зашумление[dithering] цветного изображения
1183 </para></listitem>
1184 </itemizedlist>
1186 <itemizedlist>
1187 <title>Но <systemitem class="library">libcaca</systemitem> также имеет следующие
1188 ограничения:</title>
1189 <listitem><para>
1190    нет поддержки яркости, контрастности, гаммы
1191 </para></listitem>
1192 </itemizedlist>
1194 <para>
1195 ВЫ можете использовать следующие клавиши в окне caca для изменения опций
1196 рендеринга:
1197 </para>
1199 <informaltable>
1200 <tgroup cols="2">
1201 <thead>
1202   <row><entry>Клавиша</entry><entry>Действие</entry></row>
1203 </thead>
1204 <tbody>
1205 <row><entry><keycap>d</keycap></entry><entry>
1206   Перключение методов зашумления[dithering] <systemitem class="library">libcaca</systemitem>.
1207 </entry></row>
1208 <row><entry><keycap>a</keycap></entry><entry>
1209   Перекллючение сглаживания[antialiasing] <systemitem class="library">libcaca</systemitem>.
1210 </entry></row>
1211 <row><entry><keycap>b</keycap></entry><entry>
1212   Переключение фона <systemitem class="library">libcaca</systemitem>.
1213 </entry></row>
1214 </tbody>
1215 </tgroup>
1216 </informaltable>
1218 <variablelist>
1219 <title><systemitem class="library">libcaca</systemitem> также анализирует следующие
1220 переменные окружения:</title>
1221 <varlistentry>
1222   <term><option>CACA_DRIVER</option></term>
1223   <listitem><para>
1224     Установить рекомендуемый caca драйвер, например ncurses, slang, x11.
1225   </para></listitem>
1226 </varlistentry>
1227 <varlistentry>
1228   <term><option>CACA_GEOMETRY (только X11)</option></term>
1229   <listitem><para>
1230     Указывает количество строк и столбцов, например, 128x50.
1231   </para></listitem>
1232 </varlistentry>
1233 <varlistentry>
1234   <term><option>CACA_FONT (только X11)</option></term>
1235   <listitem><para>
1236     Указывает используемый шрифт, например, fixed, nexus.
1237   </para></listitem>
1238 </varlistentry>
1239 </variablelist>
1241 <para>
1242 Используйте опцию <option>-framedrop</option>, если ваш компьютер недостаточно быстр для
1243 рендеринга всех кадров.
1244 </para>
1246 </sect1>
1248 <!-- ********** -->
1250 <sect1 id="vesa">
1251 <title>VESA - вывод в VESA BIOS</title>
1253 <para>
1254 Этот драйвер был разработатн и представлен как <emphasis role="bold">универсальный
1255 драйвер</emphasis> для любых карт с VESA VBE 2.0 совместимым BIOS.
1256 Другое преимущество этого драйвера заключается в том ,что он пытается принудительно
1257 включить TV вывод.
1258 <citetitle>VESA BIOS EXTENSION (VBE) Версия 3.0 Дата: 16 сентября, 1998</citetitle>
1259 (Страница 70) гласит:
1260 </para>
1262 <blockquote>
1263 <formalpara><title>Dual-Controller Designs</title>
1264 <para>
1265 VBE 3.0 поддерживает дизайн с двумя контроллерами, предполагая, что поскольку
1266 оба контроллера обычно имеют одного производителя, и управляются единственной
1267 BIOS ROM на той же карте, то возможно скрыть от приложения факт наличия на самом
1268 деле двух контроллеров. Это ограничивает их независимое одновременное использование,
1269 но позволяет приложениям, выпущенным до VBE 3.0
1270 нормально работать. VBE функция 00h (Вернуть информацию о контроллере) возвращает
1271 комбинированную информацию двух контроллеров, включая объединенный список
1272 доступных режимов. Когда приложение выбирает режим, активируется соответствующий
1273 контроллер. Каждая из остальных VBE функций затем работает  с активным
1274 контроллером.
1275 </para>
1276 </formalpara>
1277 </blockquote>
1279 <para>
1280 Так что у вас ест шанс получить работающий TV выход, используя этот драйвер.
1281 (Предполагается, что TV-выход - отдельный контроллер[standalone head] или
1282 отдельный выход как минимум.)
1283 </para>
1285 <itemizedlist spacing="compact">
1286 <title>ПРЕИМУЩЕСТВА</title>
1287 <listitem><para>
1288   У вас есть шанс смотреть фильмы, <emphasis role="bold">даже если Linux
1289   не знает</emphasis> ваше видео оборудование.
1290 </para></listitem>
1291 <listitem><para>
1292   Вам не требуется устанавливать в Linux ничего, относящегося к графике
1293   (вроде X11 (он же XFree86), fbdev и т.п.). Этот драйвер может запускаться
1294   из <emphasis role="bold">текстового режима</emphasis>.
1295 </para></listitem>
1296 <listitem><para>
1297   У вас есть шанс получить <emphasis role="bold">работающий TV-выход</emphasis>.
1298   (Это известно как минимум для ATI карт).
1299 </para></listitem>
1300 <listitem><para>
1301   Этот драйвер вызывает обработчик <function>int 10h</function>, так что это
1302   не эмуляция - он вызывает <emphasis role="bold">реальные</emphasis>
1303   вещи <emphasis>реального</emphasis> BIOS в <emphasis>реальном режиме</emphasis>
1304   (на самом деле vm86 режим).
1305 </para></listitem>
1306 <listitem><para>
1307   С ним вы можете использовать VIDIX, получая ускоренное отображение видео,
1308   <emphasis role="bold">и</emphasis> TV вывод одновременно!
1309   (Рекомендуется для ATI карт.)
1310 </para></listitem>
1311 <listitem><para>
1312   Если у вас есть VESA VBE 3.0+, и вы где-то указали
1313   <option>monitor-hfreq, monitor-vfreq, monitor-dotclock</option>
1314   (в файле конфигурации или в командной строке), то получите наибольшую возможную
1315   частоту обновления. (Используя General Timing Formula). Чтобы задействовать
1316   эту возможность, вы должны указать <emphasis role="bold">все</emphasis> опции
1317   вашего монитора.
1318 </para></listitem>
1319 </itemizedlist>
1321 <itemizedlist spacing="compact">
1322 <title>НЕДОСТАТКИ</title>
1323 <listitem><para>
1324    Это работает только на <emphasis role="bold">x86 системах</emphasis>.
1325 </para></listitem>
1326 <listitem><para>
1327   Может использоваться только пользователем <systemitem class="username">root</systemitem>.
1328 </para></listitem>
1329 <listitem><para>
1330   В данный момент доступно только для <emphasis role="bold">Linux</emphasis>.
1331 </para></listitem>
1332 </itemizedlist>
1334 <important><para>
1335 Не используйте этот драйвер с <emphasis role="bold">GCC 2.96</emphasis>!
1336 Он не будет работать!
1337 </para></important>
1339 <variablelist>
1340 <title>ОПЦИИ КОМАНДНОЙ СТРОКИ, ДОСТУПНЫЕ ДЛЯ VESA</title>
1341 <varlistentry>
1342   <term><option>-vo vesa:<replaceable>опции</replaceable></option></term>
1343   <listitem><para>
1344     данный момент распознаются: <literal>dga</literal> для включения режима dga
1345     и <literal>nodga</literal> для его отключения. В dga режиме вы можете включить
1346     двойную буферизацию опцией <option>-double</option>. Замечание: вы можете
1347     опустить эти параметры для <emphasis role="bold">автоопределения</emphasis>
1348     режима dga.
1349   </para></listitem>
1350 </varlistentry>
1351 </variablelist>
1353 <itemizedlist spacing="compact">
1354 <title>ИЗВЕСТНЫЕ ПРОБЛЕМЫ И СПОСОБЫ ИХ РЕШЕНИЯ</title>
1355 <listitem><para>
1356   Если вы установили <emphasis role="bold">NLS</emphasis> шрифт на вашем
1357   Linux и запускаете VESA драйвер из текстового режима, то после завершения
1358   <application>MPlayer</application> у вас окажется загруженным
1359   <emphasis role="bold">ROM шрифт</emphasis> вместо национального.
1360   Вы можете загрузить национальный шрифт снова, воспользовавшись утилитой
1361   <command>setsysfont</command> из дистрибутива Mandrake/Mandriva, например.
1362   (<emphasis role="bold">Подсказка</emphasis>: Та же утилита используется для
1363   локализации fbdev).
1364 </para></listitem>
1365 <listitem><para>
1366   Некоторые <emphasis role="bold">графические драйверы Linux</emphasis> не обновляют
1367   активный <emphasis role="bold">BIOS режим</emphasis> в DOS памяти.
1368   Таким образом, если у вас подобная проблема - всегда используете VESA драйвер
1369   только из <emphasis role="bold">текстового режима</emphasis>. Иначе в любом случае будет
1370   активирован текстовый режим (#03) и вам придется перезагружать компьютер..
1371 </para></listitem>
1372 <listitem><para>
1373   Часто после завершения работы  VESA драйвера вы получаете
1374   <emphasis role="bold">черный</emphasis> экран. Чтобы вернуться в обычный режим
1375   просто переключитесь на другую консоль (нажав
1376   <keycombo><keycap>Alt</keycap><keycap>F&lt;x&gt;</keycap></keycombo>)
1377   затем переключитесь обратно тем же способом.
1378 </para></listitem>
1379 <listitem><para>
1380   Для получения <emphasis role="bold">работающего TV выхода</emphasis> необходимо,
1381   чтобы TV разъем был подключен до включения вашего PC, т.к. видео BIOS
1382   инициализирует себя только один раз во время POST процедуры.
1383 </para></listitem>
1384 </itemizedlist>
1385 </sect1>
1387 <!-- ********** -->
1389 <sect1 id="x11">
1390 <title>X11</title>
1392 <para>
1393 Избегайте, если возможно. Вывод в X11 (используя расширение разделяемой памяти) -
1394 без какого-либо ускорения.Поддерживается (MMX/3DNow/SSE ускоренное, но все равно
1395 медленное) программное масштабирование, используйте опции <option>-fs -zoom</option>.
1396 Большинство карт имеют поддержку масштабирования,  для этого используйте вывод
1397 <option>-vo xv</option>, или <option>-vo xmga</option> для карт Matrox.
1398 </para>
1400 <para>
1401 Проблема в том, что большинство драйверов карт не поддерживают аппаратное
1402 ускорение на втором мониторе/TV. В этом случае вы увидите окно зеленого/синего
1403 цвета вместо изображения, и этот драйвер будет полезным,
1404 но требуется мощный CPU для программного масштабирования. Не используйте
1405 программный вывод+масштабирование SDL драйвера, он имеет худшее качество
1406 картинки!
1407 </para>
1409 <para>
1410 Программное масштабирование очень медленное, лучше попробуйте вместо этого
1411 изменить видео режим. Это очень просто. Смотрите <link linkend="dga-modelines">раздел DGA
1412 режимы</link> и вставьте соответствующие строки в ваш <filename>XF86Config</filename>.
1414 <itemizedlist spacing="compact">
1415 <listitem><para>
1416   Если у вас XFree86 4.x.x: используйте <option>-vm</option> опцию. Она
1417   переключится в режим с подходящим разрешением. Если нет:
1418 </para></listitem>
1419 <listitem><para>
1420   C XFree86 3.x.x: циклически переключайтесь между разными разрешениями с помощью
1421   клавиш
1422   <keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>Доп. клавиша
1423   плюс</keycap></keycombo>
1424   и
1425   <keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>Доп. клавиша
1426   минус</keycap></keycombo>.
1427 </para></listitem>
1428 </itemizedlist>
1429 </para>
1431 <para>
1432 Если не находите вставленные видео режимамы, просмотрите  вывод Xfree86.
1433 Некоторые драйверы не могут использовать низкие частоты пикселизации (количество
1434 отрисовываемых пикселей в секунду), необходимые для видео режимов с низким разрешением.
1435 </para>
1436 </sect1>
1438 <!-- ********** -->
1440 <sect1 id="vidix">
1441 <title>VIDIX</title>
1443 <formalpara><title>ПРЕАМБУЛА</title><para>
1444 <acronym>VIDIX</acronym> - это аббревиатура для
1445 <emphasis role="bold">VID</emphasis>eo
1446 <emphasis role="bold">I</emphasis>nterface
1447 for *ni<emphasis role="bold">X</emphasis>
1448 (Видео интерфейс для Unix).
1449 VIDIX разработан и введен как интерфейс для быстрых драйверов пространства
1450 пользователя[user-space], обеспечивающих такую же производительность, как mga_vid
1451 для карт Matrox. Они к тому же хорошо переносимы.
1452 </para>
1453 </formalpara>
1454 <para>
1455 Этот интерфейс был разработан, чтобы уместить существующие интерфейсы ускорения видео
1456 (известные как mga_vid, rage128_vid, radeon_vid, pm3_vid) в единую схему.
1457 Он предоставляет высокоуровневый интерфейс к чипам, известным как
1458 BES (BackEnd scalers) или OV (Video Overlays). Он не предоставляет низкоуровневого интерфейса
1459 к вещам, известным как графические серверы (Я не хочу соревноваться с командой X11
1460 в переключении режимов.) Т.е. основная цель интерфейса - ускорить до максимума
1461 скорость воспроизведения видео.
1462 </para>
1464 <itemizedlist spacing="compact">
1465 <title>ИСПОЛЬЗОВАНИЕ</title>
1466 <listitem><para>
1467   Вы можете использовать отдельный видеодрайвер: <option>-vo xvidix</option>.
1468   Этот драйвер был разработан как X11 фронтенд к VIDIX технологии. Он
1469   требует X сервер и может работать только под ним.  Имейте ввиду, что
1470   поскольку этот драйвер напрямую обращается к оборудованию в обход драйвера X,
1471   то могут быть повреждены растровые изображения, кешированные в памяти
1472   видеокарты.
1473   Вы можете предотвратить это, ограничив размер видеопамяти, используемой X,
1474   XF86Config опцией "VideoRam" в разделе устройств. Вам следует установить этот
1475   параметр в количество установленной видеопамяти минус 4Мб. Если у вас меньше
1476   8Мб видеопамяти, вместо этого можно использовать опцию "XaaNoPixmapCache" в
1477   разделе экранов.
1478 </para></listitem>
1479 <listitem>
1480   <para>
1481   Существует консольный VIDIX драйвер: <option>-vo cvidix</option>.
1482   Для большинства карт требуется работающий и инициализированный фреймбуфер
1483   (в противном случае просто испортите изображение на экране),
1484   и вы будете иметь тот же эффект, что и с <option>-vo mga</option> или
1485   <option>-vo fbdev</option>. Карты nVidia, тем не менее, способны выводить
1486   полностью графическое видео в настоящей текстовой консоли. Смотрите раздел
1487   <link linkend="vidix-nvidia">nvidia_vid</link> для более подробной информации.
1488   Чтобы избавиться от такста на полях и мерцающего курсора попробуйте нечто подобное
1489   </para>
1491   <screen>setterm -cursor off > /dev/tty9</screen>
1493   <para>
1494   (предполагая, что <systemitem>tty9</systemitem> ранее не использовался) и затем переключитесь
1495   на <systemitem>tty9</systemitem>.
1496   С другой стороны, <option>-colorkey 0</option> должна дать вам видео, работающее "на фоне",
1497   однако правильность работы этого зависит от функцинальности colorkey.
1498   </para>
1499 </listitem>
1500 <listitem><para>
1501   Вы можете использовать подустройство VIDIX, примененное к различным
1502   драйверам видео вывода, например: <option>-vo vesa:vidix</option>
1503   (<emphasis role="bold">только Linux</emphasis>) и
1504   <option>-vo fbdev:vidix</option>.
1505 </para></listitem>
1506 </itemizedlist>
1508 <para>
1509 Это действительно неважно, какой драйвер вывода видео используется с
1510 <emphasis role="bold">VIDIX</emphasis>.
1511 </para>
1513 <itemizedlist spacing="compact">
1514 <title>ТРЕБОВАНИЯ</title>
1515 <listitem><para>
1516   Видеокарта должна находиться в графическом режиме (кроме карт nVidia с
1517   драйвером <option>-vo cvidix</option>).
1518 </para></listitem>
1519 <listitem><para>
1520   Драйвер вывода видео <application>MPlayer</application> должен знать
1521   текущий видеорежим и быть способным сообщить VIDIX некоторые видео характеристики сервера.
1522 </para></listitem>
1523 </itemizedlist>
1525 <formalpara><title>СПОСОБЫ ИСПОЛЬЗОВАНИЯ</title><para>
1526 Когда VIDIX используется в качестве <emphasis role="bold">подустройства</emphasis> (<option>-vo
1527 vesa:vidix</option>), настройка видеорежима производится драйвером вывода видео
1528 (короче говоря <emphasis role="bold">vo_server</emphasis>). Следовательно, вы можете
1529 передать в командную строку <application>MPlayer</application> те же ключи, что и для
1530 vo_server. Дополнительно он понимает ключ <option>-double</option>
1531 как глобально видимый параметр. (Я рекомендую использовать этот ключ с VIDIX как минимум
1532 для карт ATI). <option>-vo xvidix</option> дополнительно понимает следующие опции:
1533 <option>-fs -zoom -x -y -double</option>.
1534 </para>
1535 </formalpara>
1537 <para>
1538 Вы можете напрямую указать  VIDIX драйвер третьим параметром к командной строке:
1539 <screen>
1540 mplayer -vo xvidix:mga_vid.so -fs -zoom -double <replaceable>file.avi</replaceable>
1541 </screen>
1542 или
1543 <screen>
1544 mplayer -vo vesa:vidix:radeon_vid.so -fs -zoom -double -bpp 32 <replaceable>file.avi</replaceable>
1545 </screen>
1546 Но это опасно, и вам не следует этого делать. В этом случае принудительно
1547 запускается указанный драйвер и результат может быть непредсказуемым
1548 (он может <emphasis role="bold">подвесить</emphasis> ваш компьютер).
1549 Вам следует это делать ТОЛЬКО если вы абсолютно уверены, что он работает и
1550 <application>MPlayer</application> не использует его автоматически.
1551 Пожалуйста, сообщите об этом разработчикам. Правильный путь - использование
1552 VIDIX без аргументов для задействования автоопределения драйвера.
1553 </para>
1555 <para>
1556 Поскольку VIDIX требует прямой доступ к оборудованию, вы можете либо
1557 запускать его от имени root, либо установить SUID бит на исполняемый файл
1558 <application>MPlayer</application> ((<emphasis role="bold">Внимание:
1559 Это большой риск безопасности</emphasis>).
1560 Как вариант, вы можете использовать специальный модуль ядра, как этот:
1561 </para>
1563 <procedure>
1564 <step><para>
1565 <!-- FIXME correct translation of 'development version' -->
1566   Скачайте <ulink url="http://www.arava.co.il/matan/svgalib/">разрабатываемую версию</ulink>
1567   svgalib (например 1.9.17), <emphasis role="bold">ИЛИ</emphasis>
1568   версию, созданную Alex специально для использования с <application>MPlayer</application>
1569   (она не требует наличия исходников svgalib для компиляции)
1570   <ulink url="http://www.mplayerhq.hu/MPlayer/contrib/svgalib/svgalib_helper-1.9.17-mplayer.tar.bz2">отсюда</ulink>.
1571 </para></step>
1572 <step><para>
1573   Скомпилируйте модуль в каталоге <filename class="directory">svgalib_helper</filename>
1574   (он может быть найден внутри каталога
1575   <filename class="directory">svgalib-1.9.17/kernel/</filename>, если вы скачали исходники
1576   с сайта svgalib) и выполните insmod для него.
1577 </para></step>
1578 <step><para>
1579   Для создания необходимых устройств в каталоге <filename class="directory">/dev</filename>,
1580   выполните от имени root команду <screen>make device</screen> в
1581   <filename class="directory">svgalib_helper</filename>.
1582 </para></step>
1583 <step><para>
1584   Переместите каталог <filename class="directory">svgalib_helper</filename> в
1585   подкаталог <filename class="directory">vidix</filename> дерева исходных текстов
1586   <application>MPlayer</application>.
1587 </para></step>
1588 <step><para>
1589   Удалите комментарий перед строкой CFLAGS, содержащий строку "svgalib_helper"
1590   в файле <filename class="directory">vidix/Makefile</filename>.
1591 </para></step>
1592 <step><para>
1593   Перекомпилируйте.
1594   </para></step>
1595 </procedure>
1598 <sect2 id="vidix-ati">
1599 <title>ATI карты</title>
1601 <para>
1602 В даный момент для большинства карт ATI, начиная от Mach64 и заканчивая последними
1603 Radeon, имеется встроенная поддержка.
1604 </para>
1606 <para>
1607 Существует два скомпилрованных бинарных файла: <filename>radeon_vid</filename> для
1608 Radeon и <filename>rage128_vid</filename> для карт Rage 128. Вы можете принудительно
1609 использовать один из них или позволить VIDIX автоматически опробовать все доступные
1610 драйверы.
1611 </para>
1612 </sect2>
1615 <sect2 id="vidix-mga">
1616 <title>Matrox карты</title>
1618 <para>
1619 Сообщалось, что работают Matrox G200, G400, G450 и G550.
1620 </para>
1622 <para>
1623 <!-- FIXME what is 'video equalizers ' ? -->
1624 Драйвер поддерживает видео эквалайзеры и должем быть столь же быстр, как и
1625 <link linkend="mga_vid">Matrox фреймбуфер</link>
1626 </para>
1627 </sect2>
1630 <sect2 id="vidix-trident">
1631 <title>Trident карты</title>
1633 <para>
1634 Существует драйвер для чипсета Trident Cyberblade/i1, который можно найти
1635 на материнских платах VIA Epia.
1636 </para>
1638 <para>
1639 Драйвер написан и поддерживается
1640 <ulink url="http://www.blackfiveservices.co.uk/EPIAVidix.shtml">Alastair M. Robinson</ulink>.
1641 </para>
1642 </sect2>
1645 <sect2 id="vidix-3dlabs">
1646 <title>3DLabs карты</title>
1648 <para>
1649 Хотя драйвер для чипов 3DLabs GLINT R3 и Permedia3 существует, никто его не
1650 тестировал, так что отчеты приветствуются.
1651 </para>
1652 </sect2>
1655 <sect2 id="vidix-nvidia">
1656 <title>nVidia карты</title>
1658 <para>
1659 Уникальная особенность драйвера nvidia_vid заключается в способности отображать
1660 видео в <emphasis role="bold">простой, чисто текстовой консоли</emphasis> - без
1661 какого бы то ни было фреймбуфера или магии с X. Для этой цели мы будем использовать
1662 драйвер вывода видео <option>cvidix</option>, как показывет следующий пример:
1663 <screen>mplayer -vo cvidix <replaceable>example.avi</replaceable></screen>
1664 </para>
1665 </sect2>
1668 <sect2 id="vidix-sis">
1669 <title>SiS карты</title>
1671 <para>
1672 Это, как и nvidia_vid, весьма экспериментальный код.
1673 </para>
1675 <para>
1676 Он тестировался на SiS 650/651/740 (наиболее распространный чипсет, используемый в
1677 SiS версиях байрбонов[barebones] "Shuttle XPC")
1678 </para>
1680 <para>
1681 Отчеты ожидаются!
1682 </para>
1683 </sect2>
1684 </sect1>
1686 <!-- ********** -->
1688 <sect1 id="directfb">
1689 <title>DirectFB</title>
1691 <blockquote><para>
1692 "DirectFB - это графическая библиотека, которая была разработана с учетом
1693 особенностей встроенных систем. Она предоставляет максимум производительности
1694 при минимуме используемых ресурсов и накладных расходов." -
1695 процитировано с <ulink url="http://www.directfb.org"/>
1696 </para></blockquote>
1698 <para>Я исключу описание возможностей DirectFB из этого раздела.</para>
1700 <para>
1701 Несмотря на то, что <application>MPlayer</application> не поддерживается в DirectFB
1702 как "video провайдер", этот драйвер вывода видео задействует воспроизведение
1703 видео через DirectFB. Он будет - конечно - работать с ускорением, на моей Matrox G400
1704 скорость DirectFB такая же как у XVideo.
1705 </para>
1707 <para>
1708 Всегда старайтесь использовать последнюю версию DirectFB. Вы можете использовать опции
1709 DirectFB в командной строке, при помощи <option>-dfbopts</option>. Выбор слоя
1710 производится методом подустройства, например.: <option>-vo directfb:2</option>
1711 (по-умолчанию -1: автоопределение)
1712 </para>
1713 </sect1>
1715 <!-- ********** -->
1717 <sect1 id="dfbmga">
1718 <title>DirectFB/Matrox (dfbmga)</title>
1719 <para>
1720 Прочтите <link linkend="directfb">основной DirectFB</link> раздел для общей информации.
1721 </para>
1723 <para>
1724 Этот драйвер вывода видео задействует CRTC2 (на втором мониторе[second head]) на картах
1725 Matrox G400/G450/G550, отображающий видео
1726 <emphasis role="bold">независимо</emphasis> от первого монитора[first head].
1727 </para>
1729 <para>
1730 Ville Syrjala имеет
1731 <ulink url="http://www.sci.fi/~syrjala/directfb/Matrox_TV-out_README.txt">README</ulink>
1733 <ulink url="http://www.sci.fi/~syrjala/directfb/matrox-tv-out-howto">HOWTO</ulink>
1734 на своей странице, описывающие как задействовать вывод DirectFB TV на картах Matrox.
1735 </para>
1737 <note><para>
1738 Первая версия DirectFB, на которой удалось это сделать, была
1739 0.9.17 (имеющая ошибки, требует <systemitem>surfacemanager</systemitem>
1740 патч с указанного выше URL). Портирование кода CRTC2 в
1741 <link linkend="mga_vid">mga_vid</link> планируется уже несколько лет,
1742 <ulink url="../../tech/patches.txt">патчи</ulink> приветствуются.
1743 </para></note>
1744 </sect1>
1747 <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
1750 <sect1 id="mpeg_decoders">
1751 <title>MPEG декодеры</title>
1753 <sect2 id="dvb">
1754 <title>DVB ввод и вывод</title>
1756 <para>
1757 <application>MPlayer</application> поддерживает карты с чипсетом Siemens DVB и
1758 таких производителей, как Siemens, Technotrend, Galaxis или Hauppauge.
1759 Последние DVB драйверы доступны с <ulink url="http://www.linuxtv.org">сайта Linux TV</ulink>.
1760 Если вы собираетесь делать программное транскодирование, у вас должен быть как минимум 1ГГц CPU.
1761 </para>
1763 <para>
1764 Скрипт configure должен определить вашу DVB карту. Если нет, принудительно укажите
1765 определение с помошью
1766 <screen>./configure --enable-dvb</screen>
1767 Если заголовочные файлы ost находятся не в стандартных каталогах, укажите путь с
1768 <screen>
1769 ./configure --with-extraincdir=<replaceable>каталог исходников DVB</replaceable>/ost/include
1770 </screen>
1771 Затем компилируйте и устанавливайте как обычно.
1772 </para>
1774 <formalpara>
1775 <title>ИСПОЛЬЗОВАНИЕ</title>
1776 <para>
1777 Аппаратное декодирование потоков, содержащих MPEG-1/2 видео и/или MPEG аудио, может быть
1778 выполнено следующей командой:
1779 <screen>mplayer -ao mpegpes -vo mpegpes <replaceable>file.mpg|vob</replaceable></screen>
1780 </para>
1781 </formalpara>
1783 <para>
1784 Декодирование любых других видео потоков требует транскодирования в MPEG-1,
1785 поэтому оно медленно и, возможно, не стоит неприятностей, особенно если ваш
1786 компьютер медленный.
1787 Его можно добиться, используя команду:
1788 <screen>
1789 mplayer -ao mpegpes -vo mpegpes <replaceable>yourfile.ext</replaceable>
1790 mplayer -ao mpegpes -vo mpegpes -vf expand <replaceable>yourfile.ext</replaceable>
1791 </screen></para>
1793 <para>
1794 Имейте в виду, что DVB карты поддерживают высоту изображения только 288 и 576 для PAL и
1795 240 и 480 для NTSC. Для других значений высоты вы <emphasis role="bold">должны</emphasis>
1796 отмасштабировать изображение, добавив <option>scale=ширина:высота</option> к опции
1797 <option>-vf</option> с желаемыми значениями ширины и высоты.
1798 DVB карты допускают различные значения ширины: 720, 704, 640, 512, 480, 352 и т.д. и
1799 производят аппаратное масштабирование по горизонтали, так что в большинстве случаев
1800 масштабировать по горизонтали не нужно. Для 512x384 (пропорции 4:3) MPEG-4 (DivX)
1801 попробуйте:
1802 </para>
1804 <para>Если у вас есть широкоформатный фильм и вы не хотите растягивать его на
1805 полную высоту, используйте плагин <option>expand=w:h</option> для добавления черных
1806 полос. Чтобы посмотреть 640x384 MPEG-4 (DivX), попробуйте:
1807 <screen>
1808 mplayer -ao mpegpes -vo mpegpes -vf expand=640:576 <replaceable>file.avi</replaceable>
1809 </screen>
1810 </para>
1812 <para>
1813 Если ваш CPU слишком слаб для полноразмерного 720x576 MPEG-4 (DivX), попробуйте уменьшить
1814 размер:
1815 <screen>mplayer -ao mpegpes -vo mpegpes -vf scale=352:576 <replaceable>file.avi</replaceable>
1816 </screen>
1817 </para>
1819 <para>Если скорость не увеличилась, попробуйте уменьшить размер по вертикали тоже:
1820 <screen>
1821 mplayer -ao mpegpes -vo mpegpes -vf scale=352:288 <replaceable>file.avi</replaceable>
1822 </screen>
1823 </para>
1825 <para>
1826 Для OSD и субтитров используйте возможности OSD плагина expand. Так, вместо
1827 <option>expand=w:h</option> или <option>expand=w:h:x:y</option>, используйте
1828 <option>expand=w:h:x:y:1</option> (5-й параметр <option>:1</option> в конце для
1829 включения OSD рендеринга). Вы можете слегка подвинуть изображение вверх, чтобы получить
1830 большую черную область для субтитров. Вы также можете переместить субтитры вверх, если
1831 они выходят за пределы TV экрана, используйте для этого <option>-subpos &lt;0-100&gt;</option>
1832 (<option>-subpos 80</option> - хороший выбор).
1833 </para>
1835 <para>
1836 Чтобы воспроизвести не-25fps фильмы на PAL TV или на машине со слабым CPU, добавьте опцию
1838 <option>-framedrop</option>.
1839 </para>
1841 <para>
1842 Для сохранения пропорций MPEG-4 (DivX) файлов и получения оптимальных параметров
1843 масштабирования (аппаратное горизонтальное и программное вертикальное масштабирование с
1844 сохранением пропорций), используйте плагин dvbscale:
1845 <screen>
1846 for a  4:3 TV: -vf dvbscale,scale=-1:0,expand=-1:576:-1:-1:1
1847 for a 16:9 TV: -vf dvbscale=1024,scale=-1:0,expand=-1:576:-1:-1:1
1848 </screen>
1849 </para>
1851 <formalpara><title>Цифровое TV (DVB драйвер ввода )</title>
1852 <para>Вы можете использовать DVB карту для просмотра Цифрового TV.</para>
1853 </formalpara>
1855 <para>
1856 Вы должны иметь установленные программы <command>scan</command> и
1857 <command>szap/tzap/czap/azap</command>; все они входят в пакет драйверов.
1858 </para>
1860 <para>
1861 Проверьте, что ваши драйверы правильно работают с такими программами, как
1862 <ulink url="http://sf.net/projects/dvbtools/"><command>dvbstream</command></ulink>
1863 (это основа DVB драйвера ввода).
1864 </para>
1866 <para>
1867 Теперь вам следует создать файл <filename>~/.mplayer/channels.conf</filename>,
1868 с понятным <command>szap/tzap/czap/azap</command> синтаксисом, или
1869 позволить <command>scan</command> сделать это для вас.
1870 </para>
1872 <para>
1873 Если у вас несколько разнотипных карт (например, для спутникового TV, наземного ,
1874 кабельного и ATSC), можете сохранить файлы как
1875 <filename>~/.mplayer/channels.conf.sat</filename>,
1876 <filename>~/.mplayer/channels.conf.ter</filename>,
1877 <filename>~/.mplayer/channels.conf.cbl</filename>,
1878 и <filename>~/.mplayer/channels.conf.atsc</filename>,
1879 соответственно, с тем, чтобы можно было явно указать <application>MPlayer</application>
1880 какой файл использовать вместо стандартного <filename>~/.mplayer/channels.conf</filename>,
1881 и какую карту с ним использовать.
1882 </para>
1884 <para>
1885 Убедитесь, что в <filename>channels.conf</filename> находятся каналы
1886 !-- FIXME Free to Air -->
1887 <emphasis>только</emphasis> для обычного телевидения[Free to Air], иначе
1888 <application>MPlayer</application> будет ожидать передачи незашифрованных данных.
1889 </para>
1891 <para>
1892 В полях аудио и видео вы можете использовать расширенный синтаксис:
1893 <option>...:pid[+pid]:...</option> (в каждом максимум  6 pid'ов);
1894 в этом случае <application>MPlayer</application> включит в поток все указанные
1895 pid плюс pid 0 (содержащий PAT). В каждую строку всегда следует включать
1896 PMT и PCR pid'ы для соответствующего канала (если вы их знаете).
1897 Также можно указать 8192, при этом будут выбраны все pid на этой частоте, и Вы сможете
1898 потом переключаться между программами при помощи TAB.
1899 Это может потребовать большей пропускной способности, однако дешевые карты
1900 всегда пересылают все каналы как минимум до ядра, так что в этом случае разница
1901 будет небольшой.
1902 Другие возможные применения: телетекст pid, второая аудио дорожка, и т.д.
1903 </para>
1905 <para>
1906 Если <application>MPlayer</application> часто жалуется на
1907 <screen>Too many video/audio packets in the buffer</screen> или
1908 если вы заметили растущую рассинхронизацию между звуком и видео
1909 проверьте наличие PCR pid'а в вашем потоке (требующегося для
1910 соблюдения модели буферизации передатчика) и/или
1911 попробуйте воспользоваться libavformat MPEG-TS декодером, добавив
1912 <option>-demuxer lavf -lavfdopts probesize=128</option> в
1913 командную строку.
1914 </para>
1916 <para>
1917 Для показа первого из доступных каналов, запустите
1918 <screen>mplayer dvb://</screen>
1919 </para>
1921 <para>
1922 Если вы хотите посмотреть определенный канал, например R1, запустите
1923 <screen>mplayer dvb://R1</screen>
1924 </para>
1926 <para>
1927 Если у вас больше одной карты, также надо указать номер той, с которой доступен канал:
1928 <screen>mplayer dvb://2@R1</screen>
1929 </para>
1931 <para>
1932 Для смены канала, нажимайте клавиши <keycap>h</keycap> (следующий) и
1933 <keycap>k</keycap> (предыдущий), или используйте
1934 <link linkend="osdmenu">OSD меню</link>.
1935 </para>
1937 <para>
1938 Для временного отключения аудио или видео потока скопируйте
1939 следующие строки в <filename>~/.mplayer/input.conf</filename>:
1940 <screen>
1941 % set_property  switch_video -2
1942 &amp; step_property switch_video
1943 ? set_property  switch_audio -2
1944 ^ step_property switch_audio
1945 </screen>
1946 (Заменяя горячие клавиши по своему усмотрению.) При нажатии на клавишу,
1947 соответствующую switch_x -2, поток будет закрыт;
1948 при нажатии на клавишу, соответствующую step_x, поток будет открыт снова.
1949 Имейте в виду, что этот механизм переключения не будет работать как следует,
1950 когда в мультиплексоре присутствует несколько аудио или видео потоков.
1951 </para>
1953 <para>
1954 Во время воспроизведения (не во время записи) для предотвращения заикания
1955 и таких ошибок, как 'Your system is too slow', имеет смысл добавить
1956 <screen>
1957 -mc 10 -speed 0.97 -af scaletempo
1958 </screen>
1959 к опциям командной строки, исправив параметры scaletempo по своему усмотрению.
1960 </para>
1962 <para>
1963 Если ваш <filename>~/.mplayer/menu.conf</filename> содержит запись
1964 <literal>&lt;dvbsel&gt;</literal>, как в файле с примерами
1965 <filename>etc/dvb-menu.conf</filename> (можете использовать его чтобы
1966 перезаписать <filename>~/.mplayer/menu.conf</filename>), главное меню
1967 будет отображать подменю, позволяющее вам выбрать один из присутствующих
1968 в <filename>channels.conf</filename> каналов, возможно, с предшествующим
1969 ему подменю с DVB выбором карт, доступных <application>MPlayer</application>.
1970 </para>
1972 <para>
1973 Если хотите записать какую-то программу на диск, используйте
1974 <screen>mplayer -dumpfile r1.ts -dumpstream dvb://R1</screen>
1975 </para>
1977 <para>
1978 Если хотите вместо этого записать ее в другом формате (перекодировать), следует
1979 использовать такую команду:
1980 <screen>
1981 mencoder -o <replaceable>r1.avi</replaceable> -ovc xvid -xvidencopts bitrate=800 \
1982     -oac mp3lame -lameopts cbr:br=128 -pp=ci dvb://R1
1983 </screen>
1984 </para>
1986 <para>
1987 Полный список опций для DVB драйвера ввода можно найти на странице руководства man.
1988 </para>
1990 <formalpara><title>БУДУЩЕЕ</title>
1991 <para>
1992 Если у вас есть вопросы, или вы хотите получать сообщения о новых возможностях и
1993 принять участие в дискуссиях на эту тему, подпишитесь на список рассылки
1994 <ulink url="http://lists.mplayerhq.hu/mailman/listinfo/mplayer-dvb">MPlayer-DVB</ulink>.
1995 Помните, что язык рассылки - Английский.
1996 </para>
1997 </formalpara>
1999 <para>
2000 В будущем вы можете рассчитывать на возможность отображения OSD и субтитров,
2001 используя встроенные OSD возможности DVB карт.
2002 </para>
2003 </sect2>
2005 <!-- ********** -->
2007 <sect2 id="dxr2">
2008 <title>DXR2</title>
2010 <para>
2011 <application>MPlayer</application> поддерживает аппаратное ускорение воспроизведения
2012 с картами Creative DXR2.
2013 </para>
2015 <para>
2016 Прежде всего вам потребуется правильно установленные DXR2 драйверы. Их и руководство по
2017 установке можно найти на сайте <ulink url="http://dxr2.sf.net/">Ресурсного Центра DXR2</ulink>.
2018 </para>
2020 <variablelist>
2021 <title>ИСПОЛЬЗОВАНИЕ</title>
2022 <varlistentry>
2023   <term><option>-vo dxr2</option></term>
2024   <listitem><para>Включить TV выход.</para></listitem>
2025 </varlistentry>
2026 <varlistentry>
2027   <term><option>-vo dxr2:x11</option> or <option>-vo dxr2:xv</option></term>
2028   <listitem><para>Включить вывод через оверлей в X11.</para></listitem>
2029 </varlistentry>
2030 <varlistentry>
2031   <term><option>-dxr2 &lt;option1:option2:...&gt;</option></term>
2032   <listitem><para>Эта опция используется для управления драйвером DXR2.</para></listitem>
2033 </varlistentry>
2034 </variablelist>
2036 <para>
2037 Чипсет оверлея, использовавшийся на DXR2 довольно плохого качества, но
2038 с настройками по-умолчанию будет работать у всех. OSD может работать
2039 с оверлеем (не на TV), отрисовывая себя в ключевом цвете[colorkey].
2040 С настройками ключевого цвета[colorkey] по-умолчанию, вы можете получить
2041 разные результаты, скорее всего увидите ключевой цвет[colorkey] вокруг
2042 символов или другие забавные эффекты. Но при правильных настройках,
2043 можно получить вполне приемлемый результат.
2044 </para>
2046 <para>Смотрите страницу man руководства для списка доступных опций.</para>
2047 </sect2>
2049 <!-- ********** -->
2051 <sect2 id="dxr3">
2052 <title>DXR3/Hollywood+</title>
2053 <para>
2054 <application>MPlayer</application> поддерживает аппаратно ускоренное воспроизведение
2055 картами Creative DXR3 и Sigma Designs Hollywood Plus. Обе эти карты используют
2056 MPEG декодер на чипе em8300 от Sigma Designs
2057 </para>
2059 <para>
2060 Прежде всего вам потребуются правильно установленные драйвера DXR3/H+, версии
2061 0.12.0 или выше. Драйверы и инструкции по установке могут быть найдены на
2062 сайте <ulink url="http://dxr3.sf.net/">DXR3 &amp; Hollywood Plus для Linux</ulink>
2063 <filename>configure</filename> должен автоматически определить вашу карту,
2064 компиляция должна пройти без проблем.
2065 </para>
2067 <!-- FIXME: find a more clear presentation -->
2068 <variablelist>
2069 <title>ИСПОЛЬЗОВАНИЕ</title>
2070 <varlistentry>
2071 <term><option>-vo dxr3:prebuf:sync:norm=x:<replaceable>device</replaceable></option></term>
2072 <listitem><para>
2073 Опция <option>overlay</option> активирует оверлей вместо TV-out. Для корректной работы
2074 она требует его правильной настройки. Самый простой способ правильно его
2075 настроить - сначала запустить autocal, затем запустить mplayer с драйвером
2076 dxr3 и выключенным оверлеем, потом запустить dxr3view. В dxr3view вы можете
2077 менять настройки оверлея и видеть результат в реальном времени, может быть,
2078 в будущем эта возможность будет поддерживаться в <application>MPlayer</application>
2079 GUI. После того как оверлей правильно настроен, надобность в dxr3view отпадает.
2080 Опция <option>prebuf</option> включает пребуферинг. Пребуферинг - это возможность
2081 чипа em8300, позволяющая ему хранить более одного кадра видео в каждый момент времени.
2082 Это значит, что при включенном пребуферинге <application>MPlayer</application>
2083 будет пытаться всегда держать буфер заполненным данными. Если у вас медленная машина,
2084 то <application>MPlayer</application> будет забирать практически 100% CPU.
2085 Это особенно часто случается, если вы воспроизводите чистые MPEG потоки
2086 (DVD, SVCD и т.д.), т.к., поскольку <application>MPlayer</application> не должен
2087 перекодировать их в MPEG, то он заполняет буфер очень быстро.
2088 С пребуферингом воспроизведение видео <emphasis role="bold">значительно</emphasis>
2089 меньше зависит от остальных программ, прибирающих к рукам CPU, он не будет
2090 терять кадры, кроме случая, когда приложения захватит CPU на довольно длительное
2091 время. При запуске без пребуферинга, em8300 намного более чувствителен к
2092 загрузке CPU, так что настоятельно рекомендуется включить <option>-framedrop</option>
2093 опцию <application>MPlayer</application> для избежания потери синхронизации.
2094 <option>sync</option> включит алгоритм синхронизации. Пока что это еще
2095 экспериментальная возможность. С включенной sync возможностью будут постоянно
2096 проверяться встроенные часы em8300, и если начинается отклонение от
2097 часов <application>MPlayer</application> чип будет сброшен, что приведет к
2098 пропуску всех запаздывающих кадров.
2099 </para><para>
2100 <option>norm=x</option> установит TV стандарт DXR3 карты без необходимости
2101 использования внешних утилит вроде em8300setup. Допустимые стандарты: 5 = NTSC, 4 = PAL-60,
2102 3 = PAL. Специальные стандарты 2 (автонастройка, используя  PAL/PAL-60) и 1 (автонастройка
2103 используя PAL/NTSC) решают какой стандарт использовать на основе частоты кадров.
2104 because they decide which norm to use by looking at the frame
2105 rate of the movie. norm = 0 (по-умолчанию) не изменяет текущий стандарт.
2106 </para><para>
2107 <option><replaceable>device</replaceable></option> = номер устройства, если их у вас несколько
2108 em8300 карт.
2109 Любые из этих опций могут быть опущены.
2110 </para><para>
2111 <option>:prebuf:sync</option>, похоже, отлично работает при воспроизведении фильмов MPEG-4 (DivX).
2112 Пользователи сообщали о проблемах при использования prebuf опции при воспроизведении
2113 файлов MPEG-1/2. Вы можете попробовать запустить программу сначала вообще без указания опций,
2114 если же имеете проблемы с синхронизацией или с DVD субтитрами, попытайтесь с <option>:sync</option>.
2115 </para></listitem>
2116 </varlistentry>
2118 <varlistentry>
2119   <term><option>-ao oss:/dev/em8300_ma-<replaceable>X</replaceable></option></term>
2120   <listitem><para>
2121   Для вывода звука, где <replaceable>X</replaceable> - номер устройства (0, если карта одна).
2122   </para></listitem>
2123 </varlistentry>
2125 <varlistentry>
2126   <term><option>-af resample=<replaceable>xxxxx</replaceable></option></term>
2127   <listitem><para>
2128   em8300 не может воспроизводить частоты дискретизации ниже 44100Hz. Если частота
2129   ниже 44100Hz, выберите либо 44100Hz, либо 48000Hz в зависимости от
2130   того, какая частота ближайшая. Т.е. если фильм использует 22050Hz укажите 44100Hz, т.к.
2131   44100 / 2 = 22050, если 24000Hz, используйте 48000Hz, т.к. 48000 / 2 = 24000 и т.д.
2132   Это не работает с цифровым выводом звука (<option>-ac hwac3</option>).
2133   </para></listitem>
2134 </varlistentry>
2136 <varlistentry>
2137   <term><option>-vf lavc</option></term>
2138   <listitem><para>
2139   Для просмотра не-MPEG контента на em8300 (напрмер MPEG-4 (DivX) или RealVideo)
2140   вы должны указать MPEG-1 видеоплагин, такой как
2141   <systemitem class="library">libavcodec</systemitem> (lavc).
2142   Дополнительную информацию о <option>-vf lavc</option> смотрите на странице
2143   руководства man. На данный момент неизвестно способа установить
2144   значение fps для em8300, что означает фиксированную величину, равную 30000/1001 fps,
2145   поэтому крайне рекомендуется использовать
2146   <option>-vf lavc=<replaceable>quality</replaceable>:25</option>, особенно, если
2147   используете пребуферинг. Почему 25, а не 30000/1001? Ну, причина в том, что при
2148   использовании 30000/1001 изображение начинает слегка дрожать. Причина нам неизвестна.
2149   Если вы ставите это значение где-то между 25 и 27 картинка стабилизируется.
2150   Пока что мы можем только принять это как факт
2151   </para></listitem>
2152 </varlistentry>
2154 <varlistentry>
2155   <term><option>-vf expand=-1:-1:-1:-1:1</option></term>
2156   <listitem><para>
2157   Хотя драйвер DXR3 может помещать некоторый OSD в  MPEG-1/2/4 видео, он
2158   имеет намного более плохое качество, чем традиционный OSD
2159   <application>MPlayer</application>, и имеет несколько проблем при обновлении к
2160   тому же. Команда, указанная выше, сначала отконвертирует входное видео в
2161   MPEG-4 (это обязательно, извините), затем применит плагин expand, который не будет
2162   ничего расширять (-1: по-умоляанию), но наложит нормальное OSD на картинку
2163   (это все, что делает "1" в конце строки).
2164   </para></listitem>
2165 </varlistentry>
2167 <varlistentry>
2168   <term><option>-ac hwac3</option></term>
2169   <listitem><para>
2170   em8300 поддерживает воспроизведение звука AC-3 (окружающий звук) через
2171   цифровой аудио выход карты.Смотрите опцию <option>-ao oss</option> выше,
2172   она должна использоваться для указания вывода через DXR3 вместо звуковой карты.
2173   </para></listitem>
2174 </varlistentry>
2175 </variablelist>
2176 </sect2>
2178 </sect1>
2181 <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
2184 <sect1 id="other">
2185 <title>Другое оборудование вывода видео</title>
2187 <sect2 id="zr">
2188 <title>Zr</title>
2190 <para>
2191 Это видеодрайвер (<option>-vo zr</option>) для некоторого количества MJPEG карт
2192 захвата/воспроизведения (тестировался на DC10+ и Buz, но также должен работать для
2193 LML33, DC10). Драйвер работает, кодируя кадр в JPEG, и отправляя его карте.
2194 Для кодирования JPEG используется и требуется библиотека
2195 <systemitem class="library">libavcodec</systemitem>.
2196 Со специальным режимом <emphasis>cinerama</emphasis>,
2197 вы можете смотреть фильмы на действительно широком экране, который можно получить,
2198 иемя два проектора и две MJPEG карты.  В зависимости от разрешения
2199 и настроек качества, этот драйвер может потребовать существенной мощности CPU,
2200 не забывайте указывать <option>-framedrop</option>, если маша машина
2201 слишком медленная. Замечание: Мой AMD K6-2 350МГц является (с
2202 <option>-framedrop</option>) вполне подходящим для просмотра материала размера VCD,
2203 и фильмов с уменьшенным разрешением.
2204 </para>
2206 <para>
2207 Этот драйвер общается с драйвером ядра, доступном на
2208 <ulink url="http://mjpeg.sf.net"/>, так что сначала должен корректно заработать  второй.
2209 Наличие MJPEG карты автоматически определяется скриптом
2210 <filename>configure</filename>, если этого не происходит, включите принудительное определение
2211 при помощи
2212 <screen>./configure --enable-zr</screen>
2213 </para>
2215 <para>
2216 Вывод может управляться несколькими опциями, подробные описания можно найти
2217 на странице руководства man, короткий список опций получите, выполнив
2218 <screen>mplayer -zrhelp</screen>
2219 </para>
2221 <para>
2222 Такие вещи как масштабирование и OSD не осуществляются этим
2223 драйвером, но могут быть сделаны, используя видеоплагины. Например, предположим, что
2224 вы имеете фильм с разрешением 512x272 и хотите просмотреть эго в полноэкранном
2225 режиме на DC10+. Есть три главные возможности: вы можете отмасштабировать фильм
2226 до ширины 768, 384 или 192. По причинам производительности и качества я бы
2227 выбрал масштабирование до 384x204, используя быстрый билинейный программный
2228 модуль. Командная строка:
2229 <screen>
2230 mplayer -vo zr -sws 0 -vf scale=384:204 <replaceable>movie.avi</replaceable>
2231 </screen>
2232 </para>
2234 <para>
2235 Обрезка может быть выполнена плагином <option>crop</option> и самим драйвером.
2236 Предполагая, что фильм слишком широк для отображения на Buz, и вы хотите
2237 использовать <option>-zrcrop</option> для уменьшения ширины, то необходимо применить
2238 следующую команду:
2239 <screen>
2240 mplayer -vo zr -zrcrop 720x320+80+0 <replaceable>benhur.avi</replaceable>
2241 </screen>
2242 </para>
2244 <para>
2245 Если вы хотите использовать плагин <option>crop</option>, выполните
2246 <screen>
2247 mplayer -vo zr -vf crop=720:320:80:0 <replaceable>benhur.avi</replaceable>
2248 </screen>
2249 </para>
2251 <para>
2252 Дополнительное указание <option>-zrcrop</option> активизирует
2253 режим <emphasis>cinerama</emphasis>, т.е. вы можете распределить фильм на несколько
2254 TV или проекторов для создания большего экрана. Предположим у вас два проектора.
2255 Левый подключен к Buz на <filename>/dev/video1</filename>,а правый подключен
2256 к DC10+ на <filename>/dev/video0</filename>. Фильм имеет разрешение 704x288.
2257 Также предположим, что вы хотите выводить на правый проектор в черно-белом цвете, а
2258 левый должен иметь JPEG кадры качества 10. в этом случае вы должны указать:
2259 <screen>
2260 mplayer -vo zr -zrdev /dev/video0 -zrcrop 352x288+352+0 -zrxdoff 0 -zrbw \
2261     -zrcrop 352x288+0+0 -zrdev /dev/video1 -zrquality 10 \
2262         <replaceable>movie.avi</replaceable>
2263 </screen>
2264 </para>
2266 <para>
2267 Можно видеть, что опции, встречающиеся до второго <option>-zrcrop</option>, применяются
2268 только к DC10+, а опции после второго применяются только к Buz.
2269 Максимальное количество карт для режима <emphasis>cinerama</emphasis> равно
2270 четырем, так что вы можете построить 2x2 видеостену.
2271 </para>
2273 <para>
2274 Наконец важное замечание: Не запускайте и не останавливайте XawTV на устройстве
2275 воспроизведения, это может подвесить ваш компьютер. Тем не менее, можно прекрасно
2276 <emphasis role="bold">СНАЧАЛА</emphasis> запустить XawTV, <emphasis role="bold">ЗАТЕМ</emphasis>
2277 запустить <application>MPlayer</application>, подождать, пока <application>MPlayer</application>
2278 завершит работу и <emphasis role="bold">ЗАТЕМ</emphasis> остановить XawTV.
2279 </para>
2280 </sect2>
2282 <!-- ********** -->
2284 <sect2 id="blinkenlights">
2285 <title>Blinkenlights[Мерцающие огни?]</title>
2286 <para>
2287 Этот драйвер способен воспроизводить, используя Blinkenlights UDP протокол. Если не
2288 знаете, что такое <ulink url="http://www.blinkenlights.de/">Blinkenlights</ulink>
2289 или его преемник <ulink url="http://www.blinkenlights.de/arcade/">Arcade</ulink>,
2290 выясните это. Хотя это, возможно, реже всего используемый драйвер, без сомнения,
2291 это самая клевая вещь, предлагаемая <application>MPlayer</application>. Просто
2292 посмотрите некоторые из
2293 <ulink url="http://www.blinkenlights.de/video.en.html">видеороликов документации Blinkenlights</ulink>.
2294 На видео Arcade вы можете видеть драйвер видеовывода Blinkenlights в действии в 00:07:50.
2295 </para>
2296 </sect2>
2297 </sect1>
2300 <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
2303 <sect1 id="tvout">
2304 <title>Поддержка TV-выхода</title>
2306 <sect2 id="tvout-mga-g400">
2307 <title>Matrox G400 карты</title>
2309 <para>
2310 Под Linux есть два способа получить работающий TV выход на G400:
2311 </para>
2313 <important>
2314 <para>
2315 инструкции по TV-выходу для Matrox G450/G550, смотрите в следующем разделе!
2316 </para>
2317 </important>
2319 <variablelist>
2320 <varlistentry>
2321   <term>XFree86</term>
2322   <listitem>
2323     <para>
2324     Используя драйвер и HAL модуль, доступный с
2325     <ulink url="http://www.matrox.com">сайта Matrox</ulink>. Это даст вам X на TV.
2326     </para>
2327     <para>
2328     <emphasis role="bold">Этот метод на дает ускоренного воспроизведения</emphasis>
2329     как под Windows! Второй выход имеет только YUV фреймбуфер, <emphasis>BES</emphasis>
2330     (Back End Scaler, модуль YUV масштабирования на картах G200/G400/G450/G550) на
2331     нем не работает! Драйвер windows как-то это обходит, возможно используя
2332     3D движок для масштабирования, а YUV фреймбуфер - для вывода отмасштабированного
2333     изображения. Если вы действительно хотите использовать X, используйте опции
2334     <option>-vo x11 -fs -zoom</option>, но это будет <emphasis role="bold">МЕДЛЕННО</emphasis>,
2335     и будет иметь включенную защиту от копирования <emphasis role="bold">Macrovision</emphasis>
2336     (можно "обойти" Macrovision используя этот
2337     <ulink url="http://avifile.sf.net/mgamacro.pl">скрипт на perl</ulink>).
2338     </para>
2339   </listitem>
2340 </varlistentry>
2341 <varlistentry>
2342   <term>Framebuffer</term>
2343   <listitem>
2344     <para>
2345     Используя <emphasis role="bold">модули matroxfb</emphasis> в 2.4 ядрах.
2346     2.2 ядра не имеют в этих модулях возможности работы с TV-out, так что для нашего
2347     дела непригодны. Вы должны включить ВСЕ matroxfb-относящиеся возможности во время компиляции
2348     (кроме MultiHead), и скомпилировать их в <emphasis role="bold">модули</emphasis>!
2349     Вам также необходима задействованная I2C.
2350     </para>
2352     <procedure>
2353     <step><para>
2354       Войдите в <filename class="directory">TVout</filename> и наберите
2355       <command>./compile.sh</command>. Установите
2356       <filename>TVout/matroxset/matroxset</filename>
2357       куда-нидудь в ваши <envar>PATH</envar>.
2358     </para></step>
2359     <step><para>
2360       Если вы еще не имеете установленного <command>fbset</command>, поместите
2361       <filename>TVout/fbset/fbset</filename>
2362       куда-нибуть в ваши <envar>PATH</envar>.
2363     </para></step>
2364     <step><para>
2365       Еслы <command>con2fb</command> у вас еще не установлен, поместите
2366       <filename>TVout/con2fb/con2fb</filename>
2367       куда-нибуть в ваши <envar>PATH</envar>.
2368     </para></step>
2369     <step><para>
2370       Затем войдите в каталог <filename class="directory">TVout/</filename>
2371       в исходниках <application>MPlayer</application>, и запустите
2372       <filename>./modules</filename> от имени root. Ваша консоль из текстового режима
2373       переключится в режим фреймбуфера (обратно не получится!).
2374     </para></step>
2375     <step><para>
2376       Затем, ОТРЕДАКТИРУЙТЕ и запустите скрипт <filename>./matroxtv</filename>.
2377       Он покажет вам очень простое меню. Нажмите <keycap>2</keycap> и
2378       <keycap>Enter</keycap>. Теперь вы должны иметь одинаковую картинку на
2379       мониторе и TV. Если картинка на TV (PAL по-умолчанию) имеет некоторые
2380       странные полосы, значит скрипт не смог корректно установить разрешение
2381       (на 640x512 по-умолчанию). Попробуйте другие разрешения из меню
2382       и/или поэкспериментируйте с fbset.
2383     </para></step>
2384     <step><para>
2385       Йоу. Следующая задача - убрать курсор с tty1 (или где он есть), и выключить
2386       гашение экрана. Запустите следующие команды:
2388       <screen>
2389 echo -e '\033[?25l'
2390 setterm -blank 0<!--
2391    --></screen>
2392       or
2393       <screen>
2394 setterm -cursor off
2395 setterm -blank 0<!--
2396    --></screen>
2397       Возможно вы захотите поместить вышеуказанное в скрипт, добавив очистку экрана.
2398       Чтобы вернуть курсор назад
2399       <screen>echo -e '\033[?25h'</screen> или
2400       <screen>setterm -cursor on</screen>
2401     </para></step>
2402     <step><para>
2403       Готово. Запускайте воспроизведение
2404       <screen>
2405 mplayer -vo mga -fs -screenw 640 -screenh 512 <replaceable>filename</replaceable><!--
2406    --></screen>
2408       (Если используете X, переключитесь теперь в matroxfb при помощи, например
2409       <keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>F1</keycap></keycombo>.)
2410       Замените <literal>640</literal> и <literal>512</literal>, если установили другое
2411       разрешение...
2412     </para></step>
2413     <step><para>
2414       <emphasis role="bold">Наслаждайтесь супер-быстрым, супер-навороченным выводом Matrox TV
2415       (лучше чем Xv)!</emphasis>
2416     </para></step>
2417     </procedure>
2418   </listitem>
2419 </varlistentry>
2420 </variablelist>
2422 <formalpara><title>Создание кабеля Matrox TV-out</title>
2423 <para>
2424 Никто не дает никаких гарантий и не несет никакой ответственности
2425 за возможное нанесение ущерба, вызванное выполнением инструкций, указанныех в этой
2426 документации.
2427 </para>
2428 </formalpara>
2429 <!-- FIXME check for correct translation of cable pins assignments -->
2430 <formalpara>
2431 <title>Кабель для G400</title>
2432 <para>
2433 Четвертый контакт CRTC2 коннектора - это композитный видео сигнал. Земля - шестой,
2434 седьмой и восьмой контакты. (информация получена от Bal&#225;zs R&#225;cz)
2435 </para>
2436 </formalpara>
2438 <formalpara><title>Кабель для G450</title>
2439 <para>
2440 Первый контакт CRTC2 коннектора - это композитный видео сигнал. Земля - пятый,
2441 шестой, седьмой и пятнадцатый (5, 6, 7, 15) контакты.
2442 (информация получена от Bal&#225;zs Kerekes)
2443 </para>
2444 </formalpara>
2445 </sect2>
2447 <!-- ********** -->
2449 <sect2 id="tv-out_matrox_g450">
2450 <title>Matrox G450/G550 карты</title>
2451 <para>
2452 Поддержка TV выхода для этих карт была добавлена недавно, и пока отсутствует в основном
2453 ядре. В данный момент <emphasis role="bold">mga_vid</emphasis> не может быть использован
2454 AFAIK, поскольку дрйвер G450/G550 работает только в одной конфигурации:
2455 первый чип CRTC (с наибольшим количеством возможностей) на первом экране
2456 (мониторе), и второй чип CRTC (без <emphasis role="bold">BES</emphasis> - для объяснения,
2457 что такое BES, смотрите раздел о G400 выше) на TV. Так что в настоящий момент вы
2458 можете использовать только драйвер вывода <emphasis>fbdev</emphasis> программы
2459 <application>MPlayer</application>.
2460 </para>
2462 <para>
2463 Первый CRTC не может быть перенаправлен на второй выход на текущий момент.
2464 Автор драйвера ядра matroxfb - Petr Vandrovec - возможно добавит поддержку для
2465 этого, отображая вывод первого CRTC одновременно на два выхода, как в данный момент и
2466 рекомендуется для G400, смотрите раздел выше.
2467 </para>
2469 <para>
2470 Необходимый патч для ядра и детальное HOWTO можно скачать с
2471 <ulink url="http://www.bglug.ca/matrox_tvout/"/>
2472 </para>
2473 </sect2>
2475 <!-- ********** -->
2477 <sect2 id="tvout-ati">
2478 <title>ATI карты</title>
2480 <formalpara><title>ПРЕАМБУЛА</title>
2481 <para>
2482 Сейчас ATI не хочет поддерживать ни один из ее TV-out чипов под Linux, по причине
2483 технологии лицензированной ими у Macrovision.
2484 </para>
2485 </formalpara>
2487 <itemizedlist>
2488 <title>СТАТУС ПОДДЕРЖКИ TV-OUT ДЛЯ КАРТ ATI ПОД LINUX</title>
2489 <listitem><para>
2490   <emphasis role="bold">ATI Mach64</emphasis>:
2491   поддерживается <ulink url="http://gatos.sf.net">GATOS</ulink>.
2492 </para></listitem>
2493 <listitem><para>
2494   <emphasis role="bold">ASIC Radeon VIVO</emphasis>:
2495   поддерживается <ulink url="http://gatos.sf.net">GATOS</ulink>.
2496 </para></listitem>
2497 <listitem><para>
2498   <emphasis role="bold">Radeon</emphasis> и <emphasis role="bold">Rage128</emphasis>:
2499   поддерживается <application>MPlayer</application>!
2500   Смотрите разделы <link linkend="vesa">VESA драйвер</link> и
2501   <link linkend="vidix">VIDIX</link>.
2502 </para></listitem>
2503 <listitem><para>
2504   <emphasis role="bold">Rage Mobility P/M, Radeon, Rage 128, Mobility M3/M4</emphasis>:
2505   поддерживается <ulink url="http://www.stud.uni-hamburg.de/users/lennart/projects/atitvout/">atitvout</ulink>.
2506 </para></listitem>
2507 </itemizedlist>
2509 <para>
2510 Для других карт просто используйте <link linkend="vesa">VESA</link> драйвер, без
2511 VIDIX. Конечно, требуется мощный CPU.
2512 </para>
2514 <para>
2515 Единственная вещь, которую надо сделать - <emphasis role="bold">Иметь TV коннектор
2516 подключенным до загрузки вашего PC</emphasis>, поскольку видео BIOS инициализирует
2517 себя только один раз во время POST процедуры.
2518 </para>
2519 </sect2>
2521 <!-- ********** -->
2523 <sect2 id="tvout-nvidia">
2524 <title>nVidia</title>
2525 <para>
2526 Во-первых, вы ДОЛЖНЫ скачать закрытые драйверы с <ulink url="http://nvidia.com"/>.
2527 Я не буду описывать процесс установки и настройки, поскольку это выходит за рамки данной
2528 документации.
2529 </para>
2531 <para>
2532 После того, как XFree86, XVideo, и 3D ускорение заработает правильно, отредактируйте раздел
2533 Device для вашей карты в файле <filename>XF86Config</filename>, в соответствии с
2534 указанным ниже примером (адаптируйте к вашей карте/TV):
2536 <programlisting>
2537 Section "Device"
2538         Identifier      "GeForce"
2539         VendorName      "ASUS"
2540         BoardName       "nVidia GeForce2/MX 400"
2541         Driver          "nvidia"
2542         #Option         "NvAGP" "1"
2543         Option          "NoLogo"
2544         Option          "CursorShadow"  "on"
2546         Option          "TwinView"
2547         Option          "TwinViewOrientation" "Clone"
2548         Option          "MetaModes" "1024x768,640x480"
2549         Option          "ConnectedMonitor" "CRT, TV"
2550         Option          "TVStandard" "PAL-B"
2551         Option          "TVOutFormat" "Composite"
2552 EndSection
2553 </programlisting>
2554 </para>
2556 <para>
2557 Конечно же важная часть - это TwinView.
2558 </para>
2559 </sect2>
2561 <!-- ********** -->
2563 <sect2 id="tvout-neomagic">
2564 <title>NeoMagic</title>
2565 <para>
2566 Чип NeoMagic найден на различных ноутбуках, некоторые из которых оснащаются
2567 простым аналоговым TV кодером, некоторые имеют более продвинутый.
2568 <itemizedlist>
2569 <listitem><para>
2570   <emphasis role="bold">Чип аналогового кодера</emphasis>:
2571   Сообщалось, что надежный TV выход можно получить, используя
2572   <option>-vo fbdev</option> или <option>-vo fbdev2</option>.
2573   Вам требуется иметь vesafb скомпилированный в вашем ядре и передать
2574   следующие параметры в командной строке ядра:
2575   <option>append="video=vesafb:ywrap,mtrr" vga=791</option>.
2576   Вам следует запустить <application>X</application>, затем переключитесь в
2577   консольный режим при помощи, например,
2578   <keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>F1</keycap></keycombo>.
2579   Если вы не запустите <application>X</application> до запуска
2580   <application>MPlayer</application> в консоли, видео станет медленным и
2581   дрожащим[choppy] (объяснения приветствуются).
2582   Залогиньтесь в консоли и запустите следующую команду:
2584   <screen>clear; mplayer -vo fbdev -zoom -cache 8192 dvd://</screen>
2586   Теперь вы должны увидеть фильм, запущенный в консольном режиме, заполняющий
2587   примерно половину LCD экрана вашего ноутбука.
2588   Для переключения в TV нажмите
2589   <keycombo><keycap>Fn</keycap><keycap>F5</keycap></keycombo> три раза.
2590   Тестировался на Tecra 8000, 2.6.15 ядре с vesafb, ALSA v1.0.10.
2591 </para></listitem>
2592 <listitem>
2593   <para>
2594   <emphasis role="bold">Chrontel 70xx чип кодирования</emphasis>:
2595   Найден на IBM Thinkpad 390E и, возможно, других Thinkpad или ноутбуках.
2596   </para><para>
2597   Необходимо использовать <option>-vo vesa:neotv_pal</option> для PAL или
2598   <option>-vo vesa:neotv_ntsc</option> для NTSC.
2599   Это даст TV выход, работающий в следующих 16 bpp и 8 bpp режимах:
2600   </para>
2601   <itemizedlist>
2602     <listitem><para>NTSC 320x240, 640x480 and maybe 800x600 too.</para></listitem>
2603     <listitem><para>PAL  320x240, 400x300, 640x480, 800x600.</para></listitem>
2604   </itemizedlist>
2605   <para>Режим 512x384 не поддерживается в BIOS. Вы должны масштабировать
2606   изображение в другое разрешение для задействования TV выхода. Если вы видите
2607   изображение на экране в разрешении 640x480 или 800x600, но не 320x240 или другом
2608   меньшем разрешении, вам требуется заменить две таблицы в <filename>vbelib.c</filename>.
2609   Смотрите функцию vbeSetTV для подробностей. Пожалуйста, свяжитесь  автором в этом
2610   случае.
2611   </para>
2612   <para>
2613   Известные проблемы: только VESA, не реализованы различные настройки, такие как яркость,
2614   контрастность, уровень черного, фильтр дрожания[flickfilter].
2615   </para>
2616 </listitem>
2617 </itemizedlist>
2618 </para>
2619 </sect2>
2620 </sect1>
2622 </chapter>