Настройки кодирования bdrip 1080 x264 xvid4psp. Кодирование с помощью технологии CUDA. Пресеты для устройств

Как конвертировать и оптимизировать видео при помощи программы XviD4PSP — смотрите в видеоуроке Евгения Попова.

«Раньше, когда мне нужно было быстро привести тяжелый видеофайл к оптимальному размеру, я закачивал этот файл на свой Youtube-канал в скрытом режиме, а затем скачивал этот ролик с Youtube, радуясь высокому качеству и минимальному размеру файла.

Но буквально пару дней назад мне попался один интересный конвертер, который позволяет делать то же самое только без участия Youtube. Программа называется XviD4PSP 7. Ее фишка в том, что она не зависит от системных кодеков и каких-либо компонентов системы - всё внутри. Не требует установки.» © Евгений Попов

Дополнительная информация

О программе Cinema XviD4PSP

XviD4PSP 7.0 для Mac OSX и Windows:

  • Программа для удобного и качественного конвертирования видео и аудио.
  • Полностью новая версия.
  • Не зависит от системных кодеков и каких-либо компонентов системы - всё внутри.
  • Не требует установки.
  • Вся программа в одном EXE.
  • Работает независимо от версий 5 и 6.
  • Минимальные требования к системе:
  • Mac OSX 10.6.8 или более новая.
  • Windows XP/Vista/7/8.

Импортируемые форматы:

  • AVI DIVX ASF MPG MPE M2V MPEG VOB TS M2P D2V MOV QT 3GP HDMOV RM RAM RMVB RPX SMI SMIL MKV OGM WMV DVR-MS FLV …
  • Почти любой формат на вход.

Экспортируемые форматы:

  • AC3, AAC, MP3, MP2, MP4, M4V, M4A, OGG, WAV, WMA, AMR, AVI, DV, FLV, MPEGTS, MPEGPS, MKV, MKA, MOV, FLV, 3GP, WEBM, WMV, ASF, DV.

Пресеты для устройств:

  • Sony: PSP, PS3, Ericsson K610, Ericsson K800.
  • Apple: iPod, iPod Touch, iPhone, iPad, Apple TV, iMovie iOS.
  • Nokia: Nokia N8, Nokia N900, Nokia 5700, Nokia S60v5, Nokia X6.
  • Другие: Xbox 360, YouTube, DVD Player SD, DVD Player HD, iRiver Clix 2, HTC Touch Diamond 2, Samsung Galaxy Tab 1010, Archos 5G, BlackBerry 8100, BlackBerry 8800, BlackBerry 8830, LG Prada, Motorola K1 и многие другие устройства.
XviD4PSP 5.0: настройки кодирования видео (кодек х264) для iPod, iPhone и AppleTV

В настоящее время существует множество "однокнопочных" конвертеров, которые по заверениям разработчиков очень быстро и качественно конвертируют видео в необходимый пользователю формат. На самом деле качество видео, созданного данными программами, мягко говоря - слабовато. Поэтому для создания видео для iPod, iPhone, AppleTV и других устройств необходимо использовать более серьезные продукты.
Одной из лучших программ для конвертирования видео является Xvid4PSP. XviD4PSP - это удобный и качественный мультиформатный конвертер на основе AviSynth. Благодаря AviSynth, который действует как «посредник» между видеофайлами и программой обработки видео, XviD4PSP способен использовать в качестве исходного потока практически любой тип видео, для обработки применять качественные фильтры (изменения размеров, обрезка, подавление шумов, повышение резкости и т.д.).
Изначально разработчиком данного конвертера является Winnydows. В настоящее время активным развитием и доработкой данного софта занимается fcp , а плагинов - фильтров к нему - Tempter57 , за что им огромное спасибо.
Последнюю версию программы можно скачать
Для корректной работы программы необходимы Microsoft Framework 3.0 и K-Lite Codec Pack

Настройки XviD4PSP. Производятся после установки программы

После установки программы необходимо произвести некоторые настройки, которые будут использоваться в дальнейшем. Рекомендую установить-снять галочки так же, как на скриншотах, однако опытные пользователи могут произвести настройки на свое усмотрение.
1. НАСТРОИТЬ-->ЯЗЫК (кому какой нравится, у меня русский)
2. НАСТРОИТЬ-->ДВИЖОК ПЛЕЕРА (оставляем DirectShow)
3. НАСТРОИТЬ-->АВТО ОБЪЕДИНЕНИЕ (только DVD)
4. НАСТРОИТЬ-->АВТО ГРОМКОСТЬ (запрещено)
5. НАСТРОИТЬ-->АВТО ОБРЕЗКА (только MPEG файлы) это автообрезка черных полос, обычно черные полосы присутствуют только в DVD исходниках, т.е. в MPEG-2 видео.
6. НАСТРОИТЬ-->АВТО ДЕИНТЕРЛЕЙС (только MPEG файлы) интерлейсное видео обычно только в DVD исходниках.
7. НАСТРОИТЬ-->ПОСЛЕ ОТКРЫТИЯ (середина)

ГЛОБАЛЬНЫЕ НАСТРОЙКИ

РАЗНОЕ

1. Не извлекать звук для превью. Для исключения большинства проблем, связанных с кодированием звука, рекомендуется галочку снять. Эта настройка изначально была предусмотрена для сокращения времени загрузки исходного файла в программу, но большинство проблем, связанных с кодированием звука в XviD4PSP появляется с включение этой настройки. (ОБЯЗАТЕЛЬНО! ГАЛОЧКУ СНЯТЬ)
2. Сохранять анаморфный аспект. Если установить галочку, то в случае задания аспекта (соотношение сторон кадра), отличного от исходного его значения, на выходе получится анаморфное* видео. Галочку лучше снять, т.к. встречаются случаи, когда, при ресайзе (уменьшении исходного разрешения кадра) остается ошибка аспекта, возникающая из-за mod-8 (обязательной кратности размера стороны кадра 8-ми). Эта ошибка, при включенной функции сохранения анаморфного аспекта, исправляется за счет придания кадру небольшой анаморфности. Как пример: перед кодирование вы задавали разрешение кадра - 480х360, а у скриншотов, сделанных после кодирования, размер сторон отличается от заданного вами, он имеет значение 482х360. При получении MediaInfo файла, разрешение правильное - 480х360. Эта разница в 2 пиксела и есть последствия установленной галчки и исправления ошибки аспекта за счет анаморфирования кадра. С другой стороны, если стоит необходимость - сделать анаморфное видео, то анамофность проще задать после кодирования, в программе Yamb. (НА УСМОТРЕНИЕ ПОЛЬЗОВАТЕЛЯ. ЛУЧШЕ ГАЛОЧКУ СНЯТЬ)
3. Кодировать все в прогрессивное видео. При установленной галочке, все видео будет кодироваться в прогрессивное**, независимо от того какое исходное видео: чересстрочное или прогрессивное. (ОБЯЗАТЕЛЬНО! ГАЛОЧКУ УСТАНОВИТЬ)
4. Автоматически применять ColorMatrix*** для MPEG2 файлов. При установке галочки, ко всем DVD исходникам будет применен ColorMatrix - фильтр, корректирующий цвета потоков. (НА УСМОТРЕНИЕ ПОЛЬЗОВАТЕЛЯ)
5. Запоминать параметры окна при выходе. При установке галочки будет сохраняться размер окна программы при следующем её открытии. (НА УСМОТРЕНИЕ ПОЛЬЗОВАТЕЛЯ)
6. Обновлять скрипт при изменении настроек аудио/видео кодека. Лучше, что бы эта галочка стояла, т.к. в противном случае при изменении настроек кодирования аудио или видео, эти изменения не будут перезаписаны в скрипт, следовательно, кодирование будет произведено без учета последних изменений. Внимание! При установленной галочке, когда производится изменение скрипта вручную, а после этого изменяются настройки в интерфейсе программы, то изменения, сделанные вручную, стираются из скрипта, следовательно, их необходимо будет вписывать повторно.(ЛУЧШЕ ГАЛОЧКУ УСТАНОВИТЬ)
7. Удалять комментарии (#текст) из скрипта. После установки данной галочки, из скрипта будут удаляться все комментарии и описания, которые помогают разобраться в этом скрипте, что не очень удобно, но уменьшает размер самого скрипта. (НА УСМОТРЕНИЕ ПОЛЬЗОВАТЕЛЯ)
8. Сначала кроп/ресайз, потом фильтрация. После установки галочки, сначала будет происходить изменение размеров (ресайз) и обрезка (кроп) исходного видео до заданной пользователем геометрии кадра, и уже к этому кадру будет применяться скрипт фильтрации (высокая скорость обработки). И наоборот, при её снятии, сначала будет фильтроваться кадр исходного разрешения, и только потом, он будет обрезаться и уменьшаться в размерах (лучшее качество фильтрации). (НА УСМОТРЕНИЕ ПОЛЬЗОВАТЕЛЯ)
9. При сохранении задания считывать параметры видео из скрипта. После установки галочки, сохранение задания будет производиться на основании скрипта. Галочка необходима в том случае, если вы вносите изменения в скрипт вручную. К примеру, когда добавляете строки для проведения анализа оптимального значения среднего битрейта, включаете/отключаете тот или иной вариант фильтра и т.д. В противном случае, все изменения, внесенные в скрипт вручную, программой учитываться не будут. (ЛУЧШЕ ГАЛОЧКУ УСТАНОВИТЬ)

ВРЕМЕННЫЕ ФАЙЛЫ
1.При запуске программы искать лучшее место для временной папки. При установленной галочке, программа, при каждом новом её открытии, будет анализировать свободное место на всех жестких дисках вашей системы и предлагать для размещения рабочей директории Темп, тот, на котором больше свободного места. (НА УСМОТРЕНИЕ ПОЛЬЗОВАТЕЛЯ)
2/3. Автоматически удалять кеш. После установки галочек, будет автоматически удаляться кеш, оставшийся после кодирования. (НА УСМОТРЕНИЕ ПОЛЬЗОВАТЕЛЯ)
4. Создавать DGIndex кеш в Темп-папке. Если поставить галочку, то DGIndex кеш будет создаваться не в папке, в которой находится исходное видео, а в папке Темп. (НА УСМОТРЕНИЕ ПОЛЬЗОВАТЕЛЯ)

ЛОГ КОДИРОВАНИЯ
Рекомендуется установить все галочки для того, что бы сохранялся наиболее полный и подробный лог кодирования.
При установленной галочке «Во временной папке», лог кодирования будет сохраняться в папку Темп, в противном случае в то же место, куда сохраняется файл после кодирования.
Если установить галочку в «Автозакрытие окна кодирования при успешном выполнении задания», то после полного завершения кодирования файла, диалоговое окно кодирования будет закрываться автоматически.

ПАКЕТНАЯ ОБРАБОТКА
Здесь можно:
- Добавить-удалить расширения файлов, которые будут использоваться при пакетной обработке.
- Влючить-отключить возможность использования параметров (разрешение, аспект, кроп и других настроек из окна РАЗРЕШЕНИЕ/АСПЕКТ, а так же "трим" (обрезку по времени)) от уже открытого файла для всех последующих.
- Влючить-отключить паузу после первого открытого файла для проведения настроек кодирования.
- Влючить-отключить автоматическое начало кодирования после открытия всех файлов.
HotKeys


Здесь можно настроить управление программой с помощью "горячих клавиш" на клавиатуре.
Примечание:
* Анаморфное видео – видео с неквадратными пикселами.
** Прогрессивное видео – это видео, в котором смена кадров происходит полными кадрами, а не полукадрами. Существует два типа видео - чересстрочное и прогрессивное. В первом случае кадр состоит из двух полей (полукадров). Каждое поле содержит половину горизонтальных строк кадра; верхнее поле содержит все нечетные строки, а нижнее поле - все четные строки. Каждый кадр отображается посредством вывода всех строк одного поля, а затем другого поля. У прогрессивного видео кадры не делятся между полями, а отображаются за один проход, при этом все горизонтальные строки выводятся сверху вниз.
***ColorMatrix корректирует цвета потоков MPEG-2 DVD. Многие MPEG-2 потоки для хранения цветовой информации используют коэффициенты, отличающиеся от тех, которые используются подпрограммой преобразования цвета AviSynth. В результате, видео MPEG-2 отображается со слегка смещенными цветами (обычно наблюдается в небольшой разнице яркости). Данный фильтр пересчитывает YUV величины, предполагая коэффициенты, которые используются AviSynth, что позволяет корректно отображать видео при кодировании из MPEG-2 в MPEG-4.

XviD4PSP имеет простейший для понимания интерфейс, единственное, с чем могут возникнуть проблемы, это "настройки видео кодирования".

НАСТРОЙКИ ВИДЕО КОДИРОВАНИЯ (НАСТРОЙКА КОДЕКА)Устройства компании Apple способны воспроизводить видео стандарта H.264/MPEG-4 AVC, определяющего один из самых современных и технически совершенных форматов видео кодирования. На сегодняшний день x264 является наилучшим среди AVC-кодеков по соотношению качество/скорость кодирования. Поэтому для кодирования видео для iPod, iPhone и AppleTV будем использовать кодек х264. Xvid4PSP использует консольную версию данного кодека - х264 CLI.
После выбора формата (MP4 iPhone or Touch или MP4 AppleTV), загрузки исходного видео в программу, выбора разрешения, типа цветокоррекции, фильтрации и проведения других настроек, приступаем к настройке кодека х264. Для этого нажимаем на шестеренку в пункте "КОДИРОВАНИЕ ВИДЕО". Окно настроек имеет пять вкладок, рассмотрим каждую:

Язык - Возможность сменить язык интерфейса программы. Если вашего языка нет в программе вы можете создать файл перевода сами, переведите один из известных вам языков на свой. Все файлы переводов по-умолчанию находятся по пути:
C:\Program Files\XviD4PSP 5\languages

Движок плейера - Здесь можно выбрать способ вывода для превью-плейера
DirectShow output : можно назначить видео-рендерер (Default, Overlay, VMR-7, VMR-9), который будет использоваться при DirectShow движке, это может быть полезным, если есть проблемы с отображением видео, или если не получается сделать снимок экрана (в том месте, где должно быть окно превью, на снимке получается черный квадрат).
DirectShow или MediaBridge - Можно выбрать способ вывода для превью-плейера, первый способ - DirectShow , второй - MediaBridge (используется WPF-элемент MediaElement).
Следует учитывать, что в MediaBridge изображение выводится без учета анаморфных пропорций, а так-же в этом режиме счетчик кадров имеет дополнительную погрешность.
Preview или ScriptView - Возможность выбрать что выводить в окне превью, изображение или скрипт. Эта настройка дублируется в контекстном меню плейера (правый клик по области вокруг изображения, Главное окно - пункт №4).
При использовании ScriptView АвиСинт не подгружается, соответственно скрипт нигде не открывается - меньше тормозов, можно быстро переключать пресеты фильтрации, форматы... В общем всегда когда должно было происходить обновление превью (с соответствующими подтормаживаниями).
ScriptView White - Если отмечено (по-умолчанию это так), то в режиме ScriptView текст в окне превью будет отображаться черными буквами на белом фоне, если же галку убрать, то цвет текста сменится на белый, а цвет фона на прозрачный (будет виден темно-серый цвет окна программы).
Продвинутые пользователи могут на свой страх и риск попытаться изменить цвет текста и фона на любой другой, для этого потребуется правка ключа ScriptView_Brushes в реестре по пути HKEY_CURRENT_USER\Software\Winnydows\XviD4PSP5 , сначала идет цвет фона, за ним через символ двоеточия идет цвет текста, первые две цифры - прозрачность, следующие две - уровень R , следующие две - уровень G , и две последние - уровень B , всё в 16-тиричной системе.
Old seeking - Переключает принцип работы превью, будет ли обновляться превью во время передвижения ползунка (Old seeking ) или только после того как он будет отпущен (New seeking ). Эта настройка также доступна в главном окне (правый клик по области перемещения ползунка, Главное окно - пункт №8).

Авто объединение - В каких случаях после открытия файла производить объединение файлов которые находятся в этой же папке, имеют одинаковае название и отличаются лишь порядковым номером.
Если Разрешено - Будут объединяться все файлы, при условии что у файлов будут одинаковые названия, отличающееся только последней цифрой (порядковым номером), первый файл должен иметь в конце единицу (Например: Na.igre1.mkv, Na.igre2.mkv, Na.igre3.mkv, Na.igre4.mkv).
Если Только DVD - Будут объединяться *.VOB файлы, при условии что у файлов будут одинаковые названия, отличающееся только последней цифрой (порядковым номером). (Например: VTS_03_1.VOB, VTS_03_2.VOB, VTS_03_3.VOB, VTS_03_4.VOB). VTS_03_0.VOB - Файл с нулем в конце относится к меню и его добавлять не нужно.

Авто громкость - Возможность включить или отключить проведение нормальзации уровня громкости а также выбрать когда проводить, сразу после открытия или непосредственно перед кодированием (по-умолчанию - перед кодированием).

Авто кроп - Автоматическая обрезка черных полос у видеофайлов. Есть возможность выключить, включить для всех типов файлов или только для MPEG файлов (по-умолчанию включено только для MPEG файлов).

Авто деинтерлейс lide" title="XviD4PSP - Авто деинтерлейс" href="/images/folderusers/FAQ_XviD4PSP_AutoDI.jpg">- В каких случаях после открытия файла производить анализ интерлейса. Если Все файлы - то после открытия любого файла будет произведен анализ интерлейса, если Только MPEG - то только после открытия MPEG-файлов, а если Запрещено - то анализ интерлейса не будет производиться никогда, и за основу будет браться инфа от MediaInfo (по-умолчанию включено только для MPEG файлов).

После открытия - Что делать с файлом после открытия. Есть возможность проиграть файл после открытия, автоматически переместить ползунок прокрутки превью на середину или ничего не делать (по-умолчанию - Ничего не делать).

Глобальные настройки... - Открывается окно дополнительных настроек программы.

Отображать иконку в трее - При включении этой опции в системном трее появится иконка XviD4PSP , а саму программу станет возможным сворачивать в трей. Правый клик по иконке открывает её меню:
Закрываться в трей - если эта опция включена, то при нажатии на крестик в правом углу окна программы, она не закроется, а свернется в трей. Исключение - закрытие черезпункт меню Файл->Выход.
Сворачиваться в трей - программа будет прятаться в трей каждый раз при сворачивании её окна.
Раскрывать одним щелчком - если включено, то для разворачивания окна программы будет достаточно одинарного клика по иконке в трее. Если выключено - то потребуется двойной клик.
Отключить сообщения - отключение всплывающих сообщений в трее (появляются при завершении кодирования, когда программа свернута в трей).
Выход - закрытие программы (аналогично пункту меню Файл->Выход).
Сохранять анаморфный аспект - Если в программе открыт файл с анаморфным* аспектом, если Формат и выбранный видео-кодер поддерживают анаморф, и если включена эта опция - то файл будет кодироваться с сохранениеманаморфа. Если же эту галку убрать, то при открытии анаморфного файла разрешение будет изменено (путем уменьшения высоты), чтоб получить требуемый аспект.
* Анаморфный аспект (анаморфное разрешение) - если коротко, файл имеет анаморфный аспект, если ширина поделенная на высоту не равняется требуемому аспекту. Пример - DVD:
720/576=1.25, но аспект на DVD может быть либо 1.3333(4:3), либо 1.7777(16:9) - ни одно, ни второе число не равны 1.25, потому-что на DVD анаморфный аспект.

Кодировать всё в прогрессивное видео - Всегда применять фильтр деинтерлейса для интерлейсных файлов, даже если Формат и выбранный видео-кодер допускают кодирование в интерлейсном виде.

ColorMatrix - Если галка включена, и если исходный файл МПЕГ2, то включится ColorMatrix...

Запоминать параметры окна при выходе -Если включено, то при выходе из программы в реестре сохранятся параметры окна (размер, расположение, высота области под очередь заданий), а при последующем запуске эти параметры снова будут использованы.
Если же галку убрать, то при запуске окно программы всегда будет иметь дефолтные размеры и расположение.

Удалять комментарии (#текст) из скрипта - При включении этой опции все строчки из пресета фильтрации, начинающиеся с символа #, не будут отображаться в редакторе скрипта в программе. Т.е. попросту говоря, они будут отбрасываться при загрузке пресета фильтрации. Эта опция никак не влияет на функционирование программы.

Сначала кроп/ресайз, потом фильтрация (иначе сначала фильтрация) - По-умолчанию в XviD4PSP в скрипт сначала вписывается фильтрация, а обрезка черных полос и изменение размеров изображения идут после неё. Это может отрицательно повлиять на скорости обработки, особенно когда требуется из HD видео сделать SD с применением какой-либо фильтрации - в этом случае фильтрации подвергнется исходный материал с исходным HD разрешением, тогда как намного быстрее было-бы сначала изменить разрешение до SD, после чего применить фильтрацию (скорость работы фильтров напрямую зависит от размера обрабатываемого ими изображения). Включение этой опции передвинет блок обрезки и ресайза до блока фильтрации. Следует так-же учитывать, что результаты работы одних и тех-же фильтров будут отличаться в зависимости от того, используются ли они до или после ресайза.

При сохранении задания считывать параметры видео из скрипта - Если эта опция включена, то при сохранении задания из текущего скрипта будут считаны следующие параметры: разрешение, частота кадров и продолжительность; полученные значения переопределят значения аналогичных параметров в программе. Это нужно только в том случае, если вы изменили скрипт вручную, тем или иным образом изменив в нем разрешение, частоту кадров, или продолжительность. При ручном изменении этих параметров через скрипт, программа не узнает об этих изменениях, и в своих переменных будет хранить устаревшие значения.
Это приведет к тому, что изменив, например, продолжительность видео в скрипте, при кодировании неправильно будет расчитываться оставшееся время кодирования, т.к. программа будет использовать ту продолжительность, о которой ей было известно когда она формировала скрипт, а не ту, которую вписал пользователь.

При запуске программы искать лучшее место для временной папки - Если включено, то каждый раз при запуске XviD4PSP будет искать диск, на котором больше всего свободного места, предлагая перенести туда временную папку (Темп-папку).

Не удалять временные файлы и кэши - Опция может быть полезна тем, кто использует XviD4PSP только для создания скриптов, которые затем сохраняются и отправляются на кодирование в другие программы. При открытии файлов XviD4PSP в некоторых случаях извлекает звуковую дорожку (зависит от настроек Декодирования для открываемого файла), создаются индекс-файлы т.д., впоследствии всё это используется в скрипте. Но часть из этих файлов может быть автоматически удалена при закрытии программы, соответственно скрипт перестанет быть работоспособным. При включении же этой опции временные файлы не будут удаляться при закрытии программы, и скрипт останется рабочим, а файлы удалит сам пользователь, когда посчитает нужным.
При нормальной работе (кодирование только в XviD4PSP) галку ставить не нужно!

Автоматически удалять FFmpegSource кэш - Удалять индекс-файлы от FFmpegSource при закрытии программы. Если отключить эту опцию, то повторное открытие одних и тех-же файлов при помощи FFmpegSource может стать быстрее, за счет того, что для них уже создан индекс-файл. Для FFmpegSource1 кэш создается рядом с исходником, а для FFmpegSource2 - в Темп-папке.

Автоматически удалять DGIndex кэш - Аналогично предыдущей опции, но для DGIndex (MPEG2Source). Кэш DGIndex - это не просто индекс-файл, а целая отдельная папка, в которой находятся индекс-файл и извлеченная звуковая дорожка (или дорожки, если в исходном файле их было несколько). Если опция включена, то эта папка будет удалена при закрытии программы.

Создавать DGIndex кэш в Темп-папке - По-умолчанию DGIndex кэш создается рядом с исходником, а если исходник находится на диске read-only - то в Темп-папке. При включении этой опции DGIndex кэш всегда будет создаваться в Темп-папке, это может ускорить открытие МПЕГ-файлов при условии, что исходный файл и Темп-папка находятся на физически разных дисках. Плюс это способствует соблюдению концепции "весь мусор - в одном месте". Однако могут возникнуть проблемы при открытии файлов с одинаковыми именами.

Путь к временным файлам - Сдесь можно указать путь к папке с временными файлами (Темп-папка). Можно так-же нажать кнопку... и выбрать папку при помощи окна "Обзор папок". Кнопка Open открывает в проводнике текущую Темп-папку.
При выборе Темп-папки, если она не пуста, появится соответсвующее сообщение-предупреждение, в котором будет предложено пройти в папку для просмотра файлов, или игнорировать это сообщение и продолжить. Настоятельно рекомендуется очищать Темп-папку от всех ненужных файлов! Эту процедуру желательно периодически повторять (а после сброса настроек в программе чистка Темп-папки - обязательное условие!), иначе при кодировании программа может "использовать уже готовый файл", который остался от какого-либо прошлого неудачного кодирования (если во время кодирования произошла ошибка, то временные файлы не удаляются!), и его номер совпал с порядковым номером текущего задания.

В названии Темп-папки не должно быть кириллицы и любых других "нехороших" символов!

SSIM и PSNR - Две метрики, при помощи которых можно оценить степень соответствия закодированного видео оригиналу (т.е. степень внесенных искажений). При включении, x264 во время кодирования будет производить подсчет по выбранной метрике, результат этого подсчета потом появится в его логе вместе с остальной инфой о кодировании.

Использовать 64-битную версию x264 - При работе на 64-битной ОС можно попробовать использовать 64-битный x264. Весь остальной тракт обработки (Ависинт, декодеры, фильтры) останутся 32-битными.
Включение этой опции на 32-битной системе приведет к ошибке (из-за невозможности запуска 64-битного приложения в ней).

Показывать строчку с аргументами для CLI-компонентов - Если включено, то в логе для каждого запускаемого компонента (энкодера, муксера и т.д.) будет показываться строчка с задаваемыми ему аргументами. Эту опцию рекомендуется оставить включенной, т.к. при возникновении ошибок кодирования лог с показанными аргументами коммандной строки может существенно облегчить определение причин проблемы.

Показывать AviSynth скрипт - Если включено, то в логе будет показан AviSynth-скрипт, который, собственно, и кодируется. Не рекомендуется отключать эту опцию, т.к. при возникновении ошибок кодирования лог с

Ависинт-скриптом может существенно облегчить определение причин проблемы.

Кодировать сначала звук, потом видео - По-умолчанию XviD4PSP кодирует сначала видео, потом звук. В некоторых случаях более целесообразно кодировать сначала звук, а потом видео. Например, при кодировании в заданный размер с использованием VBR-битрейта для звука, нет никакой возможности попасть в заданный размер если кодировать сначала видео, потому-что неизвестно, сколько будет весить аудио-файл. Если-же в этой ситуации кодировать сначала звук, то к моменту начала кодирования видео уже будет точно известно, сколько весит аудио-дорожка, и этот размер будет учтен при задании битрейта видео-кодеру.
Так-же это может быть полезно и в ряде других случаев.

Записывать лог кодирования в файл и во временной папке - При включении первой опции лог кодирования будет сохраняться в файл, а вторая опция определяет, где будет создан этот файл: во временной папке (при её включении), либо в папке, в которую идет кодирование.
Так-же, если при кодировании возникнет ошибка, то лог будет автоматически сохранен в папку в которую идет кодирование.

Автозакрытие окна кодирования при успешном выполнении задания - По-умолчанию окно Энкодера остается открытым после завершения кодирования, так-что пользователь может посмотреть как шло кодирование (логи энкодеров и т.д.). Это может быть не нужным или даже лишним (например при пакетной обработке множества файлов - после кодирования каждого файла останется открытым окно Энкодера), тогда при включении этой опции окно будет автоматически закрываться. Если же во время кодирования произошла ошибка - окно останется открытым.

Только файлы с такими расширениями будут обработаны - При пакетном открытии программа примет только файлы с указанными сдесь расширениями. Зачем это нужно? Например, имеется папка со множеством разных типов файлов, среди которых есть и различные текстовые файлы (описания релизов, sfv-файлы, и т.д. и т.п.), благодаря этому фильтру можно открыть целиком папку, но при этом исключив ненужные файлы.
Расширения должны разделяться символом "/".

Использовать от уже открытого файла :
Если в программе уже открыт файл (был открыт вручную, или см. описание опции "Сделать паузу после 1-го открытого файла"), то при пакетном открытии группы файлов есть возможность использовать некоторые параметры от уже открытого файла. В некоторых случаях это может быть полезно, в некоторых - вредно! Не стоит включать следующие 4-е опции по принципу "чтоб было", включайте каждую из них только при наличии необходимости в данной функции!

Информацию о Разрешении/Аспекте - Если опция включена, и если в программе уже есть открытый файл, то для пакетно-открываемых файлов будет использованы параметры разрешения/аспекта (конечная ширина и высота, значения кропа, значения добавленных черных бордюров, конечный аспект, метод изменения аспекта) от уже открытого файла. Важно заметить, что при включении этой опции для файлов при пакетном открытии не производится анализ черных полей (если он должен был производиться согласно пункту Настройки->Авто кроп), т.к. параметры разрешения/аспекта берутся от уже открытого файла, и анализ полей просто не нужен.
Так-же следует учитывать, что данная опция даст положительный результат только в том случае, если у всех открываемых файлов одинаковое исходное разрешение, одинаковое (или хотя-бы приблизительно одинаковое) расположение черных полей.

Деинтерлейс - Если опция включена, и если в программе уже есть открытый файл, то для пакетно-открываемых файлов будет использованы параметры Деинтерлейса (исходный тип, порядок полей, деинтерлейсер) от уже открытого файла. Важно заметить, что при включении этой опции для файлов при пакетном открытии не производится анализ Интерлейса (если он должен был производиться согласно пункту Настройки->Авто деинтерлейс), т.к. параметры интерлейса/деинтерлейса берутся от уже открытого файла, и этот анализ просто не нужен. Так-же следует учитывать, что данная опция даст положительный результат только в том случае, если у всех открываемых файлов одинаковый тип интерлейса (или его полное отсутствие), порядок полей, и для всех них подходит деинтерлейсер, который был выбран для уже открытого файла.

Частота кадров - То-же что и предыдущие два пункта, но от уже открытого файла будет использована только конечная частота кадров. Метод изменения частоты кадров будет выбран согласно опции Видео->Интерлейс/Частота кадров->Конвертор частоты.

Аудио опции - То-же что и выше, но от уже открытого файла будут использованы только аудио-параметры: конечная дискретизация и метод её изменения, конечное кол-во каналов и метод изменения их кол-ва. А так-же, если для уже открытого файла режим кодирования был выставлен в Disbled, для пакетно-открываемых файлов звук так-же будет выставлен в Disabled.

Сделать паузу после 1-го открытого файла - Выше были даны описания опций, в которых постоянно упоминается некий "уже открытый в программе файл". Это может быть как файл, открытый пользователем вручную (т.е. сначала пользователь сам открывает один файл, настраивает всё как нужно, а потом производит пакетное открытие оставшихся файлов), так и самый первый файл из списка на пакетное открытие - при включении этой опции. Т.е. если опция включена, то из всего списка файлов для пакетного открытия выделяется самый первый, он открывается как обычный файл, после его открытия вы можете выставить все параметры кодирования как нужно, после чего нажать кнопку "Продолжить" (появится вместо кнопок "В очередь" и "Кодировать"), после чего начнется уже собственно пакетное открытие, а первый файл будет тем самым "уже открытым в программе" файлом, от которого будут использоваться параметры, согласно 4-м опциям выше (если конечно хоть одна из них была включена).

Запустить кодирование сразу после открытия всех файлов - В названии всё сказано.

HotKeys (горячие клавиши) - В главном окне программы есть возможность управления с клавиатуры, при этом горячие клавиши для всех действий, кроме выхода из программы (Alt+F4), можно переназначить.
Слева виден список Действий и Комбинаций клавиш, при нажатии которых произойдет указанное Действие. Двойной клик правой кнопкой мыши на текущей позиции включает режим редактирования комбинации клавиш (цвет надписи кнопки "Сохранить" сменится на красный), теперь просто нажмите на клавиатуре нужную кнопку или сочетание кнопок (оно будет отображено в поле "Комбинация") и еще раз сделайте двойной клик правой кнопкой мыши на редактируемом пункте списка (или просто нажмите кнопку "Сохранить"). При этом, если данная комбинация уже используется для какого-либо пункта, появится соответсвующее сообщение, а изменение не будет сохранено.
Клик правой кнопкой мыши "отключает" пункт на котором был произведен клик, в дальнейшем, если потребуется, можно снова назначить для этого пункта комбинацию клавиш.
Кнопка Восстановить для всех сбрасывает настройки на дефолтные сразу для всех пунктов в списке.

Сбросить все настройки... - Название говорит само за себя... Сбрасываются все введенные вами настройки на настройки по-умолчанию.

Многим не очень опытным «в компьютерных делах» пользователям кодирование видео кажется чересчур сложным процессом. Чувство ложного страха перед этой - в реальности простой - задачей зачастую побуждает их использовать распространенные программы, предлагающие «конвертацию видео двумя кликами». Однако качество изображения в получающемся на выходе видео оставляет желать лучшего. Чтобы избежать подобных казусов, нужно взять контроль над настройками и процессом кодирования в свои руки. Сделать это можно при помощи бесплатных, но при этом весьма функциональных программ, одной из которых является MediaCoder.

Проекту MediaCoder исполнилось уже несколько лет, и за эти годы программа обрела большую популярность - прежде всего благодаря своей «всеядности»: MediaCoder может без проблем работать с десятками видео- и аудио-форматов, включая MPEG2/4 (AVC), DivX/XviD (AVI), QuickTime MOV, RealMedia и Windows Media.

Наиболее часто у пользователей возникает необходимость конвертировать оригинальное видео в формат MPEG4 AVC (H.264), поддерживающийся современными мобильными платформами, либо уменьшить размер файлов, сохранив по возможности оригинальное качество.

Итак, у нас на руках имеется тестовое видео: трейлер «BF3 Armored Kil» с разрешением 1920x1080 и битрейтом 5 642 Килобит/сек. Поставим перед собой задачу перекодировать его в видеофайл с меньшим размером (битрейтом) и более низким разрешением 720p. Для кодирования видео-потока выберем энкодер x264, сочетающий высокие показатели качества изображения с низкими требованиями к размеру конечных файлов - другими словами, отличающийся замечательной эффективностью конвертации. Операционная система - Windows 7 SP1 64-bit .

Зайдите на сайт M edia C oder HQ .com , выберите раздел «Download», затем перейдите по ссылке «Choose a MediaCoder edition to download» на страницу, где вам предложат выбрать издание Mediacoder. Нас интересует, конечно же, полное издание «MediaCoder Full Edition» - наиболее функциональное из всех.

На момент составления руководства актуальной версией является 0.8.16.5292 . Остается кликнуть на содержащую номер версии ссылку, размещенную под заголовком MediaCoder 64-bit (x64), и воспользоваться одним из зеркал для загрузки.

Если по каким-то причинам скачать MediaCoder с официального сайта не удается, рекомендую искать свежую версию программы на сайте VideoHelp.com в разделе «Tools ».

При установке на этапе выбора компонентов («Choose Components»), которые будут проинсталлированы в систему, отметьте пункт «Extra Decoders» в разделе «Video Components». После первого запуска появится окно с предложением воспользоваться «Мастером настройки» («Config Wizard»), однако целесообразнее производить все настройки для будущего кодирования непосредственно в главном окне самой программы, потому необходимо отметить пункт «Skip this screen on startup» и нажать «Start now».

По умолчанию программа сворачивается не на панель задач, а в системный трей. Чтобы отключить эту опцию в главном меню программы выберите File - Setting - Overall - User Interface - Disable tray icon/Enable tray icon (вместо Enable tray icon and minimize to tray) и перезапустите MediaCoder.

Добавление файлов и подготовка к кодированию

В главном окне MediaCoder крупное поле слева вверху отведено под список заданий (Jobs ), то есть файлов, которые уже были перекодированы в нужный формат или же только дожидаются своей очереди. Добавить новый файл с этот список можно, перетащив его прямо из Проводника Windows или через диалоговое окно «Add». После добавления файла в поле «Properties » («Свойства») справа от списка MediaCoder отобразит данные о типе контейнера, битрейте, длительности, размере, а также подробную информацию о видео- и аудио-потоках. Над «Properties» вы увидите строку, показывающую путь к папке, в которой в результате перекодирования будет создан новый файл. По умолчанию используется папка, в которой находится оригинал (Original Folder), ее можно сменить, нажав кнопку с троеточием (Обзор) справа от поля.

Под списком задач расположено несколько вкладок с опциями кодирования, с помощью которых укажем программе все нужные нам свойства будущего файла. Выбираем вторую вкладку «Tasking ». По умолчанию MediaCoder на время кодирования размещает все временные файлы в стандартной системной папке AppDataLocalTemp. Если в системном разделе мало свободного пространства, рекомендуется сменить папку на любую иную, расположенную в другом разделе (в некоторых случаях MediaCoder экпортирует видео- и аудио-потоки из оригинального файла в отдельные временные файлы). Сделать это можно через диалоговое окно, нажав кнопку «Browse» под полем «Working Folder».

По умолчанию MediaCoder устанавливает приоритет для процесса кодирования автоматически. Если отзывчивость системы на время кодирования снижается слишком сильно, можно вручную изменить приоритет до уровня Lower или Idle в выпадающем списке в поле «Priority». Кроме того, можно установить предпочтения для использования ядер процессора, указав один из модулей, принимающих непосредственное участие в процедуре кодирования: audio/video decoder либо audio/video encoder. Рекомендуется выбрать самый «прожорливый» модуль - video encoder (отвечающий за конвертацию оригинального видео-потока).

Определение базовых настроек

Теперь перейдем к вкладке «Picture » («Свойства кадра»). Сначала отметим поле Resize галочкой. Выбрать нужное разрешение можно из выпадающего списка справа от поля Resize либо ввести вручную. Чтобы изменить яркость, контраст или гамму изображения, а также степень насыщенности цветов, нужно нажать на кнопку «Effects» и в появившемся окне «Clipping and Effects » с помощью ползунков выставить желаемые значения для этих параметров. Если в оригинальном видео наблюдаются горизонтальные полоски («эффект расчески») в динамичных сценах, необходимо применить специальный фильтр, активировав пункт «Enabled» в поле «De-interlace».

В этом же окне можно задать исходное и конечное значение времени (в полях «In Time» и «Out Time» соответственно), если вы собираетесь кодировать только определенный интервал, а не весь клип. Оба значения можно указать вручную, но легче это сделать при помощи ползунка под рамкой, в которой проигрывается видео. Сначала выберите стартовую позицию и нажмите «Mark In», а затем обозначьте финальную позицию, нажав «Mark Out». Далее - Ok для применения настроек. Задать начальную и финальную позиции времени для будущего видеофайла можно и в полях «Start Position»/«End Position» на вкладке «Time» вручную или кликнув на кнопку Select.

Важно! Иногда контрастность или насыщенность оригинального и конечного изображения совпадают не в полной мере. Чтобы сделать изображение более контрастным (как в оригинале), необходимо повысить значение "Contrast", а снизить излишнюю цветовую насыщенность можно, уменьшив слегка значение "Hue".

Чтобы выбрать нужный контейнер для видео, который объединит в одном файле аудио- и видео-потоки, откройте вкладку «Container » и выберите из выпадающего списка пункт «MP4» в поле «Container».

Параметры для видео-потока нужно задать на вкладке «Video »: сначала рядом с полем «Video bitrate» укажем необходимый нам битрейт - 3000 Kbps, далее выбираем видео-формат - H.264. Если у вас имеется современная видеокарта от nVidia, вы можете передать функцию конвертации видео графическому процессору - для этого отметьте пункт GPU справа от поля Encoder (в последнем название энкодера изменится на CUDA Encoder).

Параметры для аудио-потока задаются на вкладке «Audio ». В качестве аудио-формата выберите LC-AAC (Low Complexity AAC), если ожидаемый конечный битрейт аудио-потока превышает 96 Kbit/s, или HE-AAC/HE-AAC v2 (High Efficiency AAC) - для более эффективной (с меньшими последствиями для качества) конвертации в аудио-поток с низким битрейтом. По умолчанию для кодирования в формат AAC используется Nero Encoder. На вкладке «Sound» в поле «Channels» («Аудио-каналы») выберите Original для сохранения оригинальной конфигурации каналов аудио-потока (как правило, стерео).

Параметры кодирования аудио- и видео-потоков

Справа от группы вкладок с основными опциями, включающие перечисленные выше Tasking, Video, Audio, Picture и т.д., расположена еще одна группа вкладок, с помощью которых производится тонкая настройка энкодеров. Если для аудио-потока вы выбрали AAC, то вам станет доступна вкладка "Nero Encoder ", на которой в поле «Rate Mode» можно выбрать значение «Target Bitrate» (назовем это «оптимальным битрейтом» - в противоположность CBR/Constant bitrate - постоянному битрейту), а затем при помощи ползунка установить необходимый битрейт. Для фильмов и музыкальных клипов рекомендуется битрейт выше 192 Kbit/s.

Самый главный этап настроек касается выбора правильных параметров для кодирования видео-потока в формат H.264. Если выбран стандартный энкодер x264 (без участия GPU/CUDA), справа активируется вкладка «x264 ». Для достижения наилучшей совместимости с мобильными устройствами в поле «Profile» стоит указать «основной» профиль x264 - Main, и диапазон уровней («Levels») в пределах 3.0-4.2. Для современных и производительных устройств можно выбрать High Profile и Auto-level. Значение поля «Preset» изменим на Custom (Пользовательские настройки).

Motion Estimation

Здесь необходимо сделать небольшое отступление. Каждая из сцен, которые формируют видеоряд, состоит из определенного количества кадров (frames/pictures). Эта группа кадров (GoP , group of pictures), как правило, содержит в себе визуальную информацию о перемещении каких-либо объектов или других воспринимаемых нами изменениях (к примеру, яркости освещения). По умолчанию длина GoP равна значению в интервале от 25 до 250 кадров. При этом кадры в этой последовательности можно разделить на три группы: i-frames (intraframes, или reference frames , ключевые кадры) представляют собой кадры, которые полностью соответствуют определенным кадрам из оригинального видео-потока, а значит, занимают максимальный объем; p-frames (predictive frames) в GoP следуют за ключевыми кадрами или другими p-кадрами и содержат только данные, описывающие изменения по отношению к предыдущему кадру, таким образом «отнимая» намного меньше пространства; b-frames (bi-directional predictive frames) рассчитываются энкодером на основе данных как о предшествующих, так и стоящих впереди них кадрах. Компрессия, иными словами, сжатие, «уменьшение» размера видео-потока, видео осуществляется, с одной стороны, за счет квантизации и иных алгоритмов «упрощения» изображения, применяемых к ключевым кадрам, а с другой - за счет использования «легких» p/b-кадров, содержащих достаточно информации об изменениях от кадра к кадру для преобразования всей последовательности в динамичную сцену.

x264 активно задействует b-кадры с целью повышения эффективности кодирования, однако в большинстве случаев не стоит устанавливать значение «B-frames» выше 4-5 - за исключением анимационных материалов (мультипликации или anime). Кроме того, x264 позволяет включить так называемый «адаптивный» режим, в котором энкодер самостоятельно определяет, нужно ли в каждом конкретном случае использовать указанный выше максимум (4-5 b-кадров) или же сократить это количество за счет применения p-кадров. В «оптимальном режиме» энкодер лучше справляется с этой задачей, слегка уменьшая размер конечного файла (если на вкладке «Video» вместо битрейта указано качество в процентах)/улучшая качество изображения - установите «Optimal» вместо «Disabled». Что касается «Reference frames», их количество стоит указывать в пределах 2-4 кадров. Чем выше это значение, тем меньше интервал между кадрами при поиске во время воспроизведения видео - но вместе с тем, ниже и эффективность кодирования.

Главный параметр, который, пожалуй, в наибольшей степени влияет на сохранение оригинального качества видео - это «оценка движения» в динамичных сценах («Motion Estimation »). Если вы хотите добиться максимально возможного эффекта, выбирайте пункты UMH (Uneven multi-hexagon) или Exhaustive. Впрочем, чем больше усилий энкодер прикладывает к «обсчету» движений, тем дольше длится процесс кодирования. Параметр «Range» указывает размеры области (блока) кадра в пикселях, в которой происходит «поиск» быстрых изменений - для Full HD-видео, конвертируемого в режимах UMH и выше, рекомендуется значение не менее 16. Параметр «Subpixel ME» определяет выбор алгоритма оптимизации при «оценке движения» на позиции каждого пикселя в блоке: начиная со значения 6, энкодер задействует разные варианты алгоритма RDO (Rate-distortion optimization) - от простого RDO для i/p-кадров (6) до «улучшенного» («Refined RDO») для всех типов кадров (9). Повышение значений «ME Range» и «Subpixel ME» заметно увеличивает время кодирования.

В меню «Advanced » («Продвинутые опции») можно оставить активными все опции, предназначенные для сохранения качества изображения при конвертации, включая психо-визуальные оптимизации, deblocking-фильтр, убирающий артефакты в виде «квадратов» (на которые как бы распадается изображение), а также CABAC (Context Adaptive Binary Arithmetic Coder), увеличивающий эффективность кодирования - правда, за счет все тех же системных ресурсов.

Запуск процесса кодирования

Теперь, когда все настройки энкодера и параметры будущего видео-файла определены, можно приступить к кодированию. Для этого в списке задач выделите оригинальный файл (отметив галочкой поле слева от его названия), и нажмите кнопку «Start» на панели инструментов под главным меню MediaCoder. Прогресс отображается при помощи растущих полосок «Current Task» («Текущее задание») и «Total Tasks» («Все задания»). На вкладке «Preview» («Предпросмотр») в режиме реального времени можно наблюдать за окном, в котором демонстрируются кодируемые в данный конкретный момент кадры.

Если вы поставили в очередь несколько файлов, они будут обрабатываться программой последовательно. Для включения параллельного кодирования нескольких файлов на вкладке «Tasking» выберите нужное число одновременно выполняемых задач в поле «Parallelize» (полезно для кодирования аудио-файлов).

После завершения кодирования можно открыть окно Проводника с папкой, содержащей новый файл, кликнув по кнопке «Open » вверху справа от поля «Output». Мы получили более «компактную» версию трейлера с разрешением 1280x720 и размером на 44% меньше по сравнению с оригиналом. Процесс кодирования занял около 5 мин. MediaCoder указал соотношение длительности файла ко времени кодирования - 0.54.

Сопоставление характеристик оригинального (слева) и нового (справа) видео-файла, созданного при помощи энкодера x264

Если вам нужно произвести повторное кодирование файла (с другими параметрами), выделите его в списке, кликните на нем правой кнопкой мыши, и из контекстного меню выберите «Set item State» («Установить текущий статус для данного файла») - «Undone» («Статус: не завершено»). Статус в колонке «State» изменится на «Ready» («готов к кодированию»).

Кодирование с помощью технологии CUDA

Обладатели видеокарт от nVidia могут воспользоваться быстрым алгоритмом кодирования в формат H.264, использующим CUDA-архитектуру графического процессора. Отметив пункт «GPU » на вкладке «Video » справа от поля «Encoder», вы переключитесь на CUDA-энкодер. Затем на вкладке «CUDA » по соседству предстоит определить параметры для кодирования видео-потока: выбираем из списка «Preset» пункт «Custom» («Пользовательские опции»), далее - профиль «Main», уровень 4.2, 3 b-кадра (рекомендуемое значение для CUDA), а также активируем автоматический выбор длины групп кадров «Dynamic GoP» - в этом случае энкодер будет создавать ключевой кадр, открывающий собой последовательность GoP, не через жестко заданный интервал (некоторое точное количество кадров), а при необходимости, то есть при обнаружении начала новой динамичной сцены.

Следует заметить, что энкодер CUDA, несмотря на существенно более высокую скорость кодирования, не способен сохранить оригинальное высокое качество изображения - особенно, в случае с Full HD-контентом. Однако для кодирования видео для мобильных платформ CUDA можно отдать предпочтение, поскольку различие в качестве «картинки» будет уже не столь заметным. Средняя скорость (соотношение длительности к времени кодирования) кодирования трейлера в сравнении со стандартным энкодером возросла практически в 5 раз: 2.46x вместо 0.54x.

Сопоставление характеристик оригинального (слева) и нового (справа) видео-файла, созданного при помощи энкодера CUDA

Помимо MediaCoder внимания также залсуживают бесплатные программы MeGUI и XviD4PSP 6.0 (доступна бета-версия).

Статья в процессе написания, когда есть свободное время - тогда и пишу...

1. Что вы можете рассказать мне о настройках в XviD?

При открытии настроек кодека XviD в программе XviD4PSP 5 в первый раз, вы увидите много кнопок, вкладок, выпадающих под панелей Показывающих варианты, варианты и.... что вы думаете? Дополнительные параметры настроек кодека XviD.
В принципе, все варианты, что предлагает XviD очень сильно отличаются от большинства других MPEG-4 кодеков. Они могут иметь значение (или не иметь) для Вашего кодирования, а также могут иметь огромное влияние на скорость кодирования. Вы можете выбрать определенные опции, при кодировании с которыми Ваш результат будет воспроизводиться с кодеками / декодерами, не только XviD (например DivX или 3ivx кодек или FFDShow), или же Вы можете выбрать все эти дополнительные опции, которые делают XviD настолько уникальным и универсальным. Вы можете выбрать варианты, которые позволят в режиме реального времени кодировать телевизионную трансляцию или видео с камеры наблюдения, или же Вы можете выбрать опции, которые заставят кодек замедлиться до скорости улитки, но дадут очень хорошие результаты.

(Следующее описание настроек XviD для XviD4PSP 5 сборки от fcp. В других сборках интерфейс может быть отличным от этого, но Вы найдете много, если не все параметры, определенные в той или иной форме).

Настройки кодека XviD в XviD4PSP 5

В верху окна Настройки видео кодирования Вы можете видеть каким кодеком был закодирован исходный видео файл (исходник), его размер и соотношение Бит/(Пиксели*Кадры) а также предполагаемый размер и соотношение Бит/(Пиксели*Кадры) в перекодированном видео, при условии что уже настроены разрешение и частота кадров. (Исключение: Невозможно предугадать размер и соотношение Бит/(Пиксели*Кадры) при кодировании в режиме Constant Quality)

Вкладка Main

Encoding mode - Возможность выбрать режим кодирования: в установленный битрейт, с постоянным качеством или же в установленный размер.

1-Pass Bitrate - Закодирует видео сразу, за один проход. Берет каждый кадр видео, проверяет на сжимаемость и затем кодирует его.

2-Pass Bitrate - Кодирование в два прохода. В первом проходе делается оценка того, как сильно Ваше видео поддается сжатию. А во втором проходе используются данные о сжимаемости, собранные во время первого прохода, чтобы действительно закодировать видео.

3-Pass Bitrate - То же, что и 2-Pass Bitrate, но кодирование производится в 3-м проходе. А во 2-м проходе производится уточнение статистики, полученной на первом проходе. Это дает возможность более корректно распределить битрейт и точно попасть в заданный битрейт.

Constant Quality - Кодирование с постоянным квантизером ("делителем"). Чем меньше квантизер - тем выше качество. В этом режиме выходной битрейт не определен, и зависит от сжимаемости видео. Так же следует учитывать, что не зависимо от выставленного квантизёра, кодер не будет использовать значения, меньше Min Q и больше Max Q установленные на вкладке Frames.

3-Pass Quality - Первый проход кодируется в режиме Constant Quality , определяется битрейт перекодированного файла. Второй и третий проходы эквиваленты обычному 2-х проходному кодированию (2-Pass Bitrate), в качестве битрейта задается ранее подсчитанный битрейт.

2-Pass Size - Кодирование в два прохода. В первом проходе делается оценка того, как сильно Ваше видео поддается сжатию. А во втором проходе используются данные о сжимаемости, собранные во время первого прохода, чтобы действительно закодировать видео а также устанавливается необходимый битрейт (высчитывается встроенным в XviD4PSP 5 калькулятором) для точного попадания в заданный битрейт (в пределах разумного, кодек не сможет закодировать минутный семпл из DVD video в размер 2GB).

3-Pass Size - То же, что и 2-Pass Size, но (по аналогии с 3-Pass Bitrate) во время второго прохода производится уточнение статистики, полученной на первом проходе. Третий проход - непосредственно кодирование. Это дает возможность более корректно распределить битрейт и точно попасть в заданный размер.

Какой режим выбрать зависит от того, чего Вы желаете от результата. Кодирование в два прохода намного лучше в распределении битов, там где они необходимы, и поэтому дает Вам намного лучше выглядящее видео. Однопроходное кодирование пригодно для использования только когда невозможно сделать кодирование в два прохода, как например кодирование в реальном времени в прямом эфире, телевизионный захват или камеры видеонаблюдения. Если вам обязательно надо пойти на однопроходное кодирование по определенной причине тогда действительно нет другого пути, кроме кодирования в два прохода.
Обратите внимание, что DivX 5 в настоящее время имеет опцию "Multi-Pass ", что позволяет больше чем кодирование в два прохода. Это предназначается, чтобы получить еще лучшее распределение бит (вроде путем усреднения между большим количеством проходов), но многие пользователи сообщают близкие к нулю выгоды после третьего прохода. XviD действительно не нуждается в технике, как эта, потому что решение-распределения-бит которое она делает умнее и дает лучшие результаты.

Квантизер - это так называемый DRF (D etail R emoval F actor) - величина, показывающая степень потери детализации изображения, то есть обратно пропорциональная качеству. Чем больше квантизер - тем больше деталей будет потеряно. Визуально это проявляется появлением блочности на изображении (квадратных артефактов в кадре). Соответственно, чем меньше квантизер, тем больше детализация кадра (качество) а также битрейт, необходимый для его сжатия и, частично, его размер. По умолчанию минимальный квантайзер равен - 2; максимальный - 31.

Bitrate:(kbps) / Качество:(Q) / Размер: (MB) - Зависит от того что выбрано в Encoding mode .

Preset - Профиль в основном соответствует определенным настройкам кодека, предназначенным специально для определенного использования, сценарии...
В каждом Профиле у Вас есть разные уровни настроек, которые ограничивают тот особый профиль определенным сценарием. После изменения некоторых настроек выбранного пресета он может сбросится на Custom (например изменение количества B-кадров).
Default - Настройки кодека по умолчанию.
Turbo - Быстрое кодирование, плохое качество
Ultra - Высокое качество кодирования, оптимальное соотношение скорость / качество.
Extreme - Очень высокое качество, медленное кодирование
Custom - Персональные настройки кодека

FOURCC - Здесь вы можете изменить FourCC используемый в полученном файле после кодирования. FourCC в основном содержит идентификационный код, содержащийся в перекодированном видео файле. При сжатии, в заголовке AVI файла прописывается метка, каким кодеком это было сжато. При воспроизведении проигрыватель считывает эту метку и запускает соответствующий декодер (говорит мультимедийному приложению (например, WMP, MPC или DivX Player-у), какой тип декодера должен быть использован для правильного открытия видео). Для Mpeg4 совместимых кодеков возможна замена декодера. Вы можете установить, например, DivX или DX50 что бы проигрывать видео с помощью DivX 5 декодера. Если Вы это делаете, вы должны принять во внимание ограничения того декодера, так что вы не можете использовать некоторые функции XviD (например, больше чем 1 B-кадр или GMC). Рекомендуется, если вы действительно хотите, чтобы Ваши видео файлы воспроизводились на аппаратных плеерах, поддерживающих DivX, но не XviD.

Cartoon - Включает некоторый механизм по оценке движения, который пропускает больше макро-блоков (вместо того, чтобы кодировать их). Результат - более устойчивое, немного менее подробное (детализированное) изображение. Именно то что нужно для кодирования мультфильмов как "Futurama или Simpsons." Я не рекомендовал бы это для более детализированного японского аниме.
Активизирует два различных метода, оба разработанные, чтобы помочь с мультфильмами:
- detect_static_motion - флаг оценки движения, он работает как предел (лимит). Если движение, найденное процессом поиска движения, ниже этого предела, макроблок считается статичным, и никакая информация о движении не кодируется. Когда Cartoon режим включен, предел, ниже которого макроблок считается статическим, увеличивается так, что небольшие движения будут потеряны еще больше. Так как МНОГО этих "маленьких движений" являются фактически шумом (особенно в мультфильмах), он действительно помогает экономии многих битов, которые иначе использовались бы, чтобы закодировать шум на статической картинке.
- vop_cartoon - Квантизация. Когда блок получил достаточно хорошую компенсацию движения (с полной ошибкой ниже предела), это просто не кодируется вообще. XviD не пропускает данных в нормальном способе кодирования (предел = 1), но пропускает довольно много в мультипликационном способе. Опять же, это обычно означает, что шум проигнорирован. Это может также удалить некоторые мелкие детали, но мелкие детали действительно не должны присутствовать в "правильных" мультфильмах.
Таким образом, в то время как первая техника помогает с удалением движений, которые являются настолько крошечными, что можно считать что они "не являются частью источника", вторая помогает сжимаемости мультфильма, удаляя детали структуры, которые посчитала "слишком маленькими, чтобы быть частью источника".

Grayscale - говорит кодеку кодировать без цветной информации. Применяется для того, чтобы сэкономить биты на титрах в конце фильма. Кодирует изображение в чёрно-белое.

Full 1-st pass - По умолчанию XviD делает первый проход с облегченными настройками, не зависимо от того, какие настройки указал пользователь. Включение этой опции отменяет этот режим.

Chroma optimizer - будет делать дополнительные «магические» действия над информацией о цвете, чтобы минимизировать эффект лестницы на границах. Это улучшит качество ценой скорости кодирования. Это снижает PSNR по своей природе, математическое отклонение от оригинальной картинки станет больше - но субъективное качество изображения будет лучше (как уже упоминалось, "ступенчатых артефактов" будет меньше). Поскольку он работает с информацией о цвете, Вы можете отключить его при кодировании в оттенках серого.

Вкладка Motion

Здесь вы найдете варианты определяющие точность поиска движения. Поиск движения является процессом, в котором кодек пытается выяснить, как каждая часть оригинального клипа двигалась. Чем больше он ищет, тем точнее будет его оценка движения, и лучше будет фиксироваться оригинальное движение в кадре.
Почему именно захват движения так важен, спросите вы?
Давайте рассмотрим простой пример, белый блок перемещения вправо. Каждый кадр является частью изображения, где блока больше не будет установится цвет фона, а другая часть должна принять цвет блока. Изменения которыми должен быть закодирован каждый кадр будут представлять собой значительное количество бит.
Вместо этого кодек просто принимает блок и проверяет, есть ли движение. Если есть движение, кодек захватывает это движение средствами поиска, а затем использует найденное значение в качестве вектора движения для конкретного блока. На самом деле процесс более сложный, но основная идея в том, что большинство изменений информации цвета и текстуры, вызвано движением и, следовательно, большое количество цветов и текстур могут быть сохранены с меньшими затратами бит, или это движение захватывается другими способами.

Motion search - Самая основная настройка точности поиска движения, и ей требуется большая продолжительность обработки, НО рекомендуется оставить 6. Допускается опускать значение ниже, до 5-ти, и только если Вы спешите. Кстати: она работает только в яркостной плоскости изображения, т.е. только смотрит на изменения в яркости, а не в цвете.

VHQ mode - Более интенсивный поиск и широкий подход, оптимизирует режим макроблоков, вместо усреднения. Более высокие параметры настройки замедлят кодирование значительно. Установка в 1 оказывает относительно маленькое влияние, и рекомендуется для любого кодирования. Использование более высоких значений даст Вам лучшее качество за счет падения скорости кодирования.

Quarter pixel search - Поиск движения с точностью до четверти пикселя. Это повышает чёткость, особенно на низких разрешениях, но вместе с этим добавляет шум на изображение. Естественно, просто так это не происходит. Включение Q-pel повышает загрузку процессора и увеличивает поток, используемый для этого. Не поддерживается Старыми аппаратными MPEG-4 плеерами.
Как Q-пиксел работает и когда я должен использовать его?
Q-pel (или Qpel) является кратким названием от Q uarterP ixel motion search precision (поиск движения с точностью до Четверти Пикселя), и этот выбор активизирует использование точности до четверти пикселя.
Поиск движения пытается захватить все движение между одним кадром и следующим, так, чтобы макроблоки (Дальше MB ) могли получить правильные векторы движения, назначенные на них. Если движение должным образом захвачено тогда не будет никакой потребности в дополнительных изменениях к MB-ам кроме вектора движения, экономя некоторые биты. Чем более точно движение захвачено, тем меньше битов может быть назначено на содержание MB-ов, и больше MB-ов может состоять только из вектора движения.
Так, теоретически, более точный захват движения бы спасти в измененной информации о структуре, таким образом экономя биты, и точность увеличения полного сжатия, таким образом увеличивая качество. (Мы будем скоро видеть, почему это только теоретически)

Обычно XviD использует точность поиска движения полупиксела. Это означает, что он может "видеть" движение с субпиксельной точностью; если MB перемещается по ширине, положение высоты от 200, 300 до 201, 300 в следующих двух кадрах, Q-pel может обнаружить это движение правильно и может дать MB вектор движения, который говорит, "переместите меня на половину пикселя вправо в этом кадре, пожалуйста", и в тех следующих двух кадрах. Движение будет захвачено правильно, и никакие биты кадров не изменены.
Теперь с Qpel Вы можете захватить движение, которое перемещается только на четверть пикселя за кадр, эффективно удваивая точность.

Пример :
MB, который перемещается (плавно) от положения 200, 300 до 201, 300 в следующих четырех кадрах, перемещается только на одну четверть пикселя за кадр. С нормальной точностью полупиксела это движение отображалось бы с "подергиванием", и кодеку, возможно, пришлось бы дать компенсацию за это, изменяя части структуры MB. Это, конечно, занимает место, и MB больше не состоял бы из только вектора движения; нужно было бы назначить дополнительные биты для измененной информации о кадре, таким образом уменьшая сжимаемость.
С Qpel, движение будет захвачено правильно и не потребуются дополнительные биты для измененной информации о кадре, количество битов, используемых для этой структуры уменьшится.
Легко да? Но подождите, здесь есть одна проблема...
Итак, в чем же подвох?
Загвоздка в том, что только само использование Qpel уже использует дополнительные биты.
Помогает ли это экономии бит в целом или нет ?
Это связано с дополнительной точностью, что требует больше битов, отводимых для векторов движения. Вместо того, что вектор движения может быть просто что-то вроде 0.5,0 (половина пикселя движение по ширине, без движения по высоте) этого не будет а будет 0.25,0 (четверть пикселя движение по ширине, без движения по высоте). Таким образом, вместо одной десятой после точки теперь требуется два десятичных знака после точки, требующие кодек бросить больше бит на сохранение этого значения.
(Обратите внимание, что это упрощение реального процесса, но это достаточно правильно чтобы понять принцип работы)
Вместо другой десятичной Qpel фактически использует другой дополнительный бит (устанавливается 0 или 1) для каждой оси, что достаточно для достижения двойной точности. Существуют две оси, одна для ширины и одна для высоты, так что каждый вектор движения требует двух дополнительных битов для Qpel.
Если предположить, что существует один вектор для всех макроблоков (там может быть 4 или 0), на разрешение 640x272 и 24 fps и P-кадрах только два бита для каждого макроблока принять 40 х 17 х 2 х 24 = 32 640 бит или 32,5 Кбит / с.
Так, в основном, независимо от результата, Qpel всегда берет значительный кусок битрейта только для себя, даже если это не поможет сжатию хоть одного проклятого бита.
Теперь правило, это действительно помогает, но биты кадров, сэкономленные лучшей точностью должны быть больше, чем биты добавленные векторами движения, прежде чем сжимаемость с Qpel увеличится при том же размере. Если сэкономленные биты кадров больше, чем дополнительные биты вектора движения, тогда Вы увеличите сжимаемость (и качество) в том же самом размере. Если сэкономленные биты кадров не больше, чем биты добавленные векторами движения, Вы потратите впустую место и конечный результат может выглядеть хуже.
Как же я могу узнать, использование Qpel будет увеличивать или уменьшать сжимаемость?
Вот другая загвоздка: Вы не можете узнать заранее. Нет никакого способа узнать, просто посмотрев на источник, поможет Qpel или нет. Не имеет значения, быстрая сцена с движением или медленная, панорамная сцена или изменяющая масштаб... Просто нет способа узнать заранее. Быстрая сцена с движением может составить 90%-ое движение Qpel или 90%-ое движение полупикселя, или любой другой процент... Это все делает какое-либо предварительное предположение о преимуществах кодирования с Qpel смешным .

Единственный реальный способ узнать состоит в том, чтобы попытаться кодировать и с и без Qpel и увидеть, какой результат выглядит лучше.
(Теперь вы можете понять, почему существует разница между теорией и практикой...)

Некоторые дополнительные примечания :
- Из-за повышенной точности, Qpel значительно увеличивает время кодирования и требует больше вычислительной мощности для декодирования. Кодирование может занять почти в два раза больше времени и, соответственно, может потребоваться до 30-60% больше мощности для декодирования.
- В некоторых старых версиях (альфа) Qpel может создавать артефакты, но текущие реализация не имеют известных ошибок. Это безопасно для использования.
- Quarter pixel search - Не поддерживается Старыми аппаратными плеерами! Не кодируйте для других если не уверены что их аппаратный плеер сможет проиграть видео закодированное с Qpel!

Global motion compensation - Глобальная Компенсация Движения (GMC), само название в значительной степени рассказывает о том, что делает GMC. Она начинает работать в моменты панорамирования, наезда или отъезда на объект, а так же при поворотах. Не поддерживается аппаратными MPEG-4 плеерами.
Для чего нужна GMC?
Если используется, то она будет смотреть на всю структуру кадра, есть ли движение всех частей кадра в общем. Затем возьмет эту сумму движения и поместит ее в одно значение. Части кадров - макроблоки а количество движения называется "вектор движения", которое имеет как направление так и значение (своего рода как двумерное X, Y значение).

Все макроблоки обычно имеют свои собственные векторы движения, но у GMC всего один вектор движения, который они имеют все вместе (именно поэтому и называется "Глобальным") поэтому все векторы будут компенсироваться и вкладываться в один вектор движения. Некоторые движения макроблоков "будет полностью компенсировать вектор GMC, получая полностью сведены на ноль процесс компенсации. Вектор движения этих макроблоков будет тогда удален, поскольку это то же самое, и является только дополнительной информацией. Возможная выгода в том, что Вы можете удалить многие или даже все векторы движения макроблоков (или даже непосредственно сами блоки, если нет никакой информации о изменениях в текстуре) в кадре за счет одного значения, тем самым делая его гораздо меньше.
Заметим, однако, что это для одной warppoint GMC. С Несколькими warppoints процессы гораздо более сложные, но принцип тот же.
Warppoints, хм..., что за warppoint?
warppoint - это вектор движения, что определяет смещение одного * края * в видео. Возьмите лист бумаги за края и перемести его, и вы увидите то, что я имею в виду.
- Первый warppoint определяет смещение верхнего левого края если это единственный warppoint, это когда остальное изображение имеет тот же вектор и вся картинка движется. Подумайте о панорамировании.
- Второй warppoint определяет смещение верхнего правого края (не * точно * правда, но достаточно близко, не вдаваясь слишком в технические подробности). Вместе с первым warppoint, этого достаточно, чтобы определить панорамирование * и * зум. Обратите внимание, что оно могло бы быть использовано для определения панорамирования и поворота вместо этого, но * нет *
- Третий warppoint определяет смещение вниз левого края и три warpoints достаточно, чтобы определить панорамирование, масштабирование и поворот.
- Четвертый warppoint создал бы подобное перспективе движения.
Обратите внимание, что GMC XviD использует 3 warppoints, в то время как GMC DivX использует только один. Warppoints хранятся в заголовке кадра, и только тогда, когда они используются.

Chroma motion estimation - Оценка движения цветовой информации. Принимает во внимание цветовую информацию в кадре, работает на основе Motion search с настройкой 7 но в области цветности, согласно названию. Рекомендуется!

Вкладка Frames

Стандартный рип, сделанный кодеком XviD, содержит 3 типа кадров (frames):

1 . I-frames - ключевые кадры, мало сжимаемые но не требуют других кадров для декодирования видео
2 . P-frames - промежуточные (прогнозируемые) кадры, могут использовать данные из предыдущих кадров для распаковки и более сжимаемые, чем I-frames.
3 . B-frames - двунаправленные интеллектуальные кадры, могут использовать как предыдущие так и следующие кадры для распаковки, чтобы получить наибольший объем сжатия данных.

I-frames содержат видеоинформацию и кодируются с минимальным сжатием, следовательно, имеют максимальную детализацию изображения. Навигация по видеоряду, операции резки/склейки осуществляются только по I-frames. В начале видеоряда и на смене сцен всегда стоит ключевой кадр.

P-frames содержат видеоинформацию об отличии видеокадра от предыдущего - то есть, при его распаковке мы получим не полный кадр, а, грубо говоря, отличие от предыдущего. На статических сценах кадры меняются сравнительно мало, поэтому отличия содержат меньше видеоинформации, чем полный кадр, и, благодаря этому, p-frames значительно меньше, чем i-frames. Но, для получения полного видеокадра, нам нужно иметь полный предыдущий кадр, чтобы добавить к нему это отличие. Для получения следующего – полный предыдущий и так далее... То есть, нам нужно декодировать подряд всю цепочку кадров, начиная с ближайшего i-frame, имеющего полную информацию о кадре.

B-frames содержат видеоинформацию, вычисляемую по двум кадрам - предыдущему и следующему. Алгоритм весьма сложный, разный у разных кодеков. Очень грубо говоря, делается однозначная и легко вычисляемая интерполяция между предыдущим и следующим кадром, и B-frame содержит информацию о том, насколько реальный кадр отличается от этой интерполяции. Поскольку чаще всего предыдущий и последующий кадры, как правило, P-frame, (хотя может быть и i-frame), а b-frame вычисляется по их отличию, то он является разницей между двумя разницами. Это очень грубая аналогия, конечно. Они разработаны для того, чтобы уменьшить размер файла на выходе и сэкономить битрейт для кодирования I-frames и P-frames.
Например : нам надо закодировать, чисто теоретически, 3 одинаковых кадра: I , P и ещё один P с битрейтом 20 бит/сек. На I-frame уйдёт 10 бит, на P-frames - по 5 бит соответственно. А теперь представьте, что вместо одного P-frame у вас B-frame, на который уйдёт не 5, а 3 бита. Оставшиеся 2 бита кодек добавит либо к I-frame, либо к P-frame (куда нужнее будет), тем самым увеличив качество данного кадра, то есть детализацию.
Размер B-frame будет меньше, чем заменённого им P-frame (данное справедливо для кодека XviD), так как B-frame - это не картинка, а разница между двумя другими разницами, как было сказано выше. Таким образом, мы выигрываем ещё и в размере.

Итак, стандартный видеоряд представлен следующей последовательностью кадров:
I-P-B-P-B-P-B-P-B-I в следующей пропорции (при условии использования I-frames 1 ): ключевой кадр, по 150 чередующихся P-frames и B-frames, и вновь ключевой кадр. То есть на 300 кадров видеоряда мы имеем 1 ключевой кадр. Это, я напоминаю, по умолчанию; в то же время кодек, определяя начало новой сцены, ставит первым ключевой кадр; таким образом, этот параметр не значит, что у нас на 300 кадров действительно будет лишь 1 ключевой; как минимум, их будет столько, сколько новых сцен в данном отрезке видеоряда. Разные рипперы используют разное количество, вернее, величину этого параметра – от 100 до 500. Количество ключевых кадров влияет на три параметра:
1. облегчение навигации по фильму и операций резки/склейки;
2. качество видеоряда;
3. размер файла;

B-frames - Определяет максимальное количество идущих подряд B-кадров. Если поставить 0, то мы попросту отключим использование B-кадров. Если поставить 1, то последовательность кадров будет: IPBPBPBPBPI (для большей совместимости со старыми аппаратными плеерами); если 2, то: IPBBPBBPBPI (для лучшего эффекта; установка B-frames 2 не означает что Везде будет два B-кадра подряд, это всего лишь ограничение что бы не было Больше двух подряд. На сложных сценах с движением последовательность кадров может выглядеть вот так: IPBPPPPBPPPBBPBPI); если 3, то: IPBBBPBBBPBPI (для интенсивного использования, может быть не совместимо с аппаратными MPEG-4 плеерами)Однако при очень большом количестве B-frames качество картинки может стать хуже (из-за высокой степени сжатия B-frames). Рекомендуется ставить 1 или 2 для того что бы не потерять совместимость с аппаратными MPEG-4 плеерами (По стандарту DivX, B-frames 1 рекомендуется при установке FOURCC - DivX / DX50).
B-кадрами (или BVOPs в технических обсуждениях) являются так называемые двунаправленные закодированные кадры и они являются частью определения A dvanced S imple P rofile (ASP). Без B-кадров вы просто должны придать ключевым кадрам четкое определение появления кадра каждые XXX кадров, а все остальные кадры (P-кадры) будут ссылаться на предыдущий, ключевой кадр, для описания. B-кадры ссылаются как на предыдущий так и на следующий кадр, поэтому они относится к другим кадрам в двух направлениях (эргономичная B-часть). Преимущество B-кадров в том, что они, как правило, закодированы с большим квантизером и занимают меньше места (битов) в видео, в то время как потери качества меньше в сравнении с потерями в использовании бит. В общем, вы используете изначально меньшие и хуже по качеству B-кадры, чтобы сэкономить место, которое будет использоваться для повышения качества во всем клипе. Основной эффект, как правило, улучшение качества, в зависимости от параметров B-кадра и типа источника.

B-frames ratio - Множитель (в среднем) окружающих квантов НЕ B-кадров, с этим значением, даст вам квантизер B-кадра (высчитывается, согласно формуле, на сколько должен быть поднят квантизер для B-кадров). Так что, если два смежных кадра имеют кванты 2 и 4, средний квант будет 3. Множитель с соотношением кванта 150 даст вам B-кадр с квантом - 4,5.
Пример : (2 + 4) * 150 / 200 = 4,5 (при условии что B-frames offset=0 )
(Квантизер предшествующего НЕ B-кадра + Квантизер следующего НЕ B-кадра) * (B-frames ratio) / 200 (при условии что B-frames offset=0 )
Снижать этот параметр не рекомендуется (теряется смысл B-кадров). Повышать Вы можете на своё усмотрение, это повысит сжатие B-кадров (соответственно, снизит их качество) и повысит качество I и P-кадров.

B-frames offset - Смещение квантизера. Возьмите результат расчета выше, а затем добавьте это значение. Со смещением квантизера 200 вы в конечном итоге получите B-кадры с квантом 6,5.
Как правило, повышение последних двух значений, даст Вам B-кадры более низкого качества.

Key-frames interval - Максимальное расстояние между ключевыми (I-frames ) кадрами (интервал). Эта опция указывает кодеку когда Обязательно нужно вставить ключевой кадр (I-кадр) через заданное число кадров (интервал). Если ключевой кадр необходим раньше, чем это число было достигнуто, он будет вставлен (например в месте смены сцен), и кодек начнет отсчет снова. Таким образом, хоть Вы и можете получить ключевые кадры с меньшим расстоянием, чем заданный интервал, у Вас не может быть более высоких интервалов.
Стандартные рекомендации настройки, 10x количество кадров в секунду, то есть 250 для 25fps PAL видео, 300 для NTSC 29,979 и т.д. Однако, есть видимый эффект, называемый Keyframe-pumping. Это напоминает медленное ухудшение качества последовательных P-и B-кадров с внезапным "скачком " по качеству, когда вставляется новый Ключевой кадр. В таких случаях может помочь Снижение максимального интервала I-кадра. Установка большого значения может привести к плохой навигации при перемещении по видео, так как процесс поиска использует только ключевые кадры, и меньшее количество ключевых кадров = менее точный поиск.
Примечание: Замечено появление артефактов при кодировании мультипликационных фильмов с Key-frames interval 300 для 25fps PAL видео, снижайте до 240-200...

Closed GOP - Closed GOP гарантирует, что P-кадр будет использоваться перед каждым новым I-кадром. Этот параметр всегда должен быть проверен (в противном случае Вы можете закончить с последовательностью кадров, как PBIP где B-кадр ссылается на I-кадр, что не имеет смысла; также отключение данной функции приведет к усложнению резки / склейки Вашего перекодированного видео).

Packet bitstream - опция, которая может доставить смешанные результаты во время воспроизведения, в зависимости от того, что Вы используете для воспроизведения. Это предназначается чтобы решить проблемы порядка кадров при кодировании в форматы, такие как контейнер AVI, который не может справиться с непорядком кадров. И хотя эта функция предназначена чтобы решить проблемы воспроизведения, которые возникают без этого, много людей сообщило о проблемах воспроизведения видео, закодированного с Packet bitstream . Это придумано для воспроизведения видео с помощью FFDShow, декодера DivX 5, и некоторыми старыми автономными (аппаратными) DVD-плеерами.
Если Вы точно знаете, что Вы делаете, то лучше держать эту функцию выключенной до дальнейшего уведомления. Если у Вас возникли проблемы воспроизведения, видео проигрывается с остановками, попробуйте отключить эту функцию и посмотреть, помогает ли отключение. В последних версиях XviD, большая часть проблем, связанных с Упаковыванием битового потока, как говорят, были решены, но больше обратной связи необходимо по этому вопросу. Так что если у Вас есть какая-либо особая информация, пожалуйста, сообщите.
Примечание: Если Вы воспроизводите файлы только с кодер-декодером XviD, вы никогда не должны использовать Packet bitstream .

VHQ for B-frames - Тоже что и VHQ mode но только для B-кадров.

Min Q / Max Q (I P B) - Минимально и Максимально возможные квантизеры для указанных типов кадров. Чем ниже это значение, тем более четкая картинка будет получаться (при условии, что битрейт будет достаточно высоким для достижения этого квантизера). По умолчанию: Min Q - 2, Max Q 31.
Min Q - 1 Устанавливается когда при кодировании в заданный битрейт / размер на выходе получаем файл с меньшим битрейтом / размером.
Если фильм, который достаточно хорошо сжимается при максимальном качестве, получается с меньшим битрейтом / размером, чем указано, то сКвантизером 1 немного увеличивается битрейт и, следовательно, размер файла без дальнейшего улучшения качества.Именно поэтому Квантизер 2 является действительно значимой ценностью.
Если Вы установите Min Q - 2 для кодирования, Xvid сделает Вам файл меньшего размера, демонстрируя свои способности к адаптации, и Вы сможете присоединить звуковую дорожку Большего размера, или даже повторить кодирование с Большим разрешением кадра. Это всегда лучше, чем впустую расходовать кванты для достижения нужного размера файла. Min Q - 2 почти не отличается по Качеству от Min Q - 1.

Вкладка Rate

KBoost - может быть использован, чтобы добавить дополнительные биты к ключевым кадрам. Указывается в процентах, так что значение 10 даст Вашим ключевым кадрам на 10% больше бит, чем обычно.

Кривая сжатия.
Обычно внутренние установки значения кривой (определяется разработчиками XviD после долгих общений с пользователями), способны доставлять очень хорошие результаты (я должен сказать «отличные» на самом деле), но если по тем или иным причинам Вы хотите изменить, можете использовать эти значения для настройки минимумов и максимумов в распределении бит.
Если вы сделаете мысленный образ кривой распределения, вы увидите график с «максимумами» и «минимумами», например как холмы и долины. Холмы это сцены с высоким битрейтом а долины - с низким битрейтом.
CHigh
- может быть использован, чтобы забрать биты из сцен с высоким битрейтом и распределить их на средне и низкобитрейтные сцены. (Представьте себе резервуар, например ведро с битами, откуда кодек может взять дополнительные биты чтобы улучшить каждый кадр) Следовательно, это снизит пиковый битрейт, и биты накопленные при этом будут разделены поровну между всеми кадрами Вашего видео. Это полезно, когда Вам действительно нужно сохранить Ваше перекодированное видео в пределах определенных максимальных параметров, как максимумы для определенного profile@level. Вы также можете использовать это, если у Вас есть клип с настолько большим количеством бит, отданным высобитрейтным сценам, что низкобитрейтные сцены начинают выглядеть плохо.
CLow
- может быть использован, чтобы добавить дополнительных бит в сцены с низким битрейтом, это подобно заполнению долины осадками. Но биты должны прийти откуда-то, поэтому кодек берет все кадры из видеоряда и выцарапывает несколько битов из каждого. Это может пригодиться, если у вас есть несколько сцен с низким битрейтом, на которых видны квадратики (блочность).

Лечение переполнения.
«Лечением переполнения» является метод, используемый для получения соответствующего размера конечного файла. Обычно вы указываете цель - размер файла, а кодек может либо превысить эту цель, создавая слишком большой файл, либо он может недолет до этой цели, создавая слишком маленький файл. Обычно для решения этой проблемы переполнения, можно либо выделить больше бит, при необходимости увеличения размера файла, либо выделить меньше бит, чем действительно необходимо, уменьшая размер файла. Очевидно, что второй процесс включает в себя ущерб для качества.
OStrength
-

OImprove -

PDegrade -

Reaction -

Averaging -

Smoother -

VBVsize -

VBVmax -

VBVpeak -

Вкладка Misc

Matrix -

HVS masking -

1-st pass Quantizer -

Trelis quantization -

Use new XviD 1.3.0 -

Threads -

Вкладка CLI

Input options:
-i string: input filename (stdin)
-type integer: input data type (yuv=0, pgm=1, avi/avs=2)
-w integer: frame width ()
-h integer: frame height ()
-frames integer: number of frames to encode

Output options:
-dump: save decoder output
-save: save an Elementary Stream file per frame
-o string: save an Elementary Stream,
or AVI file,
or MKV file,
based on filename extension
-avi string: save an AVI file for the complete sequence
-mkv string: save a MKV file for the complete sequence

BFrames options:
-max_bframes integer: max bframes (2)
-bquant_ratio integer: bframe quantizer ratio (150)
-bquant_offset integer: bframe quantizer offset (100)

Rate control options:
-framerate float: target framerate (25.0)
-bitrate : target bitrate (700)
values <= 10000 are treated as kbit/s
values > 10000 are treated as bit/s
-size integer: target size in kilobytes
-single: single pass mode (default)
-cq float: single pass constant quantizer
-pass1 : twopass mode (first pass)
-full1pass: perform full first pass
-pass2 : twopass mode (2nd pass)
-altpass2 : twopass mode (2nd pass alt)
-zq starting_frame float: bitrate zone; quant
-zw starting_frame float: bitrate zone; weight
-zones: see xvid_encraw -help zones
-max_key_interval integer: maximum keyframe interval (300)

Single Pass options:
-reaction integer: reaction delay factor (16)
-averaging integer: averaging period (100)
-smoother integer: smoothing buffer (100)

Second Pass options:
-kboost integer: I frame boost (10)
-kthresh integer: I frame reduction threshold (1)
-kreduction integer: I frame reduction amount (20)
-ostrength integer: overflow control strength (5)
-oimprove integer: max overflow improvement (5)
-odegrade integer: max overflow degradation (5)
-chigh integer: high bitrate scenes degradation (0)
-clow integer: low bitrate scenes improvement (0)
-overhead integer: container frame overhead (24)
-vbvsize integer: use vbv buffer size
-vbvmax integer: vbv max bitrate
-vbvpeak integer: vbv peak bitrate over 1 second

Other options
-noasm: do not use assembly optmized code
-turbo: use turbo presets for higher encoding speed
-quality integer: quality () (6)
-vhqmode integer: level of R-D optimizations () (1)
-bvhq: use R-D optimizations for B-frames
-qpel: use quarter pixel ME
-gmc: use global motion compensation
-qtype integer: quantization type (H263:0, MPEG4:1) (0)
-qmatrix filename: use custom MPEG4 quantization matrix
-interlaced : interlaced encoding (BFF:1, TFF:2) (1)
-nopacked: Disable packed mode
-noclosed_gop: Disable closed GOP mode
-lumimasking: use lumimasking algorithm
-hvs_aq string: use custom adaptive quantisation equation
-hvs_lmb string: use custom lambda equation
-stats: print stats about encoded frames
-ssim : prints ssim for each frame () (2)
-ssim_file filename: outputs the ssim stats into a file
-debug: activates xvidcore internal debugging output
-vop_debug: print some info directly into encoded frames
-nochromame: Disable chroma motion estimation
-notrellis: Disable trellis quantization
-imin integer: Minimum I Quantizer (1..31) (2)
-imax integer: Maximum I quantizer (1..31) (31)
-bmin integer: Minimum B Quantizer (1..31) (2)
-bmax integer: Maximum B quantizer (1..31) (31)
-pmin integer: Minimum P Quantizer (1..31) (2)
-pmax integer: Maximum P quantizer (1..31) (31)
-drop integer: Frame Drop Ratio (0..100) (0)
-start integer: Starting frame number
-threads integer: Number of threads
-nothreadedinput: Disable threaded input reading
-progress : Show progress updates every n frames (10)
-par integer[:integer] : Set Pixel Aspect Ratio.
1 = 1:1
2 = 12:11 (4:3 PAL)
3 = 10:11 (4:3 NTSC)
4 = 16:11 (16:9 PAL)
5 = 40:33 (16:9 NTSC)
other = custom (width:height)
-help: prints this help message
-help zones: prints zones help message

NB: You can define 64 zones repeating the -z option as needed.



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: