<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>14.4. Кодирование кодеком Xvid</title><link rel="stylesheet" href="default.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.73.2"><link rel="start" href="index.html" title="MPlayer - The Movie Player"><link rel="up" href="encoding-guide.html" title="Глава 14. Кодирование с MEncoder"><link rel="prev" href="menc-feat-enc-libavcodec.html" title="14.3. Кодирование семейством кодеков libavcodec"><link rel="next" href="menc-feat-x264.html" title="14.5. Кодирование кодеком x264"><link rel="preface" href="howtoread.html" title="Как читать эту документацию"><link rel="chapter" href="intro.html" title="Глава 1. Введение"><link rel="chapter" href="install.html" title="Глава 2. Установка"><link rel="chapter" href="usage.html" title="Глава 3. Использование"><link rel="chapter" href="cd-dvd.html" title="Глава 4. Использование CD/DVD"><link rel="chapter" href="faq.html" title="Глава 5. Часто Задаваемые вопросы"><link rel="chapter" href="containers.html" title="Глава 6. Поддерживаемые форматы"><link rel="chapter" href="codecs.html" title="Глава 7. Поддерживаемые кодеки"><link rel="chapter" href="tv.html" title="Глава 8. TV"><link rel="chapter" href="radio.html" title="Глава 9. Радио"><link rel="chapter" href="video.html" title="Глава 10. Устройства вывода видео"><link rel="chapter" href="audio.html" title="Глава 11. Устройства вывода звука"><link rel="chapter" href="ports.html" title="Глава 12. Портинг"><link rel="chapter" href="mencoder.html" title="Глава 13. Основы использования MEncoder"><link rel="chapter" href="encoding-guide.html" title="Глава 14. Кодирование с MEncoder"><link rel="appendix" href="bugreports.html" title="Приложение A. Как сообщать об ошибках"><link rel="appendix" href="bugs.html" title="Приложение B. Известные проблемы"><link rel="appendix" href="skin.html" title="Приложение C. Формат скинов MPlayer"><link rel="appendix" href="history.html" title="Приложение D. История"><link rel="subsection" href="menc-feat-xvid.html#menc-feat-xvid-intro" title="14.4.1. Какие опции следует использовать для получения лучших результатов?"><link rel="subsection" href="menc-feat-xvid.html#menc-feat-xvid-encoding-options" title="14.4.2. Опции кодирования Xvid"><link rel="subsection" href="menc-feat-xvid.html#menc-feat-xvid-encoding-profiles" title="14.4.3. Профили кодирования"><link rel="subsection" href="menc-feat-xvid.html#menc-feat-xvid-example-settings" title="14.4.4. Примеры настроек кодирования"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">14.4. Кодирование кодеком <code class="systemitem">Xvid</code></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="menc-feat-enc-libavcodec.html">Пред.</a> </td><th width="60%" align="center">Глава 14. Кодирование с <span class="application">MEncoder</span></th><td width="20%" align="right"> <a accesskey="n" href="menc-feat-x264.html">След.</a></td></tr></table><hr></div><div class="sect1" lang="ru"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="menc-feat-xvid"></a>14.4. Кодирование кодеком <code class="systemitem">Xvid</code></h2></div></div></div><p> <code class="systemitem">Xvid</code> — это свободная библиотека для кодирования MPEG-4 ASP видео потоков. Перед тем, как начать кодирование, Вам потребуется <a class="link" href="video-codecs.html#xvid" title="7.1.2. Xvid"> настроить <span class="application">MEncoder</span> для его поддержки</a>. </p><p> Это руководство в основном нацелено на особенности применения тех же методов, что описаны в руководстве по кодированию с помощью x264. Поэтому, сначала прочтите, пожалуйста, <a class="link" href="menc-feat-x264.html#menc-feat-x264-encoding-options-intro" title="14.5.1.1. Введение">первую часть</a> того руководства. </p><div class="sect2" lang="ru"><div class="titlepage"><div><div><h3 class="title"><a name="menc-feat-xvid-intro"></a>14.4.1. Какие опции следует использовать для получения лучших результатов?</h3></div></div></div><p> Пожалуйста, начните с просмотра раздела <code class="systemitem">Xvid</code> man страницы <span class="application">MPlayer</span>. Этот раздел предполагается как дополнение к man странице. </p><p> Настройки по умолчанию Xvid уже являются хорошим выбором между скоростью и качеством, поэтому Вы можете без опасений придерживаться их, если следующий раздел Вас озадачивает. </p></div><div class="sect2" lang="ru"><div class="titlepage"><div><div><h3 class="title"><a name="menc-feat-xvid-encoding-options"></a>14.4.2. Опции кодирования <code class="systemitem">Xvid</code></h3></div></div></div><div class="itemizedlist"><ul type="disc"><li><p> <span class="bold"><strong>vhq</strong></span> Эта опция влияет на алгоритм принятия решений о макроблоке, чем выше значение, тем мудрее будут решения. Значение по умолчанию можно без опаски использовать для любого кодирования, в то время, как более высокие значения всегда улучшат PSNR, но будут работать значительно медленнее. Заметьте, пожалуйста, что лучший PSNR не обязательно означает лучше выглядящую картинку, но говорит, что она ближе к оригиналу. Отключение этой опции заметно ускоряет кодирование; это может быть достойным компромиссом, если скорость Вам критична. </p></li><li><p> <span class="bold"><strong>bvhq</strong></span> То же, что и vhq, но для B-кадров. Имеет незначительное влияние на скорость и слегка улучшает качество (около +0.1дБ). </p></li><li><p> <span class="bold"><strong>max_bframes</strong></span> Большее число допустимых последовательных B-кадров обычно улучшает сжимаемость, хотя оно может также привести к большему количеству блочных артефактов (квадратиков). Значение по умолчанию — хороший выбор между сжимаемостью и качеством, но Вы можете увеличить его до 3, если стеснены величиной битпотока. Вы также можете уменьшить это значение до 1 или 0, если печетесь об отличном качестве, впрочем в этом случае Вы должны убедиться, что целевой битпоток достаточно высок, дабы кодировщик не увеличивал значение квантователя, сохраняя нужную величину битпотока. </p></li><li><p> <span class="bold"><strong>bf_threshold</strong></span> Управляет чувствительностью кодировщика к B-кадрам, где большие значения приводят к использованию большего количества B-кадров (и наоборот). Опция должна использоваться совместно с <tt class="option">max_bframes</tt>; если Вы стеснены величиной битпотока, то должны увеличить и <tt class="option">max_bframes</tt>, и <tt class="option">bf_threshold</tt>, в том время как увеличение <tt class="option">max_bframes</tt> и уменьшение <tt class="option">bf_threshold</tt> позволят кодировщику использовать больше B-кадров в местах, где это <span class="bold"><strong>действительно</strong></span> необходимо. Низкое количество <tt class="option">max_bframes</tt> и высокое значение <tt class="option">bf_threshold</tt> — это, возможно, не самое мудрое решение, поскольку оно принудит кодировщик размещать B-кадры в местах, которые никак не выиграют от этого, тем самым ухудшая визуальное качество. Однако, если Вам требуется совместимость с аппаратными проигрывателями, поддерживающими только старые DivX профили (которые поддерживают только 1 последовательный B-кадр), это единственный способ увеличить сжимаемость при помощи B-кадров. </p></li><li><p> <span class="bold"><strong>trellis</strong></span> Оптимизирует процесс квантования для получения оптимального соотношения между PSNR и битпотоком, что позволяет существенно экономить биты. Эти биты впоследствии будут потрачены на другие части видео, что приведет к увеличению общего качества. Следует всегда оставлять эту опцию включенной, поскольку ее влияние на качество огромно. Даже если Вы заботитесь о скорости, не отключайте ее до тех пор, пока не выставили <tt class="option">vhq</tt> и остальные более CPU-прожорливые опции на минимум. </p></li><li><p> <span class="bold"><strong>hq_ac</strong></span> Активирует более точный метод оценки стоимости коэффициентов, что уменьшает размер файла примерно на 0.15 - 0.19% (соответствует увеличению PSNR меньше, чем на 0.01дБ), имея несущественное влияние на скорость. Поэтому, рекомендуется всегда держать эту опцию включенной. </p></li><li><p> <span class="bold"><strong>cartoon</strong></span> Разработана для лучшего кодирования мультфильмов и не влияет на скорость, поскольку всего-лишь настраивает эвристики принятия решений о режимах для этого типа содержимого. </p></li><li><p> <span class="bold"><strong>me_quality</strong></span> Это опция для настройки точности оценки движения. Чем выше <tt class="option">me_quality</tt>, тем точнее будет оценка оригинального движения и тем лучше получающийся отрывок будет фиксировать оригинальное движение. </p><p> Настройка по умолчанию лучше во всех случаях, поэтому не рекомендуется ее выключать, если только Вы действительно не гонитесь за скоростью, поскольку биты, сэкономленные хорошей оценкой движения, могут быть использованы где-нибудь еще, увеличивая общее качество. Таким образом, не используйте значения ниже 5, да и его — только в крайнем случае. </p></li><li><p> <span class="bold"><strong>chroma_me</strong></span> Улучшает оценку движения, дополнительно принимая во внимание информацию о цвете, тогда как одна <tt class="option">me_quality</tt> использует только яркость. Это замедляет кодирование на 5-10%, но несколько улучшает визуальное качество, уменьшая эффект блочности и сокращая размер файла примерно на 1.3%. Если Вас интересует скорость, следует попробовать отключить эту опцию, прежде чем решите уменьшать значение <tt class="option">me_quality</tt>. </p></li><li><p> <span class="bold"><strong>chroma_opt</strong></span> Эта опция служит для увеличения качества цветного изображения вокруг чисто черных/белых границ вместо улучшения сжатия. Она также может помочь против эффекта "красных ступенек". </p></li><li><p> <span class="bold"><strong>lumi_mask</strong></span> Пытается отдать меньший битпоток областям изображения, которые человеческий глаз не в состоянии увидеть достаточно хорошо, что позволит кодировщику потратить сэкономленные биты на более важные части картинки. Качество закодированного материала, привнесенное этой опцией, сильно зависит от личных предпочтений и от типа и настроек монитора, использовавшегося для просмотра (обычно результат выглядит не очень хорошо, если он яркий, или является TFT монитором). </p></li><li><p> <span class="bold"><strong>qpel</strong></span> Увеличивает количество предполагаемых векторов движения, путём повышения точности оценки движения с полупиксельной до четвертьпиксельной. Идея состоит в том, чтобы найти лучшие векторы движения, которые взамен уменьшат битпоток (тем самым увеличивая качество). Однако, векторы движения с четверьтпиксельной точностью требуют большего количества дополнительных бит для кодирования, а векторы-кандидаты не всегда дают (значительно) лучшие результаты. Достаточно часто кодек тратит дополнительные биты на повышенную точность впустую, а взамен получает или вообще ничего, или небольшое увеличение качества. К сожалению, нет способа предсказать возможные улучшения от <tt class="option">qpel</tt>, так что Вам придется сделать кодирование с ней и без нее, чтобы знать наверняка. </p><p> <tt class="option">qpel</tt> может почти удвоить время кодирования и требует, как минимум, на 25% большей мощности при декодировании. Она поддерживается не всеми аппаратными проигрывателями. </p></li><li><p> <span class="bold"><strong>gmc</strong></span> Пытается сэкономить биты в панорамных сценах, используя один вектор движения для всего кадра. Это почти всегда увеличивает PSNR, но заметно замедляет кодирование (так же как и декодирование). Поэтому Вас следует использовать ее, только когда Вы включили <tt class="option">vhq</tt> на максимум. GMC <code class="systemitem">Xvid</code>'а является более сложным, чем у DivX'а, но поддерживается только некоторыми аппаратными проигрывателями. </p></li></ul></div></div><div class="sect2" lang="ru"><div class="titlepage"><div><div><h3 class="title"><a name="menc-feat-xvid-encoding-profiles"></a>14.4.3. Профили кодирования</h3></div></div></div><p> Xvid поддерживает профили кодирования через опцию <tt class="option">profile</tt>, которая используется для накладывания ограничений на значения видео потока Xvid таким образом, что он будет воспроизводиться на всем, что поддерживает выбранный профиль. Ограничения относятся к разрешению, битпотоку и некоторым возможностям MPEG-4. Следующая таблица показывает, что поддерживает тот или иной профиль. </p><div class="informaltable"><table border="1"><colgroup><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"><col align="center"></colgroup><tbody><tr><td align="center"> </td><td colspan="4" align="center">Простой</td><td colspan="6" align="center">Расширенный простой</td><td colspan="6" align="center">DivX</td></tr><tr><td align="center">Название профиля</td><td align="center">0</td><td align="center">1</td><td align="center">2</td><td align="center">3</td><td align="center">0</td><td align="center">1</td><td align="center">2</td><td align="center">3</td><td align="center">4</td><td align="center">5</td><td align="center">Карманный</td><td align="center">Портативный NTSC</td><td align="center">Портативный PAL</td><td align="center">Домашний кинотеатр NTSC</td><td align="center">Домашний кинотеатр PAL</td><td align="center">HDTV</td></tr><tr><td align="center">Ширина [пикселов]</td><td align="center">176</td><td align="center">176</td><td align="center">352</td><td align="center">352</td><td align="center">176</td><td align="center">176</td><td align="center">352</td><td align="center">352</td><td align="center">352</td><td align="center">720</td><td align="center">176</td><td align="center">352</td><td align="center">352</td><td align="center">720</td><td align="center">720</td><td align="center">1280</td></tr><tr><td align="center">Высота [пикселов]</td><td align="center">144</td><td align="center">144</td><td align="center">288</td><td align="center">288</td><td align="center">144</td><td align="center">144</td><td align="center">288</td><td align="center">288</td><td align="center">576</td><td align="center">576</td><td align="center">144</td><td align="center">240</td><td align="center">288</td><td align="center">480</td><td align="center">576</td><td align="center">720</td></tr><tr><td align="center">Частота кадров [fps]</td><td align="center">15</td><td align="center">15</td><td align="center">15</td><td align="center">15</td><td align="center">30</td><td align="center">30</td><td align="center">15</td><td align="center">30</td><td align="center">30</td><td align="center">30</td><td align="center">15</td><td align="center">30</td><td align="center">25</td><td align="center">30</td><td align="center">25</td><td align="center">30</td></tr><tr><td align="center">Максимальный средний битпоток [кбит/сек]</td><td align="center">64</td><td align="center">64</td><td align="center">128</td><td align="center">384</td><td align="center">128</td><td align="center">128</td><td align="center">384</td><td align="center">768</td><td align="center">3000</td><td align="center">8000</td><td align="center">537.6</td><td align="center">4854</td><td align="center">4854</td><td align="center">4854</td><td align="center">4854</td><td align="center">9708.4</td></tr><tr><td align="center">Пиковое значение средней величины битпотока за 3 секунды [кбит/сек]</td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center">800</td><td align="center">8000</td><td align="center">8000</td><td align="center">8000</td><td align="center">8000</td><td align="center">16000</td></tr><tr><td align="center">Макс. B-кадров</td><td align="center">0</td><td align="center">0</td><td align="center">0</td><td align="center">0</td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center">0</td><td align="center">1</td><td align="center">1</td><td align="center">1</td><td align="center">1</td><td align="center">2</td></tr><tr><td align="center">MPEG квантование</td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td></tr><tr><td align="center">Адаптивное квантование</td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr><tr><td align="center">Чересстрочное кодирование</td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr><tr><td align="center">Четвертьпиксельная точность</td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td></tr><tr><td align="center">Глобальная компенсация движения</td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td><td align="center"> </td></tr></tbody></table></div></div><div class="sect2" lang="ru"><div class="titlepage"><div><div><h3 class="title"><a name="menc-feat-xvid-example-settings"></a>14.4.4. Примеры настроек кодирования</h3></div></div></div><p> Последующие настройки — это примеры различных комбинаций опций кодирования, которые влияют на соотношения скорость-качество при той же величине целевого битпотока. </p><p> Все настройки кодирования проверялись на тестовом видео 720x448 @30000/1001 fps с целевым битпотоком 900кбит/сек, на машине AMD-64 3400+ с 2400 МГц и 64 битном режиме. Для каждой настройки кодирования указаны измеренная скорость кодирования (в кадрах в секунду) и потеря PSNR (в дБ) по сравнению с настройкой "очень высокое качество". Поймите, пожалуйста, что в зависимости от Вашего материала, типа машины, прогресса разработки, Вы можете получить сильно отличающиеся результаты. </p><div class="informaltable"><table border="1"><colgroup><col><col><col><col></colgroup><thead><tr><th>Описание</th><th>Опции кодирования</th><th>скорость (в fps)</th><th>Относительная потеря PSNR (в дБ)</th></tr></thead><tbody><tr><td>Очень высокое качество</td><td><tt class="option">chroma_opt:vhq=4:bvhq=1:quant_type=mpeg</tt></td><td>16fps</td><td>0дБ</td></tr><tr><td>Высокое качество</td><td><tt class="option">vhq=2:bvhq=1:chroma_opt:quant_type=mpeg</tt></td><td>18fps</td><td>-0.1дБ</td></tr><tr><td>Быстрое</td><td><tt class="option">turbo:vhq=0</tt></td><td>28fps</td><td>-0.69дБ</td></tr><tr><td>Реального времени</td><td><tt class="option">turbo:nochroma_me:notrellis:max_bframes=0:vhq=0</tt></td><td>38fps</td><td>-1.48дБ</td></tr></tbody></table></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="menc-feat-enc-libavcodec.html">Пред.</a> </td><td width="20%" align="center"><a accesskey="u" href="encoding-guide.html">Уровень выше</a></td><td width="40%" align="right"> <a accesskey="n" href="menc-feat-x264.html">След.</a></td></tr><tr><td width="40%" align="left" valign="top">14.3. Кодирование семейством кодеков <code class="systemitem">libavcodec</code> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Начало</a></td><td width="40%" align="right" valign="top"> 14.5. Кодирование кодеком <code class="systemitem">x264</code></td></tr></table></div></body></html>