mpv/DOCS/xml/ru/tvinput.xml

214 lines
7.7 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="koi8-r"?>
<!-- synced with 1.11 -->
<sect1 id="tv-input" xreflabel="TV вход">
<title>TV вход</title>
<para>
В этой секции описывается, как включить <emphasis role="bold">просмотр/захват
с V4L-совместимого TV тюнера</emphasis>. См. man страницу, для описания TV опций
и кнопок управления.
</para>
<sect2 id="tv-compilation">
<title>Компиляция</title>
<procedure>
<step><para>
Во-первых, Вам нужно перекомпилировать <application>MPlayer</application>,
<filename>./configure</filename> автоматически обнаружит заголовки ядра,
относящиеся к v4l, и наличие <filename>/dev/video*</filename> устройств.
Если они существуют, будет собрана поддержка TV (см. вывод
<filename>./configure</filename>).
</para></step>
<step><para>
Убедитесь, что Ваш тюнер работает с другими TV приложениями под Linux,
например <application>XawTV</application>.
</para></step>
</procedure>
</sect2>
<sect2 id="tv-tips">
<title>Советы по использованию</title>
<para>
Полный список опций доступен на страницах руководства (man).
Вот всего несколько советов:
</para>
<itemizedlist>
<listitem>
<para>
Используйте опцию <option>channels</option>. Пример:
<screen>-tv channels=26-MTV1,23-TV2</screen>
Объяснение: при использовании такой опции, будут использоваться только каналы 26
и 23, и, кроме того, будет приятный OSD текст при переключении между каналами,
отображающий название канала. Пробелы в названиях каналов должны быть заменены
символом &quot;_&quot;.
</para>
</listitem>
<listitem>
<para>
Выберите разумные размеры изображения. Размеры изображения полученного
изображения должны делиться на 16.
</para>
</listitem>
<listitem>
<para>
Если Вы захватываете видео с вертикальным разрешением выше половины полного
разрешения (т.е. 288 для PAL или 240 для NTSC), убедитесь, что Вы включили
деинтерлейсинг[deinterlacing]. Иначе Вы получите фильм с сильными искажениями в
сценах с быстрыми движениями, и контроль битпотока, скорее всего, будет даже не
в состоянии поддерживать необходимый уровень битпотока, поскольку артефакты
от интерлейсинга[interlace] создают огромное количество мелких деталей и поэтому
отнимают большую часть трансфера[bandwidth]. Вы можете включить деинтерлейсер,
используя <option>-vf pp=DEINT_TYPE</option>. Обычно <option>pp=lb</option>
работает хорошо, но это уже субъективное мнение. Другие алгоритмы
деинтерлейсинга см. на man-странице и попробуйте их.
</para>
</listitem>
<listitem>
<para>
Обрежьте пустое пространство. Когда вы захватываете видео, часто, зоны по краям
черны или содержат просто шум. Это опять съедает часть трансфера[bandwidth].
Точнее, это не сами чёрные зоны, а контрастный переход от чёрного к более
светлому видео, но это сейчас не важно. Прежде чем Вы начнёте захватывать,
подстройте аргументы опции <option>crop</option>, чтобы обрезать весь мусор по
краям. Снова, не забудьте сохранить получившиеся размеры изображения
допустимыми.
</para>
</listitem>
<listitem>
<para>
Отслеживайте загрузку CPU. Она не должна пересекать 90% границу большую часть
времени. Если у Вас большой размер буфера захвата,
<application>MEncoder</application> переживёт такую
загрузку в течение нескольких секунд, но не более того. Лучше отключить 3D
OpenGL хранители экрана и другую подобную гадость.
</para>
</listitem>
<listitem>
<para>
Не меняйте системные часы. <application>MEncoder</application> использует
системные часы для A/V синхронизации. Если Вы переведёте системные часы
(особенно назад), <application>MEncoder</application> запутается,
и Вы начнёте терять кадры. Это особенно
важный вопрос, если Вы подключены к сети и используете какие-нибудь программы
синхронизации времени, в духе NTP. Вы должны отключить NTP во время захвата,
если Вы действительно хотите сделать хорошую запись.
</para>
</listitem>
<listitem>
<para>
Изменяйте значение <option>outfmt</option> только если Вы знаете, что Вы
делаете,или Ваши карта/драйвер не поддерживают значение по умолчанию (
пространство цветов YV12). В старых версиях <application>MPlayer</application>/
<application>MEncoder</application> было необходимо выставлять нужное значение
формата вывода.
Эта проблема должен быть решена в текущих версиях и опция <option>outfmt
</option> больше не требуется, поскольку значение по умолчанию подходит в
большинстве случаев. Например если Вы будете захватывать в DivX, используя
<systemitem class="library">libavcodec</systemitem> и укажете
<option>outfmt=RGB24</option> для улучшения качества
полученного изображения, то Вы увидите, что в действительности, изображение все
равно будет перекодировано в YV12, поэтому все что Вы получите, это огромная
загрузка CPU.
</para>
</listitem>
<listitem>
<para>
Чтобы использовать пространство цветов I420 (<option>outfmt=i420</option>), Вы
должны указать опцию <option>-vc rawi420</option> в связи с конфликтом fourcc с
видео кодеком Intel Indeo.
</para>
</listitem>
<listitem>
<para>
Есть несколько путей захвата аудио. Вы можете получить звук, либо используя Вашу
звуковую карту и внешний кабель, соединяющий видео карту и линейный вход[line-in],
либо используя встроенный ADC на в чипе bt878. В этом случае, Вы должны
загрузить драйвер <emphasis role="bold">btaudio</emphasis>. Читайте файл
<filename>linux/Documentation/sound/btaudio</filename> (в дереве ядра, не
<application>MPlayer</application>'а) с некоторыми инструкциями по использованию этого драйвера.
</para>
</listitem>
<listitem>
<para>
Если <application>MEncoder</application> не может открыть аудио устройство,
убедитесь, что оно действительно доступно. Возможны какие-нибудь трудности со
звуковыми серверами, например arts (KDE) и esd (GNOME). Если у Вас
полнодуплексная звуковая карта (почти все современные карты это поддерживают),
и Вы используете KDE, попробуйте отметить галочку "full duplex" в меню настроек
звукового сервера.
</para>
</listitem>
</itemizedlist>
</sect2>
<sect2 id="tv-examples">
<title>Примеры</title>
<informalexample>
<para>
Фиктивный вывод, AAlib :)
<screen>
mplayer -tv driver=dummy:width=640:height=480 -vo aatv://<!--
--></screen>
</para>
</informalexample>
<informalexample>
<para>
Ввод со стандартного V4L:
<screen>
mplayer -tv driver=v4l:width=640:height=480:outfmt=i420 -vc rawi420 -vo xv tv://<!--
--></screen>
</para>
</informalexample>
<informalexample>
<para>
Более естественный пример. Это заставляет <application>MEncoder</application> захватывать полное PAL
изображение, обрезать края и деинтерлейсить картинку, используя алгоритм
линейного смешивания. Аудио сжимается до постоянного битпотока 64 кБ/с,
используя LAME кодек. Эти установки подходят для захвата фильмов.
<screen>
mencoder -tv driver=v4l:width=768:height=576 \
-ovc lavc -lavcopts vcodec=mpeg4:vbitrate=900 \
-oac mp3lame -lameopts cbr:br=64 \
-vf crop=720:544:24:16,pp=lb -o <replaceable>output.avi</replaceable> tv://
</screen>
</para>
</informalexample>
<informalexample>
<para>
Здесь, изображение будет дополнительно масштабировано до 384x288 и сжато с
битпотоком 350 кБ/с в режиме высокого качества. Опция vqmax даёт волю
квантайзеру[quantizer] и позволяет компрессору видео действительно достичь столь
низкого битпотока, правда ценой качества. Это может быть полезно для захвата
длинных TV серий, где качество не особенно важно.
<screen>
mencoder -tv driver=v4l:width=768:height=576 \
-ovc lavc -lavcopts vcodec=mpeg4:vbitrate=350:vhq:vqmax=31:keyint=300 \
-oac mp3lame -lameopts cbr:br=48 \
-vf crop=720:540:24:18,pp=tn/lb,scale=384:288 -sws 1 -o <replaceable>output.avi</replaceable> tv://
</screen>
Также возможно указать меньшие размеры изображения в опции <option>-tv</option>
и пропустить программное масштабирование, но приведённый подход использует
максимальное доступное количество информации и чуть более устойчив к шуму.
Чипы bt8x8 из-за аппаратных ограничений могут усреднять пиксели только по
горизонтали.
</para>
</informalexample>
</sect2>
</sect1>