Mercurial > mplayer.hg
view DOCS/xml/ru/faq.xml @ 36579:c11abb032606
mplayer: Simplify initial playtree/file code.
Also avoids a theoretical NULL dereference if play_tree_iter_step
does not return an entry.
"Theoretical" since I don't know if or how this case would
be possible to trigger, so it might in fact be dead code.
author | reimar |
---|---|
date | Mon, 20 Jan 2014 22:08:45 +0000 |
parents | 92d75e703bc0 |
children |
line wrap: on
line source
<?xml version="1.0" encoding="utf-8"?> <!-- synced with r28707 --> <chapter id="faq" xreflabel="FAQ"> <title>Часто Задаваемые вопросы</title> <qandaset defaultlabel="qanda"> <qandadiv id="faq-development"> <title>Разработка</title> <qandaentry> <question><para> Как создать правильный патч для <application>MPlayer</application>? </para></question> <answer><para> Мы создали <ulink url="../../tech/patches.txt">краткий документ</ulink> (англ.), описывающий все необходимые детали. Пожалуйста, следуйте инструкциям. </para></answer> </qandaentry> <qandaentry> <question><para> Как перевести <application>MPlayer</application> на новый язык? </para></question> <answer><para> Прочитайте <ulink url="../../tech/translations.txt">HOWTO по переводу</ulink> (англ.), там все описано. За дополнительной помощью Вы можете обратиться в рассылку <ulink url="http://lists.mplayerhq.hu/mailman/listinfo/mplayer-translations">MPlayer-translations</ulink>. </para></answer> </qandaentry> <qandaentry> <question><para> Как можно помочь развитию <application>MPlayer</application>? </para></question> <answer><para> Мы будем более чем счастливы принять <ulink url="http://www.mplayerhq.hu/donations.html">пожертвования</ulink> оборудованием и программным обеспечением. Они позволяют нам постоянно улучшать <application>MPlayer</application>. </para></answer> </qandaentry> <qandaentry> <question><para> Как стать разработчиком <application>MPlayer</application>? </para></question> <answer><para> Мы всегда рады приветствовать людей, занимающихся написанием кода и документации. Для начала прочтите <ulink url="../../tech/">техническую документацию</ulink> (англ.). Затем Вам следует подписаться на список рассылки <ulink url="http://lists.mplayerhq.hu/mailman/listinfo/mplayer-dev-eng">MPlayer-dev-eng</ulink> и начать написание кода. Если Вы хотите помочь с документацией, то подпишитесь на <ulink url="http://lists.mplayerhq.hu/mailman/listinfo/mplayer-docs">MPlayer-docs</ulink>. </para></answer> </qandaentry> <qandaentry> <question><para> Почему Вы не используете autoconf/automake? </para></question> <answer><para> У нас есть модульная, написанная вручную система сборки. Она хорошо справляется со своей работой, зачем же ее менять? Кроме того, нам, как и <ulink url="http://freshmeat.net/articles/view/889/">некоторым другим</ulink>, не нравятся auto* утилиты. </para></answer> </qandaentry> </qandadiv> <!-- ********** --> <qandadiv id="faq-compilation-installation"> <title>Компиляция и установка</title> <qandaentry> <question><para> Компиляция завершается с ошибкой и <application>gcc</application> вываливается с загадочным сообщением, содержащим фразу <systemitem>internal compiler error</systemitem> или <systemitem>unable to find a register to spill</systemitem> или <systemitem>can't find a register in class 'GENERAL_REGS' while reloading 'asm'</systemitem>. </para></question> <answer><para> Вы столкнулись с ошибкой в <application>gcc</application>. Пожалуйста, <ulink url="http://gcc.gnu.org/bugs.html">сообщите об этом разработчикам gcc</ulink> но не нам. В силу некоторых причин <application>MPlayer</application>, похоже, часто вызывает ошибки компилятора. Тем не менее, мы не можем их исправить, но и добавлять специальный код для обхода ошибок компилятора не будем. Чтобы избежать этой проблемы, либо используйте надежную и стабильную версию компилятора, либо часто обновляйтесь. </para></answer> </qandaentry> <qandaentry> <question><para> Существуют ли бинарные (RPM/Debian) пакеты <application>MPlayer</application>? </para></question> <answer><para> Смотрите разделы <link linkend="debian">Debian</link> и <link linkend="rpm">RPM</link>. </para></answer> </qandaentry> <qandaentry> <question><para> Как собрать 32-х битную версию <application>MPlayer</application> на 64-х битном Athlon? </para></question> <answer><para> Попробуйте следующие опции configure: <screen> ./configure --target=i386-linux --cc="gcc -m32" --as="as --32" --with-extralibdir=/usr/lib </screen> </para></answer> </qandaentry> <qandaentry> <question><para> Configure завершается с указанным сообщением, и <application>MPlayer</application> не компилируется! <screen>Your gcc does not support even i386 for '-march' and '-mcpu'</screen> </para></question> <answer><para> Ваш gcc некорректно установлен, проверьте <filename>config.log</filename> для более подробной информации. </para></answer> </qandaentry> <qandaentry> <question><para> Я имею Matrox G200/G400/G450/G550, как мне скомпилировать/использовать <systemitem>mga_vid</systemitem> драйвер? </para></question> <answer><para> Прочитайте раздел <link linkend="mga_vid">mga_vid</link>. </para></answer> </qandaentry> <qandaentry> <question><para> На этапе 'make', <application>MPlayer</application> жалуется на отсутствующие библиотеки X11. Я не понимаю, ведь X11 у меня <emphasis>установлен</emphasis>!? </para></question> <answer><para> ... но Вы не имеете установленных пакетов разработки X11. Либо они установлены некорректно. Они называются <filename>XFree86-devel*</filename> в Red Hat, <filename>xlibs-dev</filename> в Debian Woody и <filename>libx11-dev</filename> в Debian Sarge. Также проверьте существуют ли символические ссылки <filename class="directory">/usr/X11</filename> и <filename class="directory">/usr/include/X11</filename>. </para></answer> </qandaentry> <qandaentry> <question><para> Сборка в Mac OS 10.3 приводит к нескольким ошибкам линковки. </para></question> <answer> <para> Как правило, ошибка линковки выглядит так: <screen> ld: Undefined symbols: _LLCStyleInfoCheckForOpenTypeTables referenced from QuartzCore expected to be defined in ApplicationServices _LLCStyleInfoGetUserRunFeatures referenced from QuartzCore expected to be defined in ApplicationServices </screen> Эта проблема — результат разработчиков Apple, использующих 10.4 для компиляции их программ и распространяющих бинарники пользователям 10.3 через Software Update. Неопределённые символы присутствуют в 10.4, но их нет в 10.3. Одно из решений — откат QuickTime до версии 7.0.1, но есть и лучшее. </para> <para> Загрузите <ulink url="http://rapidshare.de/files/20281171/CompatFrameworks.tgz.html">более старую версию фреймворка</ulink>. Вы получите архив, содержащий фреймворк QuickTime 7.0.1 и QuartzCore 10.3.9. </para> <para> Распакуйте файл куда-нибудь, кроме папки System (т.е. не устанавливайте эти программы в. <filename class="directory">/System/Library/Frameworks</filename>! Эта старая копия нужна только для решения проблем с линковкой!) <screen>gunzip < CompatFrameworks.tgz | tar xvf -</screen> В config.mak следует добавить <systemitem>-F/path/to/where/you/extracted</systemitem> к переменной <systemitem>OPTFLAGS</systemitem>. При использовании <application>X-Code</application> Вы можете просто выбрать эти фреймворки вместо системных. </para> <para> Получившийся бинарный <application>MPlayer</application> будет использовать фреймворк, установленный в Вашей системе, используя динамические ссылки времени исполнения. (Это можно проверить, запустив <systemitem>otool -l</systemitem>). </para> </answer> </qandaentry> </qandadiv> <!-- ********** --> <qandadiv id="faq-general"> <title>Общие вопросы</title> <qandaentry> <question><para> Есть ли списки рассылки, посвященные <application>MPlayer</application>? </para></question> <answer><para> Да. Смотрите раздел <ulink url="http://www.mplayerhq.hu/design7/mailing_lists.html">списки рассылки</ulink> нашего сайта. </para></answer> </qandaentry> <qandaentry> <question><para> Я обнаружил неприятную ошибку, появляющуюся при просмотре моего любимого фильма! Кому мне следует сообщить об этом? </para></question> <answer><para> Прочтите <link linkend="bugreports">руководство по составлению отчетов об ошибках</link> и следуйте инструкциям. </para></answer> </qandaentry> <qandaentry> <question><para> У меня происходит дамп ядра при попытке создать дамп потоков, что не так? </para></question> <answer><para> Не паникуйте. Убедитесь, что знаете где Ваше полотенце.</para> <para> Серьёзно, обратите внимание на смайлик и ищите файлы, оканчивающиеся на <filename>.dump</filename>. </para></answer> </qandaentry> <qandaentry> <question><para> В начале воспроизведения появляется следующее сообщение, хотя все вроде бы работает прекрасно: <screen>Ошибка инициализации Linux RTC в ioctl (rtc_pie_on): Permission denied</screen> </para></question> <answer><para> Чтобы использовать RTC тайминг, Вам необходимо специально настроенное ядро. Подробности ищите в разделе <link linkend="rtc">RTC</link>. </para></answer> </qandaentry> <qandaentry> <question><para> Как сделать скриншот?? </para></question> <answer><para> Чтобы иметь возможность сделать скриншот, Вы должны использовать драйвер вывода видео, который не использует оверлей. В X11 это <option>-vo x11</option>, в Windows используйте <option>-vo directx:noaccel</option>. </para> <para> Есть и другой способ. Запустите <application>MPlayer</application> с видео фильтром <systemitem>screenshot</systemitem> (<option>-vf screenshot</option>), и нажмите клавишу <keycap>s</keycap> для создания скриншота. </para></answer> </qandaentry> <qandaentry> <question><para> Каков смысл чисел в статусной строке? </para></question> <answer><para> Пример: <screen> A: 2.1 V: 2.2 A-V: -0.167 ct: 0.042 57/57 41% 0% 2.6% 0 4 49% 1.00x </screen> <variablelist> <varlistentry> <term><systemitem>A: 2.1</systemitem></term> <listitem><para>позиция аудио в секундах</para></listitem> </varlistentry> <varlistentry> <term><systemitem>V: 2.2</systemitem></term> <listitem><para>позиция видео в секундах</para></listitem> </varlistentry> <varlistentry> <term><systemitem>A-V: -0.167</systemitem></term> <listitem><para>сдвиг аудио-видео в секундах (задержка)</para></listitem> </varlistentry> <varlistentry> <term><systemitem>ct: 0.042</systemitem></term> <listitem><para>итоговая выполненная коррекция A-V синхронизации</para></listitem> </varlistentry> <varlistentry> <term><systemitem>57/57</systemitem></term> <listitem><para> кадров проиграно/декодировано (считая от места последней перемотки) </para></listitem> </varlistentry> <varlistentry> <term><systemitem>41%</systemitem></term> <listitem><para> время CPU в процентах, используемое видео кодеком (для поблочного и прямого рендеринга сюда включается и video_out) </para></listitem> </varlistentry> <varlistentry> <term><systemitem>0%</systemitem></term> <listitem><para>время CPU, используемое video_out</para></listitem> </varlistentry> <varlistentry> <term><systemitem>2.6%</systemitem></term> <listitem><para>время CPU в процентах, используемое аудио кодеком</para></listitem> </varlistentry> <varlistentry> <term><systemitem>0</systemitem></term> <listitem><para>выброшено кадров для сохранения синхронизации A-V</para></listitem> </varlistentry> <varlistentry> <term><systemitem>4</systemitem></term> <listitem><para> текущий уровень постобработки (при использовании <option>-autoq</option>) </para></listitem> </varlistentry> <varlistentry> <term><systemitem>49%</systemitem></term> <listitem><para> текущий уровень использования кеша. (нормальное значение — около 50%) </para></listitem> </varlistentry> <varlistentry> <term><systemitem>1.00x</systemitem></term> <listitem><para> скорость воспроизведения (множитель от нормальной скорости) </para></listitem> </varlistentry> </variablelist> Большинство из них используются для отладки, используйте опцию <option>-quiet</option> чтобы их скрыть. Имейте ввиду, что для некоторых файлов использование CPU модулем video_out равно нулю (0%). Дело в том, что иногда он вызывается непосредственно из кодека и не может быть измерен отдельно. Если Вы хотите узнать скорость video_out в этом случае, сравните разницу при воспроизведении с <option>-vo null</option> и Вашим драйвером вывода видео. </para></answer> </qandaentry> <qandaentry> <question><para> Появляется сообщение, что не найден файл <filename>/usr/local/lib/codecs/</filename> ... </para></question> <answer><para> Загрузите и установите бинарные кодеки с нашей <ulink url="http://www.mplayerhq.hu/design7/dload.html">страницы загрузки</ulink>. </para></answer> </qandaentry> <qandaentry> <question><para> Как сделать, чтобы <application>MPlayer</application> запомнил мои особые опции для определенного файла, например <filename>movie.avi</filename>? </para></question> <answer><para> Создайте файл с именем <filename>movie.avi.conf</filename> и Вашими опциями в нем, сохраните его в каталог <filename class="directory">~/.mplayer</filename> или в один каталог с медиа-файлом. </para></answer> </qandaentry> <qandaentry> <question><para> Субтитры великолепные, лучшие из виденных когда-либо, но они замедляют воспроизведение! Я знаю, это необычно... </para></question> <answer><para> После запуска <filename>./configure</filename>, отредактируйте <filename>config.h</filename> и замените <systemitem>#undef FAST_OSD</systemitem> на <systemitem>#define FAST_OSD</systemitem>. Перекомпилируйте. </para></answer> </qandaentry> <qandaentry> <question><para> Как запустить <application>MPlayer</application> в фоновом режиме? </para></question> <answer><para> Используйте: <screen> mplayer <replaceable>опции</replaceable> <replaceable>имя_файла</replaceable> < /dev/null & </screen> </para></answer> </qandaentry> </qandadiv> <!-- ********** --> <qandadiv id="faq-playback"> <title>Проблемы воспроизведения</title> <qandaentry> <question><para> Не могу локализовать причину некоторой странной проблемы произведения. </para></question> <answer><para> Завалялся файл <filename>codecs.conf</filename> в <filename>~/.mplayer/</filename>, <filename>/etc/</filename>, <filename>/usr/local/etc/</filename> или в аналогичном месте? Удалите его, Устаревший <filename>codecs.conf</filename> может стать причиной непонятных проблем и предназначается только для использования разработчиками, занимающимися поддержкой кодеков. Он переопределяет внутренние настройки кодеков <application>MPlayer</application>'а, что не сулит ничего хорошего, если в новых версиях программы внесены несовместимые изменения. При использовании неэкспертами, это верный путь к, на первый взгляд, случайным и неподдающимся локализации крахам и проблемам воспроизведения. Если этот файл присутствует где-либо в Вашей системе, удалите его. </para></answer> </qandaentry> <qandaentry> <question><para> Как настроить субтитры для вывода на черных полях вокруг изображения? </para></question> <answer><para> Воспользуйтесь видео фильтром <systemitem>expand</systemitem> для увеличения области рендеринга по вертикали и разместите изображение у верхней кромки: <screen>mplayer -vf expand=0:-100:0:0 -slang de dvd://1</screen> </para></answer> </qandaentry> <qandaentry> <question><para> Как выбрать дорожки звука/субтитров в DVD, OGM, Matroska или NUT файле? </para></question> <answer><para> Нужно использовать опцию <option>-aid</option> (аудио ID) или <option>-alang</option> (язык аудио), <option>-sid</option> (ID субтитров) или <option>-slang</option> (язык субтитров), например: <screen> mplayer -alang eng -slang eng <replaceable>example.mkv</replaceable> mplayer -aid 1 -sid 1 <replaceable>example.mkv</replaceable> </screen> Посмотреть список доступных: <screen> mplayer -vo null -ao null -frames 0 -v <replaceable>имя_файла</replaceable> | grep sid mplayer -vo null -ao null -frames 0 -v <replaceable>имя_файла</replaceable> | grep aid </screen> </para></answer> </qandaentry> <qandaentry> <question><para> Пытаюсь воспроизвести поток через интернет, но ничего не получается. </para></question> <answer><para> Попробуйте воспроизвести поток с опцией <option>-playlist</option>. </para></answer> </qandaentry> <qandaentry> <question><para> Я загрузил фильм из P2P сети, но он не работает! </para></question> <answer><para> У Вас испорченный или поддельный файл. Если Вы получили его от друзей, которые утверждают, что он работает, проверьте контрольную сумму <application>md5sum</application>. </para></answer> </qandaentry> <qandaentry> <question><para> У меня проблемы с отображением субтитров, помогите! </para></question> <answer><para> Убедитесь, что шрифты установлены правильно. Снова пройдите все шаги части <link linkend="fonts-osd">Шрифты и OSD</link> раздела, посвященного установке. Если используете TrueType шрифты, проверьте, что установлена библиотека <systemitem class="library">FreeType</systemitem>. Стоит также проверить Ваши субтитры при помощи текстового редактора или стороннего проигрывателя. Попробуйте преобразовать их в другой формат. </para></answer> </qandaentry> <qandaentry> <question><para> Почему <application>MPlayer</application> не работает в Fedora Core? </para></question> <answer><para> Из-за плохого взаимодействия между exec-shield, prelink и любым приложением, использующим Windows DLLs (таким как <application>MPlayer</application>). </para> <para> Проблема в том, что exec-shield делает случайными адреса загрузки всех системных библиотек. Смена адресов производится на стадии prelink (один раз каждые две недели). </para> <para> Когда <application>MPlayer</application> пытается загрузить Windows DLL, он хочет поместить ее по определенному адресу (0x400000). Если там уже находится важная системная библиотека, <application>MPlayer</application> рухнет. (Типичные симптомы — segmentation fault при попытке воспроизвести файлы Windows Media 9.) </para> <para> Если столкнулись с этой проблемой, то у Вас есть два варианта: <itemizedlist> <listitem><para> Подождать пару недель. Все может снова заработать. </para></listitem> <listitem> <para> Слинковать все бинарники в системе с различными prelink опциями. Вот пошаговая инструкция: </para> <procedure> <step><para> Отредактируйте <filename>/etc/syconfig/prelink</filename> и измените <programlisting>PRELINK_OPTS=-mR</programlisting> на <programlisting>PRELINK_OPTS="-mR --no-exec-shield"</programlisting> </para></step> <step><para> <command>touch /var/lib/misc/prelink.force</command> </para></step> <step><para> <command>/etc/cron.daily/prelink</command> (Это перелинкует все приложения, что может занять длительное время.) </para></step> <step><para> <command>execstack -s <replaceable>/path/to/</replaceable>mplayer</command> (Это отключит exec-shield для исполняемого файла <application>MPlayer</application>.) </para></step> </procedure> </listitem> </itemizedlist> </para></answer> </qandaentry> <qandaentry> <question><para> <application>MPlayer</application> умирает с сообщением: <screen>MPlayer прерван сигналом 4 в модуле: decode_video</screen> </para></question> <answer><para> Не используйте <application>MPlayer</application> на процессоре, отличном от того, на котором он компилировался, либо перекомпилируйте с определением CPU "на лету" (<command>./configure --enable-runtime-cpudetection</command>). </para></answer> </qandaentry> <qandaentry> <question><para> При попытке захвата с тюнера, все работает, но цвета — неправильные. С другими приложениями все в порядке. </para></question> <answer><para> Ваша карта, вероятно, сообщает о некотором пространстве цветов как поддерживаемом, хотя на самом деле его не поддерживает. Попробуйте с YUY2 вместо YV12 по умолчанию (смотрите секцию <link linkend="tv-input">TV</link>). </para></answer> </qandaentry> <qandaentry> <question><para> Получаю странные процентные значения (слишком большие) при проигрывании файлов на ноутбуке. </para></question> <answer><para> Это эффект системы управления энергопотреблением ноутбука (BIOS, не ядра). Подсоедините разъем внешнего питания <emphasis role="bold">до</emphasis> включения ноутбука. Также можно попробовать <ulink url="http://www.kernel.org/pub/linux/utils/kernel/cpufreq/cpufreq.html">cpufreq</ulink> (SpeedStep интерфейс для Linux), возможно это поможет. </para></answer> </qandaentry> <qandaentry> <question><para> Аудио/видео теряют синхронизацию, при запуске <application>MPlayer</application> с правами root на ноутбуке. При запуске с правами обычного пользователя все работает нормально. </para></question> <answer><para> Это тоже эффект системы управления энергопотреблением (смотрите выше). Подсоедините разъем внешнего питания <emphasis role="bold">до</emphasis> включения ноутбука либо убедитесь, что не используется опция <option>-rtc</option>. </para></answer> </qandaentry> <qandaentry> <question><para> При воспроизведении фильма изображение вдруг начинает дергаться и появляется следующее сообщение: <screen>Обнаружен плохо 'слоёный' AVI файл - переключаюсь в -ni режим...</screen> </para></question> <answer><para> Файлы с некорректным чередованием и опция <option>-cache</option> вместе работают не очень хорошо. Попробуйте <option>-nocache</option>. </para></answer> </qandaentry> </qandadiv> <!-- ********** --> <qandadiv id="faq-driver"> <title>Проблемы драйверов вывода видео/аудио (vo/ao)</title> <qandaentry> <question><para> При запуске в полноэкранном режиме, наблюдаются черные полосы вокруг изображения вместо полноэкранного масштабирования. </para></question> <answer><para> Ваш драйвер вывода видео аппаратно не поддерживает масштабирование, и, поскольку программное масштабирование может быть ужасно медленным, <application>MPlayer</application> не задействует его автоматически. Скорее всего Вы используете драйвер вывода <systemitem>x11</systemitem> вместо <systemitem>xv</systemitem>. Попробуйте указать <option>-vo xv</option> в командной строке или прочтите <link linkend="video">раздел видео</link>, чтобы узнать о других драйверах вывода видео. Опция <option>-zoom</option> явно задействует программное масштабирование. </para></answer> </qandaentry> <qandaentry> <question><para> Я только что установил <application>MPlayer</application>. Попытка открыть файл приводит к фатальной ошибке: <screen>Ошибка при открытии/инициализации выбранного устройства видеовывода (-vo).</screen> Как решить проблему? </para></question> <answer><para> Просто смените драйвер вывода видео. Введите следующую команду для получения списка доступных драйверов: <screen>mplayer -vo help</screen> Как только выберите правильный драйвер, добавьте его в файл конфигурации. Добавьте <programlisting> vo = <replaceable>выбранный_драйвер</replaceable> </programlisting> в <filename>~/.mplayer/config</filename> и/или <programlisting> vo_driver = <replaceable>выбранный_драйвер</replaceable> </programlisting> в <filename>~/.mplayer/gui.conf</filename>. </para></answer> </qandaentry> <qandaentry> <question><para> У меня проблемы с <replaceable>[Ваш оконный менеджер]</replaceable> и полноэкранным режимом xv/xmga/sdl/x11 ... </para></question> <answer><para> Прочтите <link linkend="bugreports">руководство по составлению отчетов об ошибках</link> и отошлите соответствующий отчет нам. Попробуйте также поэкспериментировать в опцией <option>-fstype</option>. </para></answer> </qandaentry> <qandaentry> <question><para> Теряется синхронизация звука при воспроизведении AVI файла. </para></question> <answer><para> Попробуйте опцию <option>-bps</option> или <option>-nobps</option>. Если это не помогает прочтите <link linkend="bugreports">руководство по составлению отчетов об ошибках</link> и загрузите этот файл на наш FTP. </para></answer> </qandaentry> <qandaentry> <question><para> Как использовать <application>dmix</application> с <application>MPlayer</application>? </para></question> <answer><para> После настройки <ulink url="http://alsa.opensrc.org/index.php?page=DmixPlugin">asoundrc</ulink> используйте <option>-ao alsa:device=dmix</option>. </para></answer> </qandaentry> <qandaentry> <question><para> Нет звука при воспроизведении видео и появляется ошибка подобная этой: <screen> AO: [oss] 44100Hz 2ch Signed 16-bit (Little-Endian) [AO OSS] инициализация аудио: Не могу открыть аудиоустройство /dev/dsp: Device or resource busy Не могу открыть/инициализировать аудиоустройство -> без звука. Аудио: без звука Начало воспроизведения... </screen> </para></question> <answer><para> Используете KDE или GNOME со звуковыми службами aRts или ESD? Попробуйте отключить службу звука или используйте <option>-ao arts</option> или <option>-ao esd</option> опции, для указания <application>MPlayer</application> использовать aRts или ESD. Также возможно, что Вы используете ALSA без эмуляции OSS, попробуйте загрузить ALSA OSS модули ядра или добавьте опцию <option>-ao alsa</option> в командную строку, для использования ALSA напрямую. </para></answer> </qandaentry> <qandaentry> <question><para> При запуске <application>MPlayer</application> в KDE наблюдается черный экран и ничего более. Примерно через минуту начинается воспроизведение. </para></question> <answer><para> aRts блокирует звуковое устройство. Либо подождите старта видео, либо отключите службу aRts в центре управления. Если Вы хотите использовать звук через aRts, укажите вывод звука через встроенный звуковой драйвер aRts (<option>-ao arts</option>). Если он не работает, либо <application>MPlayer</application> собран без него, попробуйте SDL (<option>-ao sdl</option>) и убедитесь, что SDL может работать со звуком aRts. Ещё один вариант — запуск <application>MPlayer</application> с artsdsp. </para></answer> </qandaentry> <qandaentry> <question><para> Проблема с синхронизацией A/V. Некоторые из моих AVI файлов проигрываются нормально, но некоторые — с двойной скоростью! </para></question> <answer><para> У Вас неверно работающая звуковая карта/драйвер. Скорее всего, поддерживается работа только с 44100Гц, а Вы пытаетесь проиграть файл с 22050Гц звуком. Попробуйте звуковой фильтр <systemitem>resample</systemitem>. </para></answer> </qandaentry> <qandaentry> <question><para> При проигрывании фильма происходит рассинхронизация звука и видео или <application>MPlayer</application> рушится с ошибкой: <screen>Слишком много (945 в 8390980 байтах) видеопакетов в буфере!</screen> </para></question> <answer><para> Причин может быть несколько. <itemizedlist> <listitem><para> Ваш CPU <emphasis>и/или</emphasis> видеокарта <emphasis>и/или</emphasis> шина слишком медленные. В этом случае <application>MPlayer</application> выводит соответствующее сообщение (и количество выброшенных кадров быстро увеличивается). </para></listitem> <listitem><para> Если это AVI, возможно, у него проблемы с чередованием звука/видео, попробуйте опцию <option>-ni</option> для обхода проблемы. Или файл имеет неверный заголовок. В этом случае могут помочь опции <option>-nobps</option> и/или <option>-mc 0</option>. </para></listitem> <listitem><para> Многие FLV файлы будут правильно воспроизводиться только с <option>-correct-pts</option>. К сожалению, <application>MEncoder</application> такой опции не имеет, но Вы можете попробовать вручную указать правильное значение <option>-fps</option>, если оно Вам известно. </para></listitem> <listitem><para> У Вас неверно работает звуковой драйвер. </para></listitem> </itemizedlist> </para></answer> </qandaentry> <qandaentry> <question><para> Как избавиться от рассинхронизации при перемотке потоков RealMedia? </para></question> <answer><para> Может помочь опция <option>-mc 0.1</option>. </para></answer> </qandaentry> </qandadiv> <!-- ********** --> <qandadiv id="faq-dvd"> <title>Воспроизведение DVD</title> <qandaentry> <question><para> Как насчет DVD навигации/Меню? </para></question> <answer><para> <application>MPlayer</application> не поддерживает DVD меню в силу серьезных архитектурных ограничений, которые мешают правильной обработке неподвижных изображений и интерактивного содержимого. Если хотите модные меню, Вам придется использовать другой проигрыватель, например <application>xine</application>, <application>vlc</application> или <application>Ogle</application>. Если Вы хотите получить DVD навигацию в <application>MPlayer</application>, реализуйте ее самостоятельно, но имейте ввиду, что это нелегкое и ответственное дело. </para></answer> </qandaentry> <qandaentry> <question><para> Как насчет субтитров? <application>MPlayer</application> умеет их отображать? </para></question> <answer><para> Да. Смотрите <link linkend="dvd">DVD раздел</link>. </para></answer> </qandaentry> <qandaentry> <question><para> Как установить регион для DVD-привода? У меня нет Windows! </para></question> <answer><para> Воспользуйтесь <ulink url="http://linvdr.org/projects/regionset/">утилитой regionset</ulink>. </para></answer> </qandaentry> <qandaentry> <question><para> DVD не проигрываются, MPlayer зависает или выводит ошибку "Encrypted VOB file!". </para></question> <answer><para> Код расшифровки CSS не работает с некоторыми приводами, если регион неверно установлен. Смотрите ответ на предыдущий вопрос. </para></answer> </qandaentry> <qandaentry> <question><para> Нужны ли права root (setuid) для воспроизведения DVD? </para></question> <answer><para> Нет. Конечно, Вы должны иметь необходимые права на файл DVD устройства (в <filename class="directory">/dev/</filename>). </para></answer> </qandaentry> <qandaentry> <question><para> Возможно ли проигрывать/кодировать только выбранные разделы? </para></question> <answer><para> Да, попробуйте опцию <option>-chapter</option>. </para></answer> </qandaentry> <qandaentry> <question><para> Воспроизведение DVD медленное! </para></question> <answer><para> Используйте опцию <option>-cache</option> (описанную на странице man) и попробуйте включить DMA для DVD привода утилитой <command>hdparm</command> (описанной в <link linkend="drives">разделе CD</link>). </para></answer> </qandaentry> <qandaentry> <question><para> Я скопировал DVD используя vobcopy. Как его проигрывать/кодировать с жесткого диска? </para></question> <answer><para> Используйте опцию <option>-dvd-device</option>, чтобы указать каталог, содержащий файлы: <screen> mplayer dvd://1 -dvd-device <replaceable>/путь/к/каталогу</replaceable> </screen> </para></answer> </qandaentry> </qandadiv> <!-- ********** --> <qandadiv id="faq-features"> <title>Просьбы о новых возможностях</title> <qandaentry> <question><para> Если <application>MPlayer</application> приостановлен, и я пытаюсь перемотать фильм или нажимаю любую клавишу, воспроизведение продолжается. Хотелось бы иметь возможность перемотки во время паузы. </para></question> <answer><para> Это нелегко реализовать без потери синхронизации A/V. Пока ни одна попытка не увенчалась успехом, но патчи приветствуются. </para></answer> </qandaentry> <qandaentry> <question><para> Хочется перематывать на +/- 1 кадр вместо 10 секунд. </para></question> <answer><para> Вы можете перемещаться на 1 кадр вперед, нажимая клавишу <keycap>.</keycap>. После этого воспроизведение будет приостановлено (смотрите страницу руководства man для подробностей). Перемещение назад вряд ли будет реализовано в ближайшем будущем. </para></answer> </qandaentry> </qandadiv> <!-- ********** --> <qandadiv id="faq-encoding"> <title>Кодирование</title> <qandaentry> <question><para> Как производить кодирование? </para></question> <answer><para> Прочтите раздел <link linkend="mencoder"><application>MEncoder</application></link>. </para></answer> </qandaentry> <qandaentry> <question><para> Как сохранить весь ролик DVD в файл? </para></question> <answer><para> Как только определитесь с выбором ролика и проверите, что он проигрывается в <application>MPlayer</application>, воспользуйтесь опцией <option>-dumpstream</option>. Например: <screen> mplayer dvd://5 -dumpstream -dumpfile <replaceable>dvd_dump.vob</replaceable> </screen> сохранит 5-й ролик в файл <replaceable>dvd_dump.vob</replaceable> </para></answer> </qandaentry> <qandaentry> <question><para> Как автоматически создавать (S)VCD? </para></question> <answer><para> Попробуйте скрипт <filename>mencvcd.sh</filename> из каталога <filename class="directory">TOOLS</filename>. С его помощью Вы можете перекодировать DVD или другие фильмы в VCD или SVCD формат и даже записывать их на CD. </para></answer> </qandaentry> <qandaentry> <question><para> Как создать (S)VCD? </para></question> <answer><para> Новые версии <application>MEncoder</application> могут самостоятельно создавать MPEG-2 файлы, которые можно использовать в качестве основы для VCD или SVCD, воспроизводящиеся "из коробки" на всех платформах (например, чтобы поделиться фильмом, снятым на видеокамеру, с компьютерно-неграмотными друзьями). Прочтите <link linkend="menc-feat-vcd-dvd">Использование MEncoder для создания VCD/SVCD/DVD-совместимых файлов</link>. </para></answer> </qandaentry> <qandaentry> <question><para> Как склеить два файла? </para></question> <answer><para> MPEG файлы могут быть объединены в один, если сильно повезет. Для файлов AVI, можете воспользоваться встроенной возможностью <application>MEncoder</application>'а работать с несколькими файлами сразу: <screen> mencoder -ovc copy -oac copy -o <replaceable>out.avi</replaceable> <replaceable>файл1.avi</replaceable> <replaceable>файл2.avi</replaceable> </screen> Это будет работать только если файлы имеют одинаковое разрешение и сжаты одинаковым кодеком. Также попробуйте <ulink url="http://fixounet.free.fr/avidemux/">avidemux</ulink> и <application>avimerge</application> (часть набора утилит <ulink url="http://www.transcoding.org/">transcode</ulink> ). </para></answer> </qandaentry> <qandaentry> <question><para> Как исправить AVI файлы с испорченным индексом или неверным чередованием? </para></question> <answer><para> Избежать использования <option>-idx</option> и иметь возможность перемотки в AVI файлах с испорченным индексом, либо избежать <option>-ni</option> для воспроизведения файлов с неверным чередованием поможет команда <screen> mencoder <replaceable>input.avi</replaceable> -idx -ovc copy -oac copy -o <replaceable>output.avi</replaceable> </screen> Она скопирует видео и аудио в новый файл, генерируя новый индекс и исправляя чередование. Конечно, это не поможет исправить ошибки в видео и/или аудио потоке. </para></answer> </qandaentry> <qandaentry> <question><para> Как исправить пропорции в AVI файле? </para></question> <answer><para> Вы можете это сделать при помощи опции <application>MEncoder</application>'а <option>-force-avi-aspect</option>, которая переопределяет информацию о пропорциях, хранящуюся в опции vprp AVI OpenDML заголовка. Например: <screen> mencoder <replaceable>input.avi</replaceable> -ovc copy -oac copy -o <replaceable>output.avi</replaceable> -force-avi-aspect 4/3 </screen> </para></answer> </qandaentry> <qandaentry> <question><para> Как сделать копию и закодировать VOB файл с испорченным началом? </para></question> <answer><para> Основная проблема при попытке кодировать испорченный VOB файл <footnote id='fn-corrupted-files-or-copy-protection'><para> В какой-то мере некоторые формы защиты от копирования могут быть восприняты как испорченное содержимое. </para></footnote> состоит в том, что будет трудно закодировать файл с хорошей A/V синхронизацией. Один из способов заключается в отбрасывании испорченных данных и кодирования только корретной части. Сначала ищите начало корректных данных (меняя параметр "колво_байтов_для_пропуска"): <screen> mplayer <replaceable>input.vob</replaceable> -sb <replaceable>колво_байтов_для_пропуска</replaceable> </screen> Затем создаете новый файл, содержащий корректную часть: <screen> dd if=<replaceable>input.vob</replaceable> of=<replaceable>output_cut.vob</replaceable> skip=1 ibs=<replaceable>колво_байтов_для_пропуска</replaceable> </screen> </para></answer> </qandaentry> <qandaentry> <question><para> Не могу закодировать DVD субтитры в AVI! </para></question> <answer><para> Необходимо правильно указать опцию <option>-sid</option> </para></answer> </qandaentry> <qandaentry> <question><para> Как кодировать только выбранные эпизоды из DVD? </para></question> <answer><para> Используйте опцию <option>-chapter</option>, например <option>-chapter 5-7</option>. </para></answer> </qandaentry> <qandaentry> <question><para> Я хочу работать с файлами более 2Гб в файловой системе VFAT. Это возможно? </para></question> <answer><para> Нет. VFAT не поддерживает файлы более 2Гб. </para></answer> </qandaentry> <qandaentry> <question><para> Что означают числа в статусной строке в процессе кодировании? </para></question> <answer><para> Пример: <screen> Pos: 264.5s 6612f ( 2%) 7.12fps Trem: 576min 2856mb A-V:0.065 [2156:192] </screen> <variablelist> <varlistentry> <term><systemitem>Pos: 264.5s</systemitem></term> <listitem><para>временная позиция в кодируемом потоке</para></listitem> </varlistentry> <varlistentry> <term><systemitem>6612f</systemitem></term> <listitem><para>количество закодированных кадров</para></listitem> </varlistentry> <varlistentry> <term><systemitem>2%</systemitem></term> <listitem><para>размер закодированной части входного потока</para></listitem> </varlistentry> <varlistentry> <term><systemitem>7.12fps</systemitem></term> <listitem><para>скорость кодирования</para></listitem> </varlistentry> <varlistentry> <term><systemitem>Trem: 576min</systemitem></term> <listitem><para>оценка времени, оставшегося до конца кодирования</para></listitem> </varlistentry> <varlistentry> <term><systemitem>2856mb</systemitem></term> <listitem><para>оценка окончательного размера перекодированного файла</para></listitem> </varlistentry> <varlistentry> <term><systemitem>A-V:0.065</systemitem></term> <listitem><para>текушая задержка между аудио и видео потоками</para></listitem> </varlistentry> <varlistentry> <term><systemitem>[2156:192]</systemitem></term> <listitem><para> средний видео битпоток (в кбит/с) и средний аудио битпоток (в кбит/с) </para></listitem> </varlistentry> </variablelist> </para></answer> </qandaentry> <qandaentry> <question><para> Почему рекомендуемый <application>MEncoder</application>'ом битрейт отрицателен? </para></question> <answer><para> Потому что аудио битрейт в процессе кодирования становится слишком велик, чтобы уместить фильм на CD. Проверьте, правильно ли установлена libmp3lame. </para></answer> </qandaentry> <qandaentry> <question><para> Не могу перекодировать ASF файл в AVI/MPEG-4, потому что используется 1000fps. </para></question> <answer><para> Поскольку ASF использует переменную частоту кадров, а AVI — фиксированную, необходимо её установить вручную опцией <option>-ofps</option>. </para></answer> </qandaentry> <qandaentry> <question><para> Как поместить субтитры в выходной файл? </para></question> <answer><para> Просто укажите <application>MEncoder</application> опцию <option>-sub <имя_файла></option> (или <option>-sid</option>, соответственно). </para></answer> </qandaentry> <qandaentry> <question><para> Как закодировать только звук из видеоклипа? </para></question> <answer><para> Напрямую это невозможно, но можете попробовать такой способ (обратите внимание на <emphasis role="bold">&</emphasis> в конце команды <command>mplayer</command>): <screen> mkfifo encode mplayer -ao pcm -aofile <replaceable>encode</replaceable> dvd://1 & lame <replaceable>Ваши_опции</replaceable> <replaceable>encode</replaceable> <replaceable>music.mp3</replaceable> rm <replaceable>encode</replaceable> </screen> Это позволяет использовать любой кодер, не только <application>LAME</application>, просто замените <command>lame</command> на Ваш предпочитаемый кодер. </para></answer> </qandaentry> <qandaentry> <question><para> Почему сторонние проигрыватели не могут воспроизвести MPEG-4 файлы, сжатые <application>MEncoder</application>'ом версий старше 1.0pre7? </para></question> <answer><para> <systemitem class="library">libavcodec</systemitem>, родная библиотека кодирования MPEG-4, обычно поставляемая с <application>MEncoder</application>, устанавливала FourCC в 'DIVX' при сжатии MPEG-4 видео (FourCC — это тэг AVI, указывающий нужную программу сжатия и декодирования видео, т.е. кодек). Поэтому многие люди считают, что <systemitem class="library">libavcodec</systemitem> была библиотекой кодирования DivX, когда на самом деле это совершенно другая библиотека кодирования MPEG-4, реализующая стандарт MPEG-4 значительно лучше, чем DivX. Поэтому новый FourCC, по умолчанию используемый <systemitem class="library">libavcodec</systemitem> — это 'FMP4', но Вы можете переопределить это поведение, используя опцию <application>MEncoder</application>'а <option>-ffourcc</option>. Вы также можете сменить FourCC у существующего файла тем же способом: <screen> mencoder <replaceable>input.avi</replaceable> -o <replaceable>output.avi</replaceable> -ffourcc XVID </screen> Имейте ввиду, что этот пример устанавливает FourCC в XVID, а не DIVX. Это рекомендуется, т.к. DIVX FourCC означает DivX4, очень простой MPEG-4 кодек, в то время как DX50 и XVID оба — полные MPEG-4 (ASP). Таким образом, если Вы установите FourCC в DIVX, некоторые плохие программные или аппаратные проигрыватели могут быть в шоке от дополнительных возможностей, которые <systemitem class="library">libavcodec</systemitem> поддерживает, а DivX — нет; с другой стороны <systemitem class="library">Xvid</systemitem> по функциональности ближе к <systemitem class="library">libavcodec</systemitem> и поддерживается любыми приличными проигрывателями. </para></answer> </qandaentry> <qandaentry> <question><para> Как перекодировать звуковой файл (без видео)? </para></question> <answer><para> Используйте <filename>aconvert.sh</filename> из подкаталога <filename class="directory">TOOLS</filename> дерева исходников MPlayer. </para></answer> </qandaentry> <qandaentry> <question><para> Как воспроизвести субтитры внедренные в AVI? </para></question> <answer><para> Используйте <filename>avisubdump.c</filename> из подкаталога <filename class="directory">TOOLS</filename> или прочтите <ulink url="http://xlife.zuavra.net/curse/0012/">этот документ о извлечении/мультиплексировании субтитров внедренных в OpenDML AVI файлы</ulink>. </para></answer> </qandaentry> <qandaentry> <question><para> MPlayer не хочет... </para></question> <answer><para> Посмотрите коллекцию всевозможных скриптов и хаков в подкаталоге <filename class="directory">TOOLS</filename>. <filename>TOOLS/README</filename> содержит документацию. </para></answer> </qandaentry> </qandadiv> </qandaset> </chapter>