2006-10-30 15:32:47 +00:00
<?xml version="1.0" encoding="utf-8"?>
2006-10-22 14:47:25 +00:00
<!-- synced with r20361 -->
2006-09-08 16:42:09 +00:00
<chapter id= "codecs" >
2006-10-30 15:32:47 +00:00
<title > Поддерживаемые кодеки</title>
2003-04-11 17:38:51 +00:00
2006-09-08 16:42:09 +00:00
<sect1 id= "video-codecs" >
2006-10-30 15:32:47 +00:00
<title > Видео кодеки</title>
2003-04-11 17:38:51 +00:00
<para >
2006-10-30 15:32:47 +00:00
<ulink url= "../../codecs-status.html" > Таблица статуса кодеков</ulink> содержит
полный, ежедневно обновляющийся список всех поддерживаемых кодеков. Некоторые
бинарные кодеки, которые можно использовать в MPlayer, доступны
в <ulink url= "http://www.mplayerhq.hu/design7/dload.html#binary_codecs" > разделе закачки</ulink>
нашего сайта.
2003-04-11 17:38:51 +00:00
</para>
<para >
2006-10-30 15:32:47 +00:00
Наиболее важные кодеки:
2003-04-11 17:38:51 +00:00
</para>
<itemizedlist >
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
<emphasis role= "bold" > MPEG1</emphasis> (<emphasis role= "bold" > VCD</emphasis> ) и
<emphasis role= "bold" > MPEG2</emphasis> (<emphasis role= "bold" > DVD</emphasis> ) видео
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
"родные" декодеры для <emphasis role= "bold" > всех вариантов DivX,
3ivX, M$ MPEG-4</emphasis> v1, v2 и других вариантов MPEG-4.
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
"родной" декодер для <emphasis role= "bold" > Windows Media Video 7/8</emphasis>
(<emphasis role= "bold" > WMV1/WMV2</emphasis> ), и Win32 DLL декодер
для <emphasis role= "bold" > Windows Media Video 9</emphasis>
(<emphasis role= "bold" > WMV3</emphasis> ), о б а используются в <filename > .wmv
</filename> файлах
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
"родной" <emphasis role= "bold" > Sorenson 1 (SVQ1)</emphasis> декодер
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
"родной" <emphasis role= "bold" > Sorenson 3 (SVQ3)</emphasis> декодер
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
<emphasis role= "bold" > 3ivx</emphasis> v1, v2 декодер
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
Cinepak и <emphasis role= "bold" > Intel Indeo</emphasis> кодеки (3.1,3.2,4.1,5.0)
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
<emphasis role= "bold" > MJPEG</emphasis> , AVID, VCR2, ASV2 и другие аппаратные
форматы
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
VIVO 1.0, 2.0, I263 и другие <emphasis role= "bold" > h263(+)</emphasis> варианты
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
FLI/FLC
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
<emphasis role= "bold" > RealVideo 1.0 & 2.0 </emphasis> из
<systemitem class= "library" > libavcodec</systemitem> , и
<emphasis role= "bold" > RealVideo 3.0 & 4.0</emphasis> кодеки, используя
библиотеки RealPlayer
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
"родной" декодер для HuffYUV
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
Различные старые, простые, похожие на RLE форматы
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
</itemizedlist>
<para >
2006-10-30 15:32:47 +00:00
Если у В а с есть не упомянутый здесь Win32 кодек, который ещё не поддерживается,
пожалуйста, прочтите <link linkend= "codec-importing" > Как добавить кодек</link>
и помогите нам добавить для него поддержку.
2003-04-11 17:38:51 +00:00
</para>
2006-09-08 16:42:09 +00:00
<sect2 id= "ffmpeg" xreflabel= "FFmpeg/libavcodec" >
2003-10-14 21:31:04 +00:00
<title > FFmpeg/libavcodec</title>
2003-04-11 17:38:51 +00:00
<para >
2006-10-30 15:32:47 +00:00
<ulink url= "http://ffmpeg.sourceforge.net" > FFmpeg</ulink> содержит
<systemitem class= "library" > libavcodec</systemitem> - ведущую библиотеку аудио
и видео кодеков с открытым исходным кодом. Она способна декодировать
большинство мультимедиа форматов, обычно быстрее альтернатив, and aim support for the rest
of them eventually. Это декодер по-умолчанию для большинства кодеков, поддерживаемых
<application > MPlayer</application> . Кодирование также возможно для некоторых форматов и
поддерживается в <application > Mencoder</application> .
2003-05-20 06:51:47 +00:00
</para>
2003-10-14 21:31:04 +00:00
<para >
2006-10-30 15:32:47 +00:00
Полный список доступных кодеков доступен на странице FFmpeg.
Поддерживаемые <ulink url= "http://www.ffmpeg.org/ffmpeg-doc.html#SEC19" > видео</ulink>
и <ulink url= "http://www.ffmpeg.org/ffmpeg-doc.html#SEC20" > аудио</ulink> кодеки.
2003-10-14 21:31:04 +00:00
</para>
2003-04-11 17:38:51 +00:00
<para >
2006-10-21 21:36:31 +00:00
<application > MPlayer</application>
2006-10-30 15:32:47 +00:00
содержит <systemitem class= "library" > libavcodec</systemitem> .
Просто запустите <filename > configure</filename> и компилируйте как обычно.
2003-04-11 17:38:51 +00:00
</para>
2006-09-08 16:42:09 +00:00
</sect2>
2003-04-11 17:38:51 +00:00
2006-09-08 16:42:09 +00:00
<sect2 id= "xvid" >
2003-04-11 17:38:51 +00:00
<title > XviD</title>
<para >
2006-10-30 15:32:47 +00:00
<ulink url= "http://www.xvid.org" > XviD</ulink> свободный, MPEG-4 ASP совместимый
видео кодек, особенностями которого являются двухпроходное кодирование и
полная поддержка MPEG-4 ASP, делающая е г о намного более эеффективным, чем
хорошо известный DivX. Он предоставляет видео отменного качества и хорошую
производительность, в силу оптимизаций под большинство современных процессоров.
2006-09-05 09:52:53 +00:00
</para>
<para >
2006-10-30 15:32:47 +00:00
Он начался как ответвление OpenDivX кодека. Это произошло, когда ProjectMayo
сделал исходный код OpenDivX
закрытым DivX4, и разработчики OpenDivX не из ProjectMayo
разозлились, и взялись за XviD. Поэтому у обоих проектов общие корни.
2003-04-11 17:38:51 +00:00
</para>
2006-10-21 21:36:31 +00:00
<para >
2006-10-30 15:32:47 +00:00
Имейте в виду, что XviD не нужен для декодирования XviD-кодированного видео.
<systemitem class= "library" > libavcodec</systemitem> используется по-умолчанию,
т.к. обеспечивает более высокую скорость.
2006-10-21 21:36:31 +00:00
</para>
2003-04-11 17:38:51 +00:00
<procedure >
2006-10-30 15:32:47 +00:00
<title > Установка <systemitem class= "library" > XviD</systemitem> </title>
2006-09-05 09:52:53 +00:00
2003-04-11 17:38:51 +00:00
<para >
2006-10-30 15:32:47 +00:00
Как и большинство ПО с открытым исходным кодом, он доступен как в виде
<ulink url= "http://www.xvid.org/downloads.html" > официальных релизов</ulink> ,
так и в виде CVS версии.
Как правило, CVS версия достаточно стабильна для использования, т.к. в большинстве
случаев е е особенностью является отсутствие ошибок, присутствующих в релизах.
Далее описывается как заставить работать
<systemitem class= "library" > XviD</systemitem> CVS с <application > MEncoder</application> 'ом
(необходимы, как минимум,
2006-09-05 09:52:53 +00:00
<application > autoconf</application> 2.50,
2006-10-30 15:32:47 +00:00
<application > automake</application> и <application > libtool</application> ):
2003-04-11 17:38:51 +00:00
</para>
<step > <para >
<screen > cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid login</screen>
</para> </step>
<step > <para >
<screen > cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid co xvidcore</screen>
</para> </step>
<step > <para >
<screen > cd xvidcore/build/generic</screen>
</para> </step>
<step > <para >
<screen > ./bootstrap.sh</screen>
</para> </step>
<step > <para >
<screen > ./configure</screen>
2006-10-30 15:32:47 +00:00
Вам может потребоваться добавить некоторые опции (посмотрите вывод
2006-10-01 09:25:34 +00:00
<command > ./configure --help</command> ).
2003-04-11 17:38:51 +00:00
</para> </step>
<step > <para >
<screen > make & & make install</screen>
</para> </step>
<step > <para >
2006-10-30 15:32:47 +00:00
Если Вы указали <option > --enable-divxcompat</option> ,
скопируйте <filename > ../../src/divx4.h</filename> в
2003-04-11 17:38:51 +00:00
<filename class= "directory" > /usr/local/include/</filename> .
</para> </step>
<step > <para >
2006-10-30 15:32:47 +00:00
Перекомпилируйте <application > MPlayer</application> с
2004-07-16 17:16:00 +00:00
<option > --with-xvidlibdir=<replaceable > /path/to/</replaceable> libxvidcore.a</option>
2006-10-21 21:36:31 +00:00
<option > --with-xvidincdir=<replaceable > /path/to/</replaceable> xvid.h</option> .
2003-04-11 17:38:51 +00:00
</para> </step>
</procedure>
2006-09-08 16:42:09 +00:00
</sect2>
2003-04-11 17:38:51 +00:00
2006-09-08 16:42:09 +00:00
<sect2 id= "codec-x264" >
2005-05-05 13:26:59 +00:00
<title > x264</title>
2006-09-08 16:42:09 +00:00
<sect3 id= "codec-x264-whatis" >
2006-10-30 15:32:47 +00:00
<title > Что такое x264?</title>
2005-05-05 13:26:59 +00:00
<para >
2006-10-21 21:36:31 +00:00
<ulink url= "http://developers.videolan.org/x264.html" > <systemitem class= "library" > x264</systemitem> </ulink> -
2006-10-30 15:32:47 +00:00
это библиотека для создания
видеопотоков H.264. Она не завершена на 100%, но, по крайней мере, имеет
поддержку большинства возможностей H.264, влияющих на качество.
В спецификации H.264 присутствует множество дополнительных возможностей,
которые сами по с е б е никак не влияют на качество видео и до сих в
<systemitem class= "library" > x264</systemitem> не реализованы.
2005-05-05 13:26:59 +00:00
</para>
<itemizedlist >
2006-10-30 15:32:47 +00:00
<title > возможности кодера</title>
<listitem > <para > CAVLC/CABAC (Контекстнозависимое адаптивное бинарное арифметическое
кодирование / Контестнозависимое адаптивное кодирование с переменной длиной)</para> </listitem>
<listitem > <para > Кадры с несколькими ссылками</para> </listitem>
<listitem > <para > Базовые (I-) кадры: все типы макроблоков (16x16, 8x8 и 4x4 с о всеми
видами предсказания)</para> </listitem>
<listitem > <para > Предсказуемые (P-) кадры: все дробления (от 16x16 до 4x4)</para> </listitem>
<listitem > <para > Двунаправленные (B-) кадры: дробления от 16x16 до 8x8
(включая SKIP/DIRECT)</para> </listitem>
<listitem > <para > Управление потоком: постоянный квантователь, постоянный битпоток,
одинарный или многопроходный ABR, опциональный VBV</para> </listitem>
<listitem > <para > Обнаружение усечения изображения</para> </listitem>
<listitem > <para > Адаптивное расположение B-кадров</para> </listitem>
<listitem > <para > B-кадры как ссылки или в произвольном расположении кадров</para> </listitem>
<listitem > <para > Адаптивные пространственные преобразования 8x8 и 4x4</para> </listitem>
<listitem > <para > Режим кодирования без потерь</para> </listitem>
<listitem > <para > Возможность задания пользовательских матриц квантования</para> </listitem>
<listitem > <para > Параллельное кодирование разных блоков</para> </listitem>
2005-05-05 13:26:59 +00:00
</itemizedlist>
2006-09-08 16:42:09 +00:00
</sect3>
2005-05-05 13:26:59 +00:00
2006-09-08 16:42:09 +00:00
<sect3 id= "codec-h264-whatis" >
2006-10-30 15:32:47 +00:00
<title > Что такое H.264?</title>
2005-05-05 13:26:59 +00:00
<para >
2006-09-05 09:52:53 +00:00
2006-10-30 15:32:47 +00:00
H.264 - это одно из названий нового цифрового кодека, совместно
разрабатываемого ITU и MPEG. Названия "ISO/IEC 14496-10" или
"MPEG-4 Part 10" тоже являются корректными, но чаще е г о
называют "MPEG-4 AVC" или просто "AVC".
</para>
<para >
Как е г о ни называй, но H.264 стоит попробовать, поскольку он
дает то же качество, что и MPEG-4 ASP, но при битрейте меньшем
на 5%-30%. Конкретный результат зависит как от исходного
материала, так и от кодировщика. Выигрыш не дается просто так:
декодирование потока H.264, похоже, имеет существенно повышенные требования
к CPU и памяти. В частности, на 1733 MHz Athlon декодирование
H.264 потока в 1500кб ит/с с DVD-разрешением использует около 35% CPU.
Для сравнения, декодирование 1500кб ит/с потока MPEG4-ASP с
DVD-разрешением требует около 10% CPU. Это означает, что для
большинства пользователей практически не может быть и речи о декодировании
потоков высокого разрешения.
Также это значит, что даже скромный DVD рип может время от времени
заикаться на процессорах слабее 2.0 GHz или около того.
</para>
<para >
По крайней мере, с <systemitem class= "library" > x264</systemitem>
требования для кодирования не слишком велики по сравнению с MPEG4-ASP.
В частности, на 1733 MHz Athlon кодирование обичного DVD будет идти с о
скоростью 5-15 fps.
</para>
<para >
Объяснять все тонкости H.264 не является целью этого документа, но если
вас интересует краткий обзор, вы можете прочесть
2005-05-05 13:26:59 +00:00
<ulink url= "http://www.cdt.luth.se/~peppar/kurs/smd151/spie04-h264OverviewPaper.pdf" > The H.264/AVC Advanced Video Coding Standard: Overview and Introduction to the Fidelity Range Extensions</ulink> .
</para>
2006-09-08 16:42:09 +00:00
</sect3>
2005-05-05 13:26:59 +00:00
2006-09-08 16:42:09 +00:00
<sect3 id= "codec-x264-playback" >
2006-10-30 15:32:47 +00:00
<title > Как мне посмотреть H.264 при помощи <application > MPlayer</application> ?</title>
2005-05-05 13:26:59 +00:00
<para >
2006-10-30 15:32:47 +00:00
<application > MPlayer</application> использует H.264 декодер библиотеки
2006-09-05 09:52:53 +00:00
<systemitem class= "library" > libavcodec</systemitem> .
2006-10-30 15:32:47 +00:00
<systemitem class= "library" > libavcodec</systemitem> получила мало-мальски
пригодную для использования возможность декодирования H.264 где-то в июле 2004,
однако, с того времени было внесено можество серъезных изменений и улучшений,
как с точки зрения поддерживаемых функциональных возможностей, так и улучшенного
использования CPU.
Для определенности: использование свежей версии Subversion - всегда хорошая идея.
2005-05-05 13:26:59 +00:00
</para>
<para >
2006-10-30 15:32:47 +00:00
Если нужен быстрый и простой способ узнать какие свежие изменения, относящиеся к H.264,
были сделаны в <systemitem class= "library" > libavcodec</systemitem> , Вам следует
иметь ввиду
<ulink url= "http://mplayerhq.hu/cgi-bin/cvsweb.cgi/ffmpeg/libavcodec/h264.c?cvsroot=FFMpeg" > В е б -интерфейс к репозиторию FFmpeg Subversion</ulink> .
2005-05-05 13:26:59 +00:00
</para>
2006-09-08 16:42:09 +00:00
</sect3>
2005-05-05 13:26:59 +00:00
2006-09-08 16:42:09 +00:00
<sect3 id= "codec-x264-encode" >
2006-10-30 15:32:47 +00:00
<title > Как кодировать видео, используя <application > MEncoder</application> и <systemitem class= "library" > x264</systemitem> ?</title>
2005-05-05 13:26:59 +00:00
<para >
2006-10-30 15:32:47 +00:00
Если у вас установлен клиент subversion, последнюю версию x264
можно загрузить следующей командой:
2005-05-05 13:26:59 +00:00
<screen >
2006-09-05 09:52:53 +00:00
svn co svn://svn.videolan.org/x264/trunk x264<!--
--></screen>
2006-10-30 15:32:47 +00:00
Исходный код <application > MPlayer</application> обновляется
всякий раз при изменении API <systemitem class= "library" > x264</systemitem> ,
так что предлагается использовать Subversion версию
<application > MPlayer</application> 'а .
возможно, ситуация изменится с выходом "релиза"
<systemitem class= "library" > x264</systemitem> (если он будет).
В данный момент <systemitem class= "library" > x264</systemitem> следует
рассматривать как очень нестабильный, в свете постоянного изменения
интерфейса программирования.
</para>
<para >
<systemitem class= "library" > x264</systemitem> собирается и устанавливается
как обычно:
2005-05-05 13:26:59 +00:00
<screen >
./configure & & make & & sudo make install
</screen>
2006-10-30 15:32:47 +00:00
Это установит libx264.a в /usr/local/lib, а x264.h - в /usr/local/include.
Сборка <application > MPlayer</application> при установленных в стандартные
каталоги библиотеке и заголовочном файле <systemitem class= "library" > x264</systemitem>
очень проста.
Просто запустите станартное:
2005-05-05 13:26:59 +00:00
<screen > ./configure & & make & & sudo make install</screen>
2006-10-30 15:32:47 +00:00
Скрипт configure сам определит, выполнены ли необходимые требования для
2006-09-05 09:52:53 +00:00
<systemitem class= "library" > x264</systemitem> .
2005-05-05 13:26:59 +00:00
</para>
2003-04-11 17:38:51 +00:00
</sect3>
</sect2>
2006-09-08 16:42:09 +00:00
</sect1>
2003-04-11 17:38:51 +00:00
<!-- ********** -->
2006-09-08 16:42:09 +00:00
<sect1 id= "audio-codecs" >
2006-10-30 15:32:47 +00:00
<title > Аудио кодеки</title>
2003-04-11 17:38:51 +00:00
<itemizedlist >
2006-10-30 15:32:47 +00:00
<title > Наиболее важными аудио кодеками среди всех являются:</title>
2003-04-11 17:38:51 +00:00
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
MPEG layer 1/2/3 (MP1/2/3) аудио (<emphasis role= "bold" > родной</emphasis>
код, с MMX/SSE/3DNow! оптимизацией)
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
Windows Media Audio 7 и 8 (они же WMAv1 и WMAv2) (<emphasis role= "bold" > родной</emphasis> код, с
2004-07-16 17:16:00 +00:00
<link linkend= "ffmpeg" > <systemitem class= "library" > libavcodec</systemitem> </link> )
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
Windows Media Audio 9 (WMAv3) (используя DMO DLL)
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
AC3 Dolby аудио (<emphasis role= "bold" > родной</emphasis> код, с
MMX/SSE/3DNow! оптимизацией)
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
AC3 пропускаемый через звуковое оборудование
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
2003-12-09 18:52:13 +00:00
<listitem > <simpara >
AAC
</simpara> </listitem>
2003-04-11 17:38:51 +00:00
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
Ogg Vorbis аудио кодек (<emphasis role= "bold" > родная</emphasis> библиотека)
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
RealAudio: DNET (AC3 с низким битпотоком), Cook, Sipro и ATRAC3
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
QuickTime: Qualcomm и QDesign аудио кодеки
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
VIVO аудио (g723, Vivo Siren)
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
Voxware аудио (используя DirectShow DLL)
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
alaw и ulaw, различные gsm, adpcm и pcm форматы и другие простые старые аудио
кодеки
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
2006-09-05 09:52:53 +00:00
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
Adaptive Multi-Rate (AMR) речевые кодеки
2006-09-05 09:52:53 +00:00
</simpara> </listitem>
2003-04-11 17:38:51 +00:00
</itemizedlist>
2006-09-08 16:42:09 +00:00
<sect2 id= "swac3" >
2006-10-30 15:32:47 +00:00
<title > Программное декодирование AC3</title>
2003-04-11 17:38:51 +00:00
<para >
2006-10-30 15:32:47 +00:00
Это декодер, используемый, по умолчанию, для файлов с AC3 аудио
2003-04-11 17:38:51 +00:00
</para>
<para >
2006-10-30 15:32:47 +00:00
Декодер AC3 может создавать аудио вывод микшированный для 2, 4 или 6 колонок.
Будучи сконфигурированным для 6 колонок, этот декодер предоставляет раздельный
вывод всех AC3 каналов звуковому драйверу, позволяя получить "звук вокруг"
без внешнего AC3 декодера, необходимого для использования hwac3 кодека.
2003-04-11 17:38:51 +00:00
</para>
<para >
2006-10-30 15:32:47 +00:00
Используйте опцию <option > -channels</option> , чтобы выбрать количество каналов
при выводе. Используйте <option > -channels 2</option> для микширования до стерео.
Для микширования до 4 каналов (Левый Передний, Правый Передний, Левый Задний и
Правый Задний выводы),
используйте <option > -channels 4</option> . В этом случае все центральные каналы
будут равномерно смикшированы до уровня передних каналов. <option > -channels 6</option> будет
выводить все AC3 каналы так, как они закодированы - по порядку:
Левый, Правый, Левый Задний, Правый Задний, Центральный и Сабвуфер.
2003-04-11 17:38:51 +00:00
</para>
<para >
2006-10-30 15:32:47 +00:00
Количество каналов по умолчанию - 2.
2003-04-11 17:38:51 +00:00
</para>
<para >
2006-10-30 15:32:47 +00:00
Чтобы использовать более 2 каналов, Вам нужно использовать OSS, и обладать
карточкой, поддерживающей необходимое количество каналов через ioctl
SNDCTL_DSP_CHANNELS. Примером подходящего драйвера является emu10k1
(используется для Soundblaster Live! карточек) августа 2001'г о или новее
(ALSA CVS тоже должен работать).
2003-04-11 17:38:51 +00:00
</para>
2006-09-08 16:42:09 +00:00
</sect2>
2003-04-11 17:38:51 +00:00
2006-09-08 16:42:09 +00:00
<sect2 id= "hwac3" >
2006-10-30 15:32:47 +00:00
<title > Аппаратное декодирование AC3</title>
2003-04-11 17:38:51 +00:00
<para >
2006-10-30 15:32:47 +00:00
Вам нужна AC3-совместимая карта с цифровым (S/PDIF) выводом. Драйвер карты
должен должным образом поддерживать AFMT_AC3 формат (например C-Media).
Подсоедините AC3 декодер к S/PDIF выводу и используйте опцию <option > -ac
hwac3</option> . Это экспериментальная возможность, но известно, что это работает с
C-Media картами и Soundblaster Live! + ALSA (но не OSS) драйверами и
картами MPEG декодирования DXR3/Hollywood+.
2003-04-11 17:38:51 +00:00
</para>
2006-09-08 16:42:09 +00:00
</sect2>
2003-04-11 17:38:51 +00:00
2006-09-08 16:42:09 +00:00
<sect2 id= "libmad" >
2006-10-30 15:32:47 +00:00
<title > Поддержка libmad</title>
2003-04-11 17:38:51 +00:00
<para >
2006-10-30 15:32:47 +00:00
<ulink url= "http://mad.sourceforge.net" > libmad</ulink> - это многоплатформенная,
целочисленная (внутренне 24'битный PCM)
библиотека декодирования MPEG аудио. Она не очень хорошо обрабатывает битые
файлы и иногда у неё бывают проблемы с перемещением по файлу, но она
может быть производительнее mp3lib на платформах без FPU
(таких как <link linkend= "arm" > ARM</link> ).
2003-04-11 17:38:51 +00:00
</para>
<para >
2006-10-30 15:32:47 +00:00
Если libmad у вас установлена, <filename > configure</filename> сообщит о б этом,
и поддержка декодирования MPEG аудио с помощью <systemitem class= "library" > libmad</systemitem>
будет включена автоматически.
2003-04-11 17:38:51 +00:00
</para>
2006-09-08 16:42:09 +00:00
</sect2>
2003-04-11 17:38:51 +00:00
2006-09-08 16:42:09 +00:00
<sect2 id= "hwmpa" >
2006-10-30 15:32:47 +00:00
<title > Аппаратный MPEG аудио кодек</title>
2006-09-05 09:52:53 +00:00
<para >
2006-10-30 15:32:47 +00:00
Этот кодек (выбираемый по -ac hwmpa) передает все аудио пакеты MPEG аппаратным
декодерам, таким как установленные в полнофункциональных DVB картах и DXR2 адаптерах.
Н е используйте е г о с другими драйверами вывода звука (такими как OSS и ALSA), которые
не способны аппаратно декодировать (вы усышите только белый шум).
2006-09-05 09:52:53 +00:00
</para>
2006-09-08 16:42:09 +00:00
</sect2>
2006-09-05 09:52:53 +00:00
2006-09-08 16:42:09 +00:00
<sect2 id= "aac" >
2006-10-30 15:32:47 +00:00
<title > AAC кодек</title>
2003-04-11 17:38:51 +00:00
<para >
2006-10-30 15:32:47 +00:00
AAC (Advanced Audio Coding) - это кодек, иногда обнаруживаемый в MOV и MP4
файлах. Декодер с открытым исходным кодом, называемый FAAD, доступен с
2003-09-22 08:20:53 +00:00
<ulink url= "http://www.audiocoding.com" /> .
2006-10-30 15:32:47 +00:00
<application > MPlayer</application> включает в себя CVS версию libfaad 2.1 beta, поэтому
Вам ничего не нужно дополнительно скачивать.
2003-04-11 17:38:51 +00:00
</para>
2003-10-08 17:51:55 +00:00
<para >
2006-10-30 15:32:47 +00:00
Если Вы используете gcc 3.2, который не может скомпилировать встроенный FAAD,
или просто хотите использовать внешнюю библиотеку, скачаете её с
<ulink url= "http://www.audiocoding.com/download.php" > страницы загрузок</ulink>
и укажите <filename > configure</filename> <option > --enable-faad-external</option> .
Вам не нужен весь faad2, чтобы декодировать AAC файлы, достаточно libfaad.
Вот как Вы можете её собрать:
2003-10-08 17:51:55 +00:00
<screen >
cd faad2/
2006-09-05 09:52:53 +00:00
sh bootstrap
2003-10-08 17:51:55 +00:00
./configure
cd libfaad
make
make install
</screen>
2006-10-30 15:32:47 +00:00
Бинарники отсутствуют на audiocoding.com, но вы можете скачать (apt-get) Debian
пакеты с <ulink url= "http://marillat.free.fr" > домашней страницы Christian Marillat</ulink> ,
Mandrake RPM'ники с <ulink url= "http://plf.zarb.org" > P.L.F</ulink> и RedHat RPM'ники
с <ulink url= "http://greysector.rangers.eu.org/" > Grey Sector</ulink> .
2003-10-08 17:51:55 +00:00
</para>
2006-09-08 16:42:09 +00:00
</sect2>
2003-04-11 17:38:51 +00:00
2006-09-08 16:42:09 +00:00
<sect2 id= "amr" >
2006-10-30 15:32:47 +00:00
<title > AMR кодеки</title>
2006-09-05 09:52:53 +00:00
<para >
2006-10-30 15:32:47 +00:00
Речевой кодек Adaptive Multi-Rate используется в мобильных телефонах третьего поколения (3G).
2006-09-05 09:52:53 +00:00
2006-10-30 15:32:47 +00:00
Исходная реализация доступна с
2006-09-05 09:52:53 +00:00
<ulink url= "http://www.3gpp.org" > The 3rd Generation Partnership Project</ulink>
2006-10-30 15:32:47 +00:00
(бесплатна для личного использования).
2006-09-05 09:52:53 +00:00
</para>
<para >
2006-10-30 15:32:47 +00:00
Чтобы включить поддержку, скачайте исходники для
2006-09-05 09:52:53 +00:00
<ulink url= "http://www.3gpp.org/ftp/Specs/latest/Rel-6/26_series/26104-610.zip" > AMR-NB</ulink>
2006-10-30 15:32:47 +00:00
и
2006-09-05 09:52:53 +00:00
<ulink url= "http://www.3gpp.org/ftp/Specs/latest/Rel-6/26_series/26204-600.zip" > AMR-WB</ulink>
2006-10-30 15:32:47 +00:00
кодеков, поместите их в каталог, где распакованы исходники
<application > MPlayer</application> и выполните следующие команды:
2006-09-05 09:52:53 +00:00
<screen >
unzip 26104-610.zip
unzip 26104-610_ANSI_C_source_code.zip
mv c-code libavcodec/amr_float
unzip 26204-600.zip
unzip 26204-600_ANSI-C_source_code.zip
mv c-code libavcodec/amrwb_float
</screen>
2006-10-30 15:32:47 +00:00
После этого следуйте обычной <link linkend= "features" > процедуре сборки</link>
2006-09-05 09:52:53 +00:00
<application > MPlayer</application> .
</para>
2003-04-11 17:38:51 +00:00
</sect2>
2006-09-08 16:42:09 +00:00
</sect1>
2003-04-11 17:38:51 +00:00
<!-- ********** -->
2006-09-08 16:42:09 +00:00
<sect1 id= "codec-importing" >
2006-10-30 15:32:47 +00:00
<title > К А К извлечь кодек из Win32</title>
2003-04-11 17:38:51 +00:00
<!-- TODO: a short paragraph of text would be nice here... -->
2006-09-08 16:42:09 +00:00
<sect2 id= "vfw-codecs" >
2006-10-30 15:32:47 +00:00
<title > VFW кодеки</title>
2003-04-11 17:38:51 +00:00
<para >
2006-10-30 15:32:47 +00:00
VFW (Video for Windows[Видео для Windows]) - это старые Видео API для Windows.
У этих кодеков расширения <filename > .DLL</filename> или (реже) <filename > .DRV</filename> .
Если <application > MPlayer</application> не может проигрывать Ваш
AVI с такого рода сообщением:
2003-04-11 17:38:51 +00:00
<screen > UNKNOWN video codec: HFYU (0x55594648)</screen>
</para>
<para >
2006-10-30 15:32:47 +00:00
Это значит, что Ваш AVI закодирован кодеком с fourcc HFYU
(HFYU = HuffYUV кодек, DIV3 = DivX Low Motion, и т.п.). Теперь, когда Вы это
знаете, Вы должны найти DLL, которую Windows загружает для проигрывания этого
файла. В нашем случае, в файле <filename > system.ini</filename> есть эта
информация, в этой строке:
2003-04-11 17:38:51 +00:00
<programlisting > VIDC.HFYU=huffyuv.dll</programlisting>
</para>
<para >
2006-10-30 15:32:47 +00:00
Значит, Вам нужен файл <filename > huffyuv.dll</filename> . Заметьте, что аудио
кодеки используют префикс MSACM:
2003-04-11 17:38:51 +00:00
<programlisting > msacm.l3acm=L3codeca.acm</programlisting>
</para>
<para >
2006-10-30 15:32:47 +00:00
Это MP3 кодек. Теперь у В а с есть вся необходимая информация (fourcc, файл с
кодеком, пример AVI), представьте на рассмотрение запрос о поддержке Вашего
кодека по почте и загрузите эти файлы на FTP сайт:
2003-04-11 17:38:51 +00:00
<systemitem role= "url" >
2006-08-28 21:50:26 +00:00
ftp://upload.mplayerhq.hu/MPlayer/incoming/[codecname]/
2003-04-11 17:38:51 +00:00
</systemitem>
</para>
2006-10-30 15:32:47 +00:00
<note > <para > Под Windows NT/2000/XP ищите эту информацию в реестре, например,
ищите " VIDC.HFYU" . Чтобы узнать, как это делать, см. ниже старый
метод DirectShow.
2003-04-11 17:38:51 +00:00
</para> </note>
2006-09-08 16:42:09 +00:00
</sect2>
2003-04-11 17:38:51 +00:00
2006-09-08 16:42:09 +00:00
<sect2 id= "dshow-codecs" >
2006-10-30 15:32:47 +00:00
<title > DirectShow кодеки</title>
2003-04-11 17:38:51 +00:00
<para >
2006-10-30 15:32:47 +00:00
DirectShow - это более новый Video API, которые даже хуже, чем е г о предшественник.
В с е сложнее с DirectShow, поскольку
2003-04-11 17:38:51 +00:00
<itemizedlist >
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
<filename > system.ini</filename> не содержит необходимую информацию, вместо
этого она хранится в реестре и
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
<listitem > <simpara >
2006-10-30 15:32:47 +00:00
нам нужен GUID этого кодека.
2003-04-11 17:38:51 +00:00
</simpara> </listitem>
</itemizedlist>
</para>
<procedure >
2006-10-30 15:32:47 +00:00
<title > Новый Метод:</title>
2003-04-11 17:38:51 +00:00
<para >
2006-10-30 15:32:47 +00:00
Используя <application > Microsoft GraphEdit</application> (быстро)
2003-04-11 17:38:51 +00:00
</para>
<step > <para >
2006-10-30 15:32:47 +00:00
Получите <application > GraphEdit</application> или из DirectX SDK или
2006-10-21 21:36:31 +00:00
<ulink url= "http://doom9.net" > doom9</ulink> .
2003-04-11 17:38:51 +00:00
</para> </step>
<step > <para >
2006-10-30 15:32:47 +00:00
Запустите <command > graphedit.exe</command> .
2003-04-11 17:38:51 +00:00
</para> </step>
<step > <para >
2006-10-30 15:32:47 +00:00
В меню выберите Graph -> Insert Filters.
2003-04-11 17:38:51 +00:00
</para> </step>
<step > <para >
2006-10-30 15:32:47 +00:00
Щёлкните <systemitem > DirectShow Filters</systemitem> .
2003-04-11 17:38:51 +00:00
</para> </step>
<step > <para >
2006-10-30 15:32:47 +00:00
Выберите нужное имя кодека и щёлкните по нему.
2003-04-11 17:38:51 +00:00
</para> </step>
<step > <para >
2006-10-30 15:32:47 +00:00
В поле <systemitem > DisplayName</systemitem> обратите внимание на текст в
фигурных скобках после обратного слэша и выпишете их (пять разделённых
дефисами блоков, GUID).
2003-04-11 17:38:51 +00:00
</para> </step>
<step > <para >
2006-10-30 15:32:47 +00:00
Бинарный файл кодека - это файл, указанный в поле <systemitem > Filename</systemitem> .
2003-04-11 17:38:51 +00:00
</para> </step>
</procedure>
<note >
<para >
2006-10-30 15:32:47 +00:00
Если там нет <systemitem > Filename</systemitem> и
<systemitem > DisplayName</systemitem> содержит что-то в духе
<systemitem > device:dmo</systemitem> , то это - DMO-Кодек.
2003-04-11 17:38:51 +00:00
</para>
</note>
<procedure >
2006-10-30 15:32:47 +00:00
<title > Старый метод:</title>
2003-04-11 17:38:51 +00:00
<para >
2006-10-30 15:32:47 +00:00
Сделайте глубокий вдох и начните искать в реестре...
2003-04-11 17:38:51 +00:00
</para>
<step > <para >
2006-10-30 15:32:47 +00:00
Запустите <command > regedit</command> .
2003-04-11 17:38:51 +00:00
</para> </step>
<step > <para >
2006-10-30 15:32:47 +00:00
Нажмите <keycap > Ctrl</keycap> +<keycap > F</keycap> , отключите первые две галочки
и включите третью. Наберите fourcc Вашего кодека (например,
2003-04-11 17:38:51 +00:00
<userinput > TM20</userinput> ).
</para> </step>
<step > <para >
2006-10-30 15:32:47 +00:00
Вы должны увидеть поле, содержащее путь и имя файла (например,
2003-04-11 17:38:51 +00:00
<filename > C:\WINDOWS\SYSTEM\TM20DEC.AX</filename> ).
</para> </step>
<step > <para >
2006-10-30 15:32:47 +00:00
Теперь, когда у В а с есть файл, нам нужен GUID. Попробуйте поискать снова,
но теперь ищите имя кодека, а не fourcc. Это имя может быть получено,
когда Media Player проигрывает файл, проверив
2003-04-11 17:38:51 +00:00
<guimenu > File</guimenu> -> <guisubmenu > Properties</guisubmenu> ->
<guimenuitem > Advanced</guimenuitem> .
2006-10-30 15:32:47 +00:00
Если нет, Вам не повезло. Попробуйте угадать (например, ищите TrueMotion).
2003-04-11 17:38:51 +00:00
</para> </step>
<step > <para >
2006-10-30 15:32:47 +00:00
Если GUID найден, Вы должны видеть поля <guilabel > FriendlyName</guilabel>
и <guilabel > CLSID</guilabel> . Выпишите 16-ти байтовый CLSID, это GUID, который
нам нужен.
2003-04-11 17:38:51 +00:00
</para> </step>
</procedure>
<note >
<para >
2006-10-30 15:32:47 +00:00
Если поиск не удаётся, попробуйте включить все галочки. Вы можете получить
ложные значения, но Вам может повести...
2003-04-11 17:38:51 +00:00
</para>
</note>
<para >
2006-10-30 15:32:47 +00:00
Теперь у В а с есть вся необходимая информация (fourcc, GUID, файл с кодеком,
пример AVI), представьте на рассмотрение запрос о поддержке Вашего кодека по
почте и загрузите эти файлы на FTP сайт:
2003-04-11 17:38:51 +00:00
<systemitem
2006-08-28 21:50:26 +00:00
role="url">ftp://upload.mplayerhq.hu/MPlayer/incoming/[codecname]/
2003-04-11 17:38:51 +00:00
</systemitem>
</para>
2006-09-05 09:52:53 +00:00
<para >
2006-10-30 15:32:47 +00:00
Если вы хотите добавить кодек самостоятельно, прочтите
2006-09-05 09:52:53 +00:00
<ulink url= "http://www.mplayerhq.hu/MPlayer/DOCS/tech/codecs.conf.txt" > DOCS/tech/codecs.conf.txt</ulink> .
</para>
2003-04-11 17:38:51 +00:00
</sect2>
</sect1>
2006-09-08 16:42:09 +00:00
</chapter>