Videorip.info

Учимся кодировать видео и делимся опытом

Полное описание всех ключей кодирования x264/libx264

Полное описание всех ключей кодирования x264/libx264

Логотип x264

На этой странице подробно рассмотрены и описаны настройки консольного видео энкодера х264.

Основная направленность пособия на желающих освоить x264 видеокодирование «c нуля», по самым простым схемам.

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

Статья актуальна для x264 версии 125 (ака core:125).

Если нашли ошибку или неточность в описании - сообщите администрации. Контакты внизу страницы.


Список ключей x264:

Ключи расположены в том же порядке, что и в x264 --fullhelp.

Presets:

--profile            Force the limits of an H.264 profile
--preset             Use a preset to select encoding settings
--tune               Tune the settings for a particular type of source or situation
--slow-firstpass     Enable slow first pass

Frame-type options:

-I, --keyint         Maximum GOP size
-i, --min-keyint     Minimum GOP size
--no-scenecut        Disable adaptive I-frame decision
--scenecut           How aggressively to insert extra I-frames
--intra-refresh      Use Periodic Intra Refresh instead of IDR frames
-b, --bframes        Number of B-frames between I and P
--b-adapt            Adaptive B-frame decision method
--b-bias             Influences how often B-frames are used
--b-pyramid          Keep some B-frames as references
--open-gop           Use recovery points to close GOPs
--no-cabac           Disable CABAC
-r, --ref            Number of reference frames
--no-deblock         Disable loop filter
-f, --deblock        Loop filter parameters
--slices             Number of slices per frame
--slice-max-size     Limit the size of each slice in bytes
--slice-max-mbs      Limit the size of each slice in macroblocks
--tff                Enable interlaced mode (top field first)
--bff                Enable interlaced mode (bottom field first)
--constrained-intra  Enable constrained intra prediction
--pulldown           Use soft pulldown to change frame rate
--fake-interlaced    Flag stream as interlaced but encode progressive
--frame-packing      For stereoscopic videos define frame arrangement

Ratecontrol:

-q, --qp             Force constant QP
-B, --bitrate        Set bitrate
--crf                Quality-based VBR
--rc-lookahead       Number of frames for frametype lookahead
--vbv-maxrate        Max local bitrate
--vbv-bufsize        Set size of the VBV buffer
--vbv-init           Initial VBV buffer occupancy
--crf-max            With CRF+VBV, limit RF to this value
--qpmin              Set min QP
--qpmax              Set max QP
--qpstep             Set max QP step
--ratetol            Tolerance of ABR ratecontrol and VBV
--ipratio            QP factor between I and P
--pbratio            QP factor between P and B
--chroma-qp-offset   QP difference between chroma and luma
--aq-mode            AQ method
--aq-strength        Reduces blocking and blurring in flat and textured areas
-p, --pass           Enable multipass ratecontrol
--stats              Filename for 2 pass stats
--no-mbtree          Disable mb-tree ratecontrol
--qcomp              QP curve compression
--cplxblur           Reduce fluctuations in QP
--qblur              Reduce fluctuations in QP
--zones              Tweak the bitrate of regions of the video
--qpfile             Force frametypes and QPs for some or all frames

Analysis:

-A, --partitions     Partitions to consider
--direct             Direct MV prediction mode
--no-weightb         Disable weighted prediction for B-frames
--weightp            Weighted prediction for P-frames
--me                 Integer pixel motion estimation method
--merange            Maximum motion vector search range
--mvrange            Maximum motion vector length
--mvrange-thread     Minimum buffer between threads
-m, --subme          Subpixel motion estimation and mode decision
--psy-rd             Strength of psychovisual optimization
--no-psy             Disable all visual optimizations that worsen both PSNR and SSIM
--no-mixed-refs      Don't decide references on a per partition basis
--no-chroma-me       Ignore chroma in motion estimation
--no-8x8dct          Disable adaptive spatial transform size
-t, --trellis        Trellis RD quantization
--no-fast-pskip      Disables early SKIP detection on P-frames
--no-dct-decimate    Disables coefficient thresholding on P-frames
--nr                 Noise reduction
--deadzone-inter     Set the size of the inter luma quantization deadzone
--deadzone-intra     Set the size of the intra luma quantization deadzone
--cqm                Preset quant matrices
--cqmfile            Read custom quant matrices from a JM-compatible file
--cqm4               Set all 4x4 quant matrices
--cqm8               Set all 8x8 quant matrices
--cqm4i, --cqm4p, --cqm8i, --cqm8p      
                     Set both luma and chroma quant matrices

--cqm4iy, --cqm4ic, --cqm4py, --cqm4pc  
                     Set individual quant matrices

Video Usability Info:

--overscan           Specify crop overscan setting
--videoformat        Specify video format
--fullrange          Specify full range samples setting
--colorprim          Specify color primaries
--transfer           Specify transfer characteristics
--colormatrix        Specify color matrix setting
--chromaloc          Specify chroma sample location
--nal-hrd            Signal HRD information
--pic-struct         Force pic_struct in Picture Timing SEI
--crop-rect          Add 'left,top,right,bottom' to the bitstream-level cropping rectangle

Input/Output:

-o, --output         Specify output file
--muxer              Specify output container format
--demuxer            Specify input container format
--input-fmt          Specify input file format
--input-csp          Specify input colorspace format for raw input
--output-csp         Specify output colorspace
--input-depth        Specify input bit depth for raw input
--input-res          Specify input resolution
--index              Filename for input index file
--sar                Specify Sample Aspect Ratio
--fps                Specify framerate
--seek               First frame to encode
--frames             Maximum number of frames to encode
--level              Specify level
--bluray-compat      Enable compatibility hacks for Blu-ray support
-v, --verbose        Print stats for each frame
--no-progress        Don't show the progress indicator while encoding
--quiet              Quiet Mode
--log-level          Specify the maximum level of logging
--psnr               Enable PSNR computation
--ssim               Enable SSIM computation
--threads            Force a specific number of threads
--lookahead-threads  Force a specific number of lookahead threads
--sliced-threads     Low-latency but lower-efficiency threading
--thread-input       Run Avisynth in its own thread
--sync-lookahead     Number of buffer frames for threaded lookahead
--non-deterministic  Slightly improve quality of SMP, at the cost of repeatability
--asm                Override CPU detection
--no-asm             Disable all CPU optimizations
--visualize          Show MB types overlayed on the encoded video
--dump-yuv           Save reconstructed frames
--sps-id             Set SPS and PPS id numbers
--aud                Use access unit delimiters
--force-cfr          Force constant framerate timestamp generation
--tcfile-in          Force timestamp generation with timecode file
--tcfile-out         Output timecode v2 file from input timestamps
--timebase           Specify timebase numerator and denominator
--dts-compress       Eliminate initial delay with container DTS hack


Force the limits of an H.264 profile

Указываем уровень совместимости, в зависимости от оборудования. Так как не все железные плееры могут справиться с high.

Профили:
baseline - Устанавливает --no-8x8dct --bframes 0 --no-cabac --cqm flat --weightp 0. С потерей качества. Без интерлейсинга.
main - Устанавливает --no-8x8dct --cqm flat. С потерей качества.
high - Нет ограничений. С потерей качества.
high10 - Тоже что и high, но с поддержкой глубины изображения в 10bit. С потерей качества.
high422 - Тоже что и high10, плюс поддержка 4:2:0/4:2:2 хрома сабсемплинг (chroma subsampling). С потерей качества.
high444 - Тоже что и high10, плюс поддержка 4:2:0/4:2:2/4:4:4 хрома сабсемплинг (chroma subsampling). Без потери качества.
В консоли: --profile <string>
В MediaInfo: Format profile: <string>
Значение по умолчанию: Отключено
См. также: --level

вернуться к списку

Use a preset to select encoding settings

Кодируем используя уже готовые пресеты. Пресет - это набор оптимальных параметров влияющих скорость кодирования и качество. Чем выше скорость - тем ниже качество.

Доступные пресеты:
ultrafast (ультра-быстрый):
--no-8x8dct --aq-mode 0 --b-adapt 0 --bframes 0 --no-cabac --no-deblock --no-mbtree --me dia --no-mixed-refs --partitions none --rc-lookahead 0 --ref 1 --scenecut 0 --subme 0 --trellis 0 --no-weightb --weightp 0
superfast (супер-быстрый):
--no-mbtree --me dia --no-mixed-refs --partitions i8x8,i4x4 --rc-lookahead 0 --ref 1 --subme 1 --trellis 0 --weightp 1
veryfast (очень быстрый):
--no-mixed-refs --rc-lookahead 10 --ref 1 --subme 2 --trellis 0 --weightp 1
faster (еще быстрее):
--no-mixed-refs --rc-lookahead 20 --ref 2 --subme 4 --weightp 1
fast (быстрый):
--rc-lookahead 30 --ref 2 --subme 6 --weightp 1
medium (средний):
все значения по умолчанию
slow (медленный):
--b-adapt 2 --direct auto --me umh --rc-lookahead 50 --ref 5 --subme 8
slower (медленнее):
--b-adapt 2 --direct auto --me umh --partitions all --rc-lookahead 60 --ref 8 --subme 9 --trellis 2
veryslow (очень медленный):
--b-adapt 2 --bframes 8 --direct auto --me umh --merange 24 --partitions all --ref 16 --subme 10 --trellis 2 --rc-lookahead 60
placebo (плацебо):
--bframes 16 --b-adapt 2 --direct auto --slow-firstpass --no-fast-pskip --me tesa --merange 24 --partitions all --rc-lookahead 60 --ref 16 --subme 11 --trellis 2

Рекомендации: Выбирайте пресет, в соответствии с вашими потребностями в скорости кодирования, качестве.
Примечание
: Следует задавать в самом начале. Все значения могут быть перезаданны позже.
В консоли
: --preset <string>
В MediaInfo: Не отображается
Значение по умолчанию: medium

вернуться к списку

Tune the settings for a particular type of source or situation 

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

Типы оптимизаций:
film - для фильмов:
--deblock -1:-1 --psy-rd <не задано>:0.15
animation - для аниме и мультипликации:
--ref (удваивает --ref если оно больше 1) --deblock 1:1 --psy-rd 0.4:<не задано> --aq-strength 0.6 --bframes (стандартный --bframes + 2)
grain - для зернистого изображения с повышенной детализацией:
--aq-strength 0.5 --no-dct-decimate --deadzone-inter 6 --deadzone-intra 6 --deblock -2:-2 --ipratio 1.1 --pbratio 1.1 --psy-rd <не задано>:0.25 --qcomp 0.8
stillimage:
--aq-strength 1.2 --deblock -3:-3 --psy-rd 2.0:0.7
psnr:
--aq-mode 0--no-psy
ssim:
--aq-mode 2 --no-psy
fastdecode - для быстрого декодирования содержания:
--no-deblock --no-cabac --no-weightb --weightp 0
zerolatency - для потокового видео:
--bframes 0 --force-cfr --no-mbtree --sync-lookahead 0 --sliced-threads --rc-lookahead 0

Примечание: Задавать нужно только после --presets.
В консоли: --tune <string>
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Enable slow first pass

Включаем "медленный" первый проход.

Рекомендации: Только при первом проходе и если нужно получить максимальное качество. Очень замедляет кодирование.
Примечание: Отключает следующие, ускоряющие первый проход, ключи:
--no-8x8dct --me dia --partitions none --ref 1 --subme 2 --trellis 0
Пресет placebo изначально содержит данный ключ.
В консоли
: --slow-firstpass
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку


В принципе, это и есть все самые основные ключи, как минимум для новичков. Все остальные ключи необходимы для тонкой настройки и требуют полного понимания их предназначения, так как легко могут вызвать разные проблемы.

Оптимальный вариант:

x264.exe --crf <integer> --preset <string> --tune <string> --profile <string> -o <выходное видео> <входное видео>

* --profile можно заменить на --level.


Maximum GOP size

Максимальный интервал между ключевыми/IDR кадрами. Этот параметр контролирует количество кадров между ключевыми, и если по достижению придела ключевой кадр не наступил - принудительно его ставит. Стандартный размер GOP'а динамически вычисляется во время кодирования для максимального сжатия.
IDR(ключевые) кадры - это так называемые кадры-разделители. Кадры, находящиеся в промежутке между двумя ключевыми кадрами не могут ссылаться на кадры, вне этого промежутка. Также, сами ключевые кадры являются I-кадрами, так что они не могу использоваться как референсные. По этому они могут использоваться в качестве контрольных точек в видеопотоке.

Примечание: Влияет на перемотку видео в плеере. Если значения очень большие, то при перемотке(прокрутке), не по ключевым кадрам, видео в плеере будет немного притормаживать. Так как декодеру придется отрендерить все кадры начиная с ближайшего ключевого и до выбранного пользователем. Перемотка не по ключевым кадрам поддерживается на уровне плеера, кодека.
Рекомендации
: Значение по умолчанию применимо в большинстве случаев. Если Вы хотите использовать собственное значение, используйте следующую формулу: fps*10 (значение должно быть целым числом, кратным 10-и). Если Вы кодируете для Blu-ray или потокового видео, то возможно, Вам придется использовать значения, равные частоте кадров итогового видео. Большие значения полезны только для статичного видео.
То есть для частоты кадров в 25 нужно выбирать 250, для 23,976 - 240 и для 29,970 - 300.
В консоли: -I <integer> или --keyint <integer>
В MediaInfo: keyint=<integer>
Значение по умолчанию: 250
См. также: --min-keyint, --scenecut, --intra-refresh

вернуться к списку

Minimum GOP size

Минимальное расстояние между ключевыми/IDR кадрами.

Рекомендации: Значение по умолчанию (25) подходит для большинства видов контента. Если Вы хотите использовать свое значение, то оно не должно превышать: --keyint/2+1. Если у вас довольно динамичное видео, то значение можно немного уменьшить.
В консоли: --min-keyint <integer>
В MediaInfo: keyint_min=<integer>
Значение по умолчанию: auto (--keyint/10 или --fps)
См. также: --keyint, --scenecut

вернуться к списку

Disable adaptive I-frame decision

Полное отключение адаптивных I-кадров.

В консоли: --no-scenecut
В MediaInfo: scenecut=0
Значение по умолчанию: Отключено
См. также: --scenecut

вернуться к списку

How aggressively to insert extra I-frames

Этот параметр определяет на сколько часто будут использоваться дополнительные I-кадры. x264 высчитывает метрику каждого кадра, что бы определить насколько он отличается от предыдущего. Если полученное значение меньше чем установлено для scenecut, то энкодер помещает в этом месте I-кадр, но только если последний ключевой кадр был не раньше чем --min-keyint. Если значение выше, то вставляет ключевой/IDR кадр. Полезность определения смены сцен заключается в оптимальной расстановке I-кадров в местах резкой смены сцен. Это повышает качество, но слишком частая смена приведёт к напрасной трате битрейта.

Примечание: Значение "0" соответствует --no-scenecut.
Диапазон: 0..100
В консоли: --scenecut <integer>
В MediaInfo: scenecut=<integer>
Значение по умолчанию: 40
См. также: --keyint, --min-keyint, --no-scenecut

вернуться к списку

Use Periodic Intra Refresh instead of IDR frames

Запрещает использование IDR-кадров.

Примечание: Эта опция снижает степень сжатия видео, и применима только для потокового видео. Дает более постоянный битрейт, без резких скачков.
В консоли: --intra-refresh
В MediaInfo: intra_refresh
Значение по умолчанию: Отключено

вернуться к списку

Number of B-frames between I and P

Количество последовательных B-кадров между I- и P- кадрами. B-кадры – это кадры, в которых закодированы изменения не только от предыдущих кадров, но и от последующих. Имеют еще большую степень сжатия, чем P-кадры, но также и наихудшее качество. B-кадры подобны P-кадрам, кроме того, они могут использовать предсказание движения от будущих кадров также. Это может привести к значительному улучшению степени сжатия.

Рекомендации: Оптимальные значения: 2..6.
Если Вы используете --b-adapt 2, то можно смело задавать --bframes 16. Это самый простой способ, так как выбор оптимального значения падает на енкодер.
Оптимальное значение для конкретного видео можно получить путем чтения статистики первого прохода.
Примечание: При высоких значениях, больших чем необходимо, кодирование может быть значительно замедленно, без выйграша в качестве. Также большое количество В-кадров затрудняет декодирование.
Диапазон: 1..16
В консоли: -b, --bframes <integer>
В MediaInfo: bframes=<integer>
Значение по умолчанию: 3
См. также: --b-bias, --b-pyramid, --ref, --pbratio, --partitions, --weightb

вернуться к списку

Adaptive B-frame decision method

Позволяет x264 адаптивно решать, где будут использоваться B-кадры, уменьшая количество B-кадров там, где это не нужно.

Рекомендации: При высоком значении --bframes лучше задавать значение 2.
Настройки
:
  0 - полностью отключить
  1 - "быстрый" алгоритм. Этот метод позволяет использовать --bframes 16
  2 - оптимальный алгоритм, медленнее предыдущего
Примечание: В многопроходном кодировании эта опция необходима только для первого прохода, где типы кадров определены.
В консоли: --b-adapt <integer>
В MediaInfo: b_adapt=<integer>
Значение по умолчанию: 1

вернуться к списку

Influences how often B-frames are used

Контролирует количество B-кадров, которые будут использованы вместо P-кадров.

Рекомендации: Используйте, только если считаете что сможете добиться лучшего контроля битрейта, чем сам x264.
Примечание: Значения выше 0 увеличивают вероятность использования В-кадров, а значения ниже 0 - уменьшают. Значения равные 100/-100 гарантируют/не гарантируют что каждый Р-кадр будет преобразован. Для этого используйте --b-adapt 0.
Диапазон: -100..100
В консоли
: --b-bias <integer>
В MediaInfo: b_bias=<integer>
Значение по умолчанию: 0
См. также: --bframes, --ipratio

вернуться к списку

Keep some B-frames as references

Позволяет B-кадрам ссылаться на другие В-кадры, тем самым увеличивая эффективность использования 2-х или более B-кадров.

Типы:
  none - запрещает использовать В-кадры как референсные.
  strict - разрешают по 1-му референсному В-кадру на каждый minigop (соблюдает ограничения стандарта Blu-ray).
  normal - разрешает множественное использование референсных В-каров на каждый minigop.
Примечание: Без этого параметра, В-кадры могут ссылаться только на I- или P-кадры. Хотя I/P-кадры и более ценны, из-за их более высокого качества, B-кадры также могут быть полезными.
Необходимо значение --bframes выше 2-х. Немного замедляет кодирование. При кодировании для Blu-ray не используйте normal.
В консоли: --b-pyramid <string>
В MediaInfo: b_pyramid=<integer>
Значение по умолчанию: normal
См. также: --bframes, --refs, --no-mixed-refs

вернуться к списку

Use recovery points to close GOPs

Open-GOP(Group Of Pictures) - техника увеличивающая эффективность кодирования. По сути, open-gop запрещает трансформацию B-кадра в P-кадр, если текущий кадр должен быть ключевым, исходя из значения --keyint, но новая сцена еще не началась. Это позволяет уменьшить излишне большое количество ключевых кадров и дает меньший битрейт, и соответственно более высокую степень сжатия.

РекомендацииПолезно, если Вы используете низкие значения --keyint.
Примечание
Некоторые декодеры не поддерживают open-gop, по этому эта опция не включена по умолчанию.
В консоли
: --open-gop
В MediaInfo: open_gop=<integer>
Значение по умолчанию: Отключено

вернуться к списку

Disable CABAC

CABAC (Context-Adaptive Binary Arithmetic Coding / Контекстно-Адаптивное Двоичное Арифметическое Кодирование) - это умная техника сжатия без потерь. Данная опция отключит CABAC и энкодер начнет использовать CAVLC (Контекстно-Адаптивное Неравномерное Кодирование).

Рекомендации: Для карманных устройств(КПК, КМК и смартфонов) лучше использовать CAVLC. Так как их мощности не хватит что бы справится с CABAC.
Примечание: CABAC дает сжатие, приблизительно, на 10-20% больше, по сравнению с CAVLC.
CABAC использует больше процессорного времени для кодирования и декодирования.
В консоли: --no-cabac
В MediaInfo: cabac=0
Значение по умолчанию: Отключено

вернуться к списку

Number of reference frames

Параметр задает количество используемых рефернсных кадров. Определяет, сколько предыдущих кадров может быть связано (заимствование макроблоков) с P- или B-кадрами.

Рекомендации: Приблизительно 4-6. Большие значения могут быть полезны для анимации, аниме, скринкастов и другого "статичного" видео.
Примечание: При 5-ти и более референсных кадрах, качество, обычно, повышается незначительно.
Кроме того, 4 - максимальное значение для 1080p, а 9 - максимальное для 720p, придерживаясь спецификации Level 4.1. Это самый высокий уровень, поддерживаемый в большинстве бытовой электроники, которая поддерживают воспроизведение H.264, включая также Xbox 360 и Playstation 3.
Чем больше референсных кадров, тем медленнее кодирование.
Диапазон: 0..16
В консоли: -r, --ref <integer>
В MediaInfo: ref=<integer>
Значение по умолчанию: 3
См. также: --b-pyramid, --no-mixed-refs, --level

вернуться к списку

Disable loop filter

Отключение фильтра подавления блочности.

В консоли: --no-deblock
В MediaInfo: deblock=0:0:0
Значение по умолчанию: Отключено
См. также: --deblock

вернуться к списку

Loop filter parameters

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

Рекомендации: Параметр "alpha" рекомендуется выбрать от -3 до 3. Большее значение увеличивает силу подавления блоков, но картинка становится немного размытой (используйте при низких битрейтах или при кодировании мультипликации). Меньшее значение уменьшает силу, зато картинка остается достаточно чёткой (используйте при высоких битрейтах). Если не знаете, что выбрать, то оставьте 0 - подходит для большинства случаев.
Параметр "beta" рекомендуется выбирать от -2 до 2. При больших значениях, кодек может распознать некоторые детали за блок и применить к ним фильтр подавления блоков. При меньших значениях, деталей сохранится больше, но некоторые блоки могут быть приняты за деталь (используйте меньшие значения при кодировании мультипликации - в ней четкие контуры, поэтому кодек не ошибется). Желательно чтобы этот параметр отличался не больше, чем на единицу от предыдущего. Если не знаете, что выбрать, то оставьте 0 - подходит для большинства случаев.
Сила деблокинга вычисляется для каждого макроблока, исходя из квантизера для него и близлежащих макроблоков. Альфа определяет: является ли приграничный квадрат блочным или же на самом деле это деталь. Это похоже на порог. Бета так же похожа на порог, но используется для того, чтобы убедиться в однородности картинки с обеих приграничных сторон и, тем самым, отделить детали от блочности. Когда определена блочность, альфа решает, какую силу использовать (максимально допустимое изменение пикселя). Бета немного изменяет силу, если блок однородный. Сила деблокинга: Порог деблокинга. Порог деблокинга устанавливает жёсткость отбора блочности фильтром. Сила деблокинга регулирует, как сильно определённые блоки будут смягчены. Значения по умолчанию сочетают аккуратность удаления блочности и сохранение деталей. Значения должны лежать в диапазоне от -3 до 3 (чем ниже значения, тем меньше устраняется блочность. Отрицательные значения не означают, что блочность оставляется).
Примечание: Слишком высокие значения дадут потерю многих деталей и текстур или смазывание. Установка слишком низких значений оставит резкие края и "москитный шум" (mosquito noise). Должна быть положительная взаимосвязь между двумя коэффициентами деблокинга (желательно, чтобы обе цифры были отрицательными или положительными). Если Вы увеличиваете силу, то должны увеличить и порог
Диапазон: -6..6 (для alpha и beta соответственно)
В консоли: -f, --deblock <alpha:beta>
В MediaInfo: deblock=1:<integer>:<integer>
Значение по умолчанию: 0:0
См. также: --no-deblock

вернуться к списку

Number of slices per frame

Указываем количество частей (квадратов), на которые будет разбит кадр.

Рекомендации: Если Вы кодируете Blu-ray - используйте значение 4. В противном случае вообще не используйте эту опцию. Разве что Вы точно знаете что она вам нужна.
В консоли: --slices <integer>
В MediaInfo: Неизвестно
Значение по умолчанию: 0
См. также: --slice-max-size, --slice-max-mbs

вернуться к списку

Limit the size of each slice in bytes

Задаем максимальное размер slice в байтах.

Примечание: На данные момент конфликтует с --tff, --bff.
В консоли: --slice-max-size <integer>
В MediaInfo: Неизвестно
Значение по умолчанию: 0
См. также: --slices

вернуться к списку

Limit the size of each slice in macroblocks

Задаем максимальный размер slice в макроблоках.

Примечание: На данные момент конфликтует с --tff, --bff.
В консоли: slice-max-mbs <integer>
В MediaInfo: Неизвестно
Значение по умолчанию: 0
См. также: --slices

вернуться к списку

Enable interlaced mode (top field first)

Включаем череcстрочное кодирование. Первое поле - верхнее.

Рекомендации: Чересстрочное кодирование необходимо только для чересстрочных дисплеев.
Примечание: x264 использует для череcстрочного кодирования MBAFF, и это намного хуже прогрессивного кодирования.
В консоли: --tff
В MediaInfo: interlaced=1
Значение по умолчанию: Отключено
См. также: --bff

вернуться к списку

Enable interlaced mode (bottom field first)

Включаем череcстрочное кодирование. Первое поле - нижнее.

Рекомендации: Чересстрочное кодирование необходимо только для чересстрочных дисплеев.
Примечание: x264 использует для череcстрочного кодирования MBAFF, и это намного хуже прогрессивного кодирования.
В консоли: --bff
В MediaInfo: interlaced=1
Значение по умолчанию: Отключено
См. также: --tff

вернуться к списку

Enable constrained intra prediction

Включаем ограниченное внутреннее предсказание, необходимое для base layer.

Рекомендации: Практически не применяется. Этот ключ можно игнорировать.
В консоли: --constrained-intra
В MediaInfo: constrained_intra=<0/1>
Значение по умолчанию: Отключено

вернуться к списку

Use soft pulldown to change frame rate

Выбираем пресет софт-телесина для входного видео. Телесин - это способ преобразования видео в телевизионный формат. То есть частота исходного видео подгоняется под частоту телевещания (50Гц - PAL, 60Гц - NTSC), при этом возможно незначительное ускорение видео. Данный параметр задает тип исходного преобразования, для выполнения обратного.

Пресеты: none, 22, 32, 64, double, triple, euro (требует crf входное видео).
Примечание: использование любого пресета, кроме none, подразумевает использование --pic-struct.
В консоли: --pulldown <string>
В MediaInfo: Неизвестно
Значение по умолчанию: Отключено

вернуться к списку

Flag stream as interlaced but encode progressive

Обозначает видеопоток как чересстрочный, даже если он таковым не является. Позволяет кодировать видео для Blu-ray с частотой кадров в 25 и 30 в секунду.

В консоли: --fake-interlaced
В MediaInfo: Неизвестно (обычно отображает как прогрессивное)
Значение по умолчанию: Отключено

вернуться к списку

For stereoscopic videos define frame arrangement

Если Вы кодируете 3D-видео, то этот параметр говорит вашему декодеру о том, кокой именно тип 3D-видео используется.

Типы 3D-видео:
  1 - чередование столбцов - Л(лево) и П(право) чересстрочно по столбцам (Interlaced)
  2 - чередование строк - Л и П чересстрочно по строкам (Interlaced)
  3 - горизонтальная (попеременная) стереопара - Л слева, П справа (SideBySide)
  4 - верх низ - Л вверху, П снизу (OverUnder)
  5 - чередование кадров - один кадр для одного глаза
В консоли: --frame-packing <integer>
В MediaInfo: Неизвестно
Значение по умолчанию: Отключено

вернуться к списку


Force constant QP

В режиме Constant Quantizer (постоянного квантизера) каждый кадр кодируется с одинаковым математическим качеством (или квантизером), не обращая внимания на то, сколько битрейта придётся потратить. Чем ниже значение - тем выше качество.

Рекомендации: Используйте CRF вместо QP. Так как QP не дает возможности заранее определить размер/битрейт итогового видео, а также Вы получите намного больший размер файла, нежели с CRF.
Примечание: Значение QP отвечает только за качество Р-кадров. Качество I-кадров и B-кадров высчитывается исходя из значений --ipratio и --pbratio соответственно. QP немного быстрее чем CRF.
Значения ниже 15-и, полезны только для архивного/репродукционного качества, а при значениях выше 40 заметны значительные потери качества.
Для кодирования без потерь (lossless) - используйте значение 0.
Диапазон: 0..69
В консоли: -q <integer> или --qp <integer>
В MediaInfo: rc=qp
Значение по умолчанию: Отключено
См. также: --bitrate, --crf, --ipratio, --pbratio

вернуться к списку

Set bitrate

Устанавливает средний битрейт(ABR), с которым будет закодирован файл. В режиме Average Bit Rate (усреднённого переменного битрейта) каждый кадр кодируется с минимально возможным квантизером, придерживаясь среднего битрейта на указанном времени. В этом режиме итоговый размер достаточно предсказуемый, а качество на оборот не предсказуемо.

Рекомендации: Лучше всего использовать при двухпроходном кодировании.
Приблизительные диапазоны битрейта для различных типов видео:
  для SD(480 пикселей по высоте и ниже): 800МБит/с - 2100МБит/с.
  для 720p(720 пикселей по высоте): 3-6МБит/с.
  для 1080p(1080 пикселей по высоте): 8-15МБит/с.
Примечание: Установки для верификатора видео буфера (VBV) будут определять уровень изменения текущего битрейта, использующегося для компенсации при смене цен.
В консоли: -B <integer> или --bitrate <integer>
В MediaInfo: Bit rate : <integer>
Значение по умолчанию: Отключено
См. также: --qp, --crf, --ratetol, --pass, --stats

вернуться к списку

Quality-based VBR

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

Рекомендации: Оптимальный диапазон 18-26. Приблизительно CRF 19-21.5 – это то значение, при котором изображение будет выглядеть очень хорошим.
Лучше использовать при однопроходном кодировании.
Примечание: Значения ниже 16-и дают скорее повышение математического качества, чем визуального. Они полезны только для архивного/репродукционного материала, а при значениях выше 40-а, заметны значительные потери качества.
Диапазон: 0..51
В консоли: --crf <float>
В MediaInfo: rc=crf
Значение по умолчанию: 23.0
См. также: --qp, --bitrate

вернуться к списку

Number of frames for frametype lookahead

Устанавливает число кадров, используемых в mb-tree ratecontrol и vbv-lookahead. Большие значения улучшают результаты mb-tree, но замедляют кодирование. Для vbv-lookahead большие значения дадут большую точность и стабильность

Рекомендации: 40..60
Примечание: Не может быть больше --keyint. Если будет задано больше чем --keyint, то x264 автоматически уменьшит его до значения --keyint.
Использует очень много оперативной памяти. Значения больше 100, при размере ОЗУ меньше 2Gb могут привести к падению(экстренное завершение) x264.
Диапазон: 0..250
В консоли: --rc-lookahead <integer>
В MediaInfo: rc_lookahead=<integer>
Значение по умолчанию: 40
См. также: --no-mbtree, --vbv-bufsize, --vbv-maxrate

вернуться к списку

Max local bitrate

Дополнительный параметр управления битрейтом. Устанавливает максимальный битрейт, разрешённый в видео-буфере.

Рекомендации: Значение по умолчанию оптимально. Другие значения могут привести к снижению качества.
В консоли
: --vbv-maxrate <integer>
В MediaInfo: Не отображается
Значение по умолчанию: 0
См. также: --vbv-bufsize, --vbv-init

вернуться к списку

Set size of the VBV buffer

Устанавливаем размер VBV(Video Buffer Verifier) буфера в килобайтах.

Рекомендации: Значение по умолчанию оптимально. Другие значения могут привести к снижению качества.
В консоли: --vbv-bufsize <integer>
В MediaInfo: Не отображается
Значение по умолчанию: 0
См. также: --vbv-maxsize, --vbv-init

вернуться к списку

Initial VBV buffer occupancy

Задаем размер VBV буфера, каким он должен быть перед началом воспроизведения.

Рекомендации: Значение по умолчанию оптимально. Другие значения могут привести к снижению качества.
Примечание: Если значение ниже 1, то начальное заполнение высчитывается по формуле: --vbv-init * --vbv-bufsize. Если больше 1, то сразу принимается как начальное заполнение.
В консоли
: --vbv-init <float>
В MediaInfo: Не отображается
Значение по умолчанию: 0.9
См. также: --vbv-maxsize, --vbv-bufsize

вернуться к списку

With CRF+VBV, limit RF to this value

Тоже что и --qpmax, только доля --crf. Задает максимальное значение ratefactor. Опция работает только с --crf и включенным VBV. Данная опция запрещает опускать значение ratefactor ниже заданного, даже если это приведет к нарушению ограничений VBV. Таким образом, устройство воспроизведения скорее пропустить кадр, чем покажет его в плохом качестве.

РекомендацииОпция полезна для потокового вещания.
Примечание
На очень сложных сценах, вместо того что бы показать плохой кадр (с низким битрейтом), потоковый сервер просто понизит фреймрейт.
В консоли
: --crf-max <float>
В MediaInfo: Не отображается
Значение по умолчанию: Отключено
См. также: --crf, --vbv-maxrate, --vbv-bufsize

вернуться к списку

Set min QP

Определяет минимальный квантизатор, который x264 будет когда-либо использовать. Чем ниже квантизатор, тем ближе будет выходное видео к входному по качеству.

Рекомендации: Значение по умолчанию оптимально в большинстве случаев. Но если вы считаете что энкодер тратит часть битрейта в пустую, то можете поднять значение где то до 16-и. Это практически не повлияет на визуальное качество, зато уменьшит битрейт, а в следствии и размер.
Примечание: Что бы узнать насколько эффективно используется данный квантизер, посмотрите лог кодирования.
В консоли
: --qpmin <integer>
В MediaInfo: qpmin=<integer>
Значение по умолчанию: 10
См. также: --qpmax, --ipratio

вернуться к списку

Set max QP

Устанавливаем максимальное значение квантизера. Это не даёт кодеру слишком сильно сжимать кадры, тем самым ухудшая качество.

Рекомендации: Устанавливать значения ниже стандартного нужно только если Вы считаете что некоторые кадры сжаты слишком сильно.
Диапазон
: 0..69
В консоли
: --qpmax <integer>
В MediaInfo: qpmax=<integer>
Значение по умолчанию: 69
См. также: --qpmin, --pbratio, --crf-max

вернуться к списку

Set max QP step

Устанавливает, как сильно может изменяться квантизер между последовательными кадрами, придерживаясь одного уровня качества.
То есть, при --qpstep=4 если кадр будет закодирован с QP=20, то квантизатор следующего кадра не будет, ниже 16 или больше 24.

Рекомендации: Можно повысить для очень динамичного видео.
В консоли
: --qpstep <integer>
В MediaInfo: qpstep=<integer>
Значение по умолчанию: 4

вернуться к списку

Tolerance of ABR ratecontrol and VBV

Регулирует, как сильно будет колебаться битрейт относительно установленного среднего битрейта.

РекомендацииНизкие значения ограничивают изменение битрейта, создавая выходной файл, хорошо попадающий в итоговый размер, исходя из установленного битрейта, но ухудшают способность кодека адаптироваться к изменению сложных сцен. Высокие значения увеличивают изменения (скачки) битрейта, которые ухудшают возможность потоковой передачи и делают размер непредсказуемым, но улучшают способность кодека адаптироваться к изменению сложных сцен. Установка значения в 0% даст в результате работу в режиме постоянного битрейта. Установив 100%, Вы получите изменения битрейта в зависимости от сложности кодируемой сцены. (Установив 100% Вы получите сжатие в режиме постоянного квантизера - CQ).
Примечание
: Задается в процентах. То есть 1.0 соответствует 1.0%.
В консоли
: --ratetol <float>
В MediaInfo: Не отображается
Значение по умолчанию: 1.0

вернуться к списку

QP factor between I and P

Устанавливает уровень среднего прироста качества I-кадров, по сравнению с Р-кадрами.

Примечание: Чем выше значение, тем выше качество I-кадров.
В консоли
: --ipratio <float>
В MediaInfo: ip_ratio=<float>
Значение по умолчанию: 1.40
См. также: --pbratio

вернуться к списку

QP factor between P and B

Устанавливает средний уровень снижения качества для B-кадров, по сравнению с P-кадрами.

Примечание: Чем выше значение, тем ниже качество В-кадров. Не используется с mbtree(включен по умолчанию), который сам высчитывает оптимальное значение.
В консоли
: --pbratio <float>
В MediaInfo: pb_ratio=<float>
Значение по умолчанию: 1.30
См. также: --ipratio

вернуться к списку

QP difference between chroma and luma

Устанавливает уровень снижения качества между яркостной и цветовой составляющими. Человеческий глаз более чувствителен к изменению яркости, чем цвета. Понизив цветовую детализацию можно повысить уровень сжимаемости. Обычно, x264 кодирует все три цветовых составляющих (luma-яркость, U -1-й цветоразностный сигнал, V -2-й цветоразностный сигнал) с тем же самым квантизатором. Это значение будет добавлено к квантизаторам для U и V составляющих. Это позволяет Вам смещать x264 в пользу яркости (luma), устанавливая положительные значения, сигналы цветности будут иметь более высокие квантизаторы, или в пользу цвета (сигнал цветности), устанавливая отрицательные значения. Помните, что x264 кодирует видео, как YV12, что означает, что сигнал цветности поднимает только половину цветового пространства, а luma делает так или иначе.

Рекомендации: Лучше не изменять стандартное значение, так как его задает сам x264. К примеру включение psy снижает его на 2-а, чтобы компенсировать повышение яркости (luma).
Примечание
: x264 кодирует luma и chroma с одинаковым квантизиром только до Q=29. 
В консоли: --chroma-qp-offset <integer>
В MediaInfo: chroma_qp_offset=<integer>
Значение по умолчанию: 0

вернуться к списку

AQ method

Без AQ, x264, как правило, не производит перераспределение битрейта для снижения или повышения детализации сцен. AQ лучше перераспределяет битрейт между всеми макроблоками в видео.

Режимы:
0 - Не использовать AQ вообще.
1 - Разрешает AQ для перераспределения битов в каждом кадре.
2 - Авто-инвариантность AQ (экспериментальная) позволяет перераспределять биты по всему видео.
В консоли: --aq-mode <integer>
В MediaInfo: aq=<integer>
Значение по умолчанию: 1
См. также: --aq-strength

вернуться к списку

Reduces blocking and blurring in flat and textured areas

Устанавливает силу AQ, для подавления блочности и размытия на "плоских" и текстурированных областях.

Рекомендации: Применяйте в диапазоне от 0.7 (большая детализация изображения, но и больше артефактов) до 1.5 (меньшая детализация, но значительное снижение вероятности появления артефактов). Всё зависти от качества источника изображения.
Примечание: Отрицательные значения не допускаются. Значения вне диапазона 0.0 - 2.0 скорее всего приведут к полному искажению видео.
В консоли: --aq-strength <float>
В MediaInfo: aq=<float>
Значение по умолчанию: 1.0
См. также: --aq-mode

вернуться к списку

Enable multipass ratecontrol

Это необходимая настройка для многопроходного кодирования.

Принцип работы:
1-й проход: сбор статистики о видеопотоке и генерация stats-файла.
2-й проход: непосредственно кодирование, с учетом статистики полученной из stats-файла.
Двухпроходное кодирование позволяет добиться увеличения качества и уменьшения битрейта, в ущерб времени кодирования. Позволяет точнее попасть в заданный размер. Так же можно использовать и трехпроходное кодирование.
Примечание: Чем больше проходов - тем больше общее время кодирования.
В консоли: -p <integer> или --pass <integer>
В MediaInfo: Не отображается
Значение по умолчанию: Отключено
См. также: --stats, --bitrate

вернуться к списку

Filename for 2 pass stats

Этот файл создается при первом проходе, и используется в последующих. Хранит информацию о всех кадрах.

В консоли: --stats <string>
В MediaInfo: Не отображается
Значение по умолчанию: x264_2pass.log
См. также: --pass

вернуться к списку

Disable mb-tree ratecontrol

Эта опция передаёт информацию от следующих блоков к предыдущим блокам поперек векторов движения. Эту опцию можно было описать, как ограничение --qcomp, чтобы воздействовать на индивидуальные блоки вместо целых сцен. Таким образом, вместо того, чтобы понижать качество в сценах высокой сложности (как x264 в настоящее время делает), эта опция понизит качество только на сложной части сцены, в то время, как например, статический фон останется высококачественным. Эта опция также имеет много других более тонких эффектов, некоторые дают потенциально отрицательный результат, но во многих случаях MB-Tree Rate Control даёт положительный результат. Применение его помогает при всех битрейтах, и может даже помочь при феноменально низких битрейтах, где видео иначе развалилось бы полностью на блоки...

В консоли: --no-mbtree
В MediaInfo: mbtree=0
Значение по умолчанию: Отключено
См. также: --rc-lookahead

вернуться к списку

QP curve compression

Регулирует, насколько сильно может колебаться битрейт на протяжении видео файла. Низкие значения уменьшают область колебания битрейта, производя файлы предсказуемого размера, но ухудшают способность кодека адаптироваться к изменению сложных сцен, где потеря деталей может быть не так важна. Высокие значения увеличивают разброс качества, который может улучшить визуальное качество путём уменьшения качества на малозаметных деталях и увеличивая там, где детали более заметны.

Примечание: Значение 0.0 даст постоянный битрейт, 1.0 постоянное качество.
Использование значение 1.0 с CRF равносильно использованию QP. Разве что QP не может работать с AQ.
Рекомендации: Не меняйте стандартное значение. Оно подходит для большинства типов видео.
В консоли: --qcomp <float>
В MediaInfo: qcomp=<float>
Значение по умолчанию: 0.60
См. также: --cplxblur, --qblur

вернуться к списку

Reduce fluctuations in QP

Временное сглаживание оценки сложности сцены (кадров). Более низкие значения этого параметра позволяют квантизерам более резко изменяться при усложнении или упрощении сцены. Более высокие значения заставляют квантизеры меняться более плавно. Cplxblur гарантирует, что каждый опорный I-кадр сопоставим по качеству со следующим P-кадров. Также эта опция позволяет не тратить впустую биты при кодировании чередующихся сложных и простых сцен, во время которых происходят флуктуации квантизеров. Имеет смысл поэкспериментировать с этим параметром при кодировании анимации.

Диапазон: 0..999
Примечание: Задействуется только при двухпроходном кодировании.
В консоли
: --cplxblur <float>
В MediaInfo: cplxblur=<float>
Значение по умолчанию: 20
См. также: --qcomp, --qblur

вернуться к списку

Reduce fluctuations in QP (after curve compression)

Временное сглаживание параметров квантизации. Похоже на --cplxblur, только используется не до, а после curve compression (--qcomp).

Диапазон: 0..99
Примечание: Данный параметр задействуется только при двухпроходном кодировании.
В консоли
: --qblur <float>
В MediaInfo: qblur=<float>
Значение по умолчанию: 0.5
См. также: --qcomp, --cplxblur

вернуться к списку

Tweak the bitrate of regions of the video

Зоны позволяют Вам предопределить области видео, для которых Вы можете указать отдельные опции кодирования.

Рекомендации: Полезно для "простых" титров.
Опции
: Существует две обязательные опции. Можно задать только одну из них для каждой zone, и они обязательно должны быть заданы первыми:
b= устанавливает битрейт на зону. Указывает на сколько процентов изменить битрейт (b=1 - без изменений, b=0.2 снизить битрет до 20% от исходного). Применяется для сверх-быстрых и мало активных сцен. 
q= устанавливает постоянный квантизер на зону. Полезная установка для определённого диапазона кадров.
Другие доступные опции:
ref=<integer>
b-bias=<integer>
scenecut=<integer>
no-deblock
deblock=<integer>:<integer>
deadzone-intra=<integer>
deadzone-inter=<integer>
direct=<string>
merange=<integer>
nr=<integer>
subme=<integer>
trellis=<integer>
no-chroma-me
no-dct-decimate
no-fast-pskip
no-mixed-refs
psy-rd=<float>:<float>
me=<integer>
no-8x8dct
b-pyramid=<string>
crf=<float>
Ограничения:
Количество референсных кадров никогда не должно превышать значения, которое было установлено первоначально.
Scenecut не может быть включен и выключен.
Merange не может превысить то значение, которое первоначально было определено для --me esa/tesa.
Subme нельзя изменить, если изначально было выбран 0.
Вы не можете установить esa или tesa для --me, если --me было изначально установлено как dia, hex, или umh.
Пример: 0,1000,b=2/1001,2000,q=20,me=3,b-bias=-1000
Примечание: значения b, которые больше/меньше стандартного на 100%, скорее всего приведут к полному искажению видео.
В консоли: --zones
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Force frametypes and QPs for some or all frames

Ручная отмена стандартного ratecontrol. Просто указываем на файл, который содержит значения квантизера и frametype для каждого кадра.

Формат: "framenum frametype quantizer".
Например:
0 I 18 < IDR (key) I-frame
1 P 20 < P-frame
2 B 22 < Referenced B-frame
3 i 21 < Non-IDR (non-key) I-frame
4 b 18 < Non-referenced B-frame
5 k 18 Kayframe
В консоли: --qpfile <string>
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку


Partitions to consider

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

Доступные partitions: p8x8(включает в себя p16x8/p8x16), p4x4(включает в себя p8x4/p4x8), b8x8(включает в себя b16x8/b8x16), i8x8, i4x4
Вы можете также установить none(отключить все) или all(включить все).
Рекомендации: Значение по умолчанию - оптимально. Для получения максимально качества можно использовать all, но скорее всего будет не лучше чем используя значение по умолчанию.
Примечаниеp4x4 вообще то не очень полезен и его применение значительно снижает скорость кодирования при незначительном повышении качества изображения. Для HD видео лучше вообще не использовать.
i8x8 может использоваться только в High Profile
В консоли: -A, --partitions <string>
В MediaInfo: analyse=<string>
Значение по умолчанию: p8x8,b8x8,i8x8,i4x4
См. также: --no-8x8dct

вернуться к списку

Direct MV prediction mode

Определяет метод нахождения векторов движения.

Доступные методы:
none - отключает поиск векторов движения.
spatial - использует для поиска соседние блоки одного кадра. Может повысить PSNR.
temporal - использует для поиска блоки соседних кадров. Немного лучше предыдущего.
auto - сам выбирает какие блоки использовать.
Примечание: auto лучше всего подходит для двухпроходного режима, но так же может использоваться и при однопроходном. auto нужно задавать во время обоих проходов, иначе второй проход будет автоматически использовать temporal.
Использовать none крайне не рекомендуется.
Рекомендации
: auto – для двухпроходного режима, и spatial - при кодировании с CRF
В консоли: --direct <string>
В MediaInfo: direct=<integer>
Значение по умолчанию: spatial

вернуться к списку

Disable weighted prediction for B-frames

Позволяет "взвешивать" ссылки на B-кадры. Управляя, таким образом, тем, на сколько каждая ссылка будет влиять на предполагаемое изображение. Эта опция отключает данную возможность.

В консоли: --no-weightb
В MediaInfo: weightb=<integer>
Значение по умолчанию: Отключено

вернуться к списку

Weighted prediction for P-frames

Взвешенное предсказание яркости для P-кадров, которое улучшает затухания и градиенты цвета (небо и т. п.).

Варианты:
0 - отключено
1 - оценка затуханий
2 - оценка затуханий и поиск референсных дубликатов
В консоли: --weightp <integer>
В MediaInfo: weightp=<integer>
Значение по умолчанию: 2

вернуться к списку

Integer pixel motion estimation method

Устанавливаем метод оценки движения полного пикселя.

Методы:
dia (diamond, ромб) - простейший поиск, начиная с одного пикселя одного кадра, начинают просматриваться соседние пиксели на соседнем кадре, на один пиксель выше, правее, ниже и левее. Выбирается наиболее вероятно сдвинувшийся пиксель и процесс повторяется до тех пор, пока не будет найден лучший пиксель или пока не будет достигнут предел диапазона поиска движения
hex (hexagon, шестиугольник) - состоит из подобной стратегии, но использует для поиска 6 окружающих точек, отсюда и название - шестиугольник. Значительно эффективней, чем dia, но немного медленнее. Оптимален для повседневного кодирования.
umh (неравный мультишестиугольник) - значительно медленнее, чем hex, но ищет используя сложную модель мультишестиугольника. Лучше предыдущего, способен найти сложные векторы движения, ценой потери скорости кодирования. В отличие от предыдущих алгоритмов, в этом, и во всех последующих, опция --merange задает не количество итераций, а радиус, в пределах которого будет искаться пиксель.
esa (exhaustive, исчерпывающий) - высокооптимизированный интеллектуальный поиск на всей области поиска векторов движения, в пределах лучшего merange предсказания. Это математически эквивалентно методу поиска перебором, для каждого вектора движения в этой области, но быстрее. Этот метод значительно медленнее чем umh, но не дает значительного повышения качества, поэтому не рекомендован для повседневного кодирования.
tesa (transformed exhausive, преобразовано-исчерпывающий) - алгоритм, который пытается улучшить эффект Hadamard преобразования, сравнивая с каждым вектором движения. Похож на esa, но немного лучше и немного медленнее.
Рекомендации: umh
В консоли: --me <string>
В MediaInfo: me=<string>
Значение по умолчанию: hex
См. также: --merange

вернуться к списку

Maximum motion vector search range

Определяет максимальное количество попыток (с измененными данными) нахождения оптимального варианта при поиске вектора движения макроблока. Чем больше, тем лучше качество.

Рекомендации: Стандартное значение для SD видео и 24 для HD видео. Падение скорости не стоит выигрыша в качестве, времени кодирования уже после 32.
Желательно использовать значения кратные 4-м.
Примечание: Для umh, esa и tesa, увеличение merange значительно замедлит кодирование.
Для dia и hex диапазон значений: 4..16.
В консоли: --merange <integer>
В MediaInfo: me_range=<integer>
Значение по умолчанию: 16
См. также: --me

вернуться к списку

Maximum motion vector length

Устанавливает максимальный радиус вектора движения для каждого пикселя.

Рекомендации: Лучше вообще не изменять.
Примечание: Этот параметр влияет на --level, и определен стандартом H.264.
Для Level 1/1b = 64
Для Level 1.1-2 = 128
Для Level 2.1-3 = 256
Для Level >3.1 = 512
В консоли: --mvrange <float>
В MediaInfo: Не отображается
Значение по умолчанию: -1 (auto)
См. также: --mvrange-thread

вернуться к списку

Minimum buffer between threads

Задаем минимальный размер буфера между потоками(ядрами) для векторов движения.

Рекомендации: Ни в коем случает не трожте эту опцию.
В консоли: --mvrange-thread <integer>
В MediaInfo: Не отображается
Значение по умолчанию: -1 (auto)
См. также: --mvrange

вернуться к списку

Subpixel motion estimation and mode decision

Задаем сложность оценки подпикселя. Уровни 1-5 просто управляют силой обработки подпикселя. Уровень 6 допускает RDO для режима предсказания, и уровень 8 допускает RDO для векторов движения и intra режимов предсказания.

Уровни:
  0 - fullpel only (не рекомендуется)
  1 - метод предсказания SAD, одна QPel итерация
  2 - метод предсказания SADT
  3-5 - постепенное увеличение QPel
  6 - метод предсказания RD для I-/P- кадров
  7 - метод предсказания RD для всех типов кадров
  8 - RD обработка для I-/P- кадров
  9 - RD обработка для всех типов кадров
  10 - QP-RD (требует: --trellis 2 и --aq-mode >0)
  11 - Full RD - новая опция, необходимая для будущего --trellis режима
Рекомендации: Стандартное значение или выше
Примечание: Чем выше уровень, тем ниже скорость кодирования.
В консоли: -m, --subme <integer>
В MediaInfo: subme=<integer>
Значение по умолчанию: 7

вернуться к списку

Strength of psychovisual optimization

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

Рекомендации: оставьте всё по умолчанию, хотя для многих исходных материалов вполне приемлемы значения 1.0:0.15 при условии установки --aq-strength 0.7..1.2 и --trellis 2
Примечание: Психовизуальный метод имеет два параметра настройки:
Первый параметр - сила психовизуальной адаптации PSY-RDO (требует активации, чтобы --subme >-6). При PSY-RDO = 0 кодек отключает специфическую психовизуальную адаптацию вовсе. При этом кодек использует старую ssd метрику, которая стремится к большей точности, но не похожести мелкой детализации. Увеличение параметра PSY-RDO повышает детализацию и зернистость изображения, уменьшение наоборот их снижает. Следите за этим параметром внимательно, не допуская перешарпности изображения и таким образом ещё и экономя битрейт.
Второй параметр - сила Psy-Trellis. Чтобы использовать требуется --trellis >=1. Отметьте, что Psy-Trellis всё еще считают 'экспериментальной', и не рекомендуется, чтобы Вы использовали для реального кодирования, хотя кодирует всё же. При этом не повышайте величину Psy-Trellis более 0.5, хотя бы в начале.
В консоли: --psy-rd <float>:<float>
В MediaInfo: psy_rd=<float>:<float>
Значение по умолчанию: 1.0:0.0
См. также: --no-psy

вернуться к списку

Disable all visual optimizations that worsen both PSNR and SSIM

Отключаем все психовизуальные методы.

ПримечаниеЭто снизит PSNR и SSIM.
В консоли
: --no-psy
В MediaInfo: Не отображается
Значение по умолчанию: Отключено
См. также: --psy-rd

вернуться к списку

Don't decide references on a per partition basis

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

В консоли: --no-mixed-refs
В MediaInfo: mixed_ref=<integer>
Значение по умолчанию: Отключено
См. также: --ref

вернуться к списку

Ignore chroma in motion estimation

Обычно, оценка движения производится, как для яркостного так и для цветоразностных сигналов. Данная опция позволяет отключить оценку движения сигнала цветности для небольшого увеличения скорости кодирования.

В консоли: --no-chroma-me
В MediaInfo: chroma_me=<integer>
Значение по умолчанию: Отключено

вернуться к списку

Disable adaptive spatial transform size

Запрещает умное использование преобразований 8x8 в I-кадре.

В консоли: --no-8x8dct
В MediaInfo: 8x8dct=<integer>
Значение по умолчанию: Отключено
См. также: --partitions

вернуться к списку

Trellis RD quantization

Выполняет треллис квантование для повышения эффективности сжатия. На всех решениях, кроме 0, скорость падает очень сильно.

Варианты:
0 - отключено
1 - только на макроблоках
2 - везде
Рекомендации: 2, но при условии совместной работы с psy-trellis, иначе происходит незначительное замыливание мелких деталей. Требует включенного CABAC.
Примечание: Вариант 1 - хороший компромисс между падением скорости и повышением эффективности.
В консоли: -t, --trellis <integer>
В MediaInfo: trellis=<integer>
Значение по умолчанию: Отключено

вернуться к списку

Disables early SKIP detection on P-frames

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

Рекомендации: Используйте (то есть отключайте) при кодировании в --crf
Примечание: На низких битрейтах даст небольшое улучшение качества, ценой сильного падения скорость кодирования. На высоких битрейтах, незначительно влияет как на качество, так и на скорость кодирования.
Включение этой опции отключит быстрый пропуск.
В консоли: --no-fast-pskip
В MediaInfo: fast_pskip=<integer>
Значение по умолчанию: Отключено

вернуться к списку

Disables coefficient thresholding on P-frames

Кодер пишет видеопотоку все анализируемые блоки DCT. В результате на следующий этап компрессии подаётся оптимизированный сигнал. Если эту трансформацию отключить, то можно выиграть в детализации при двухпроходном кодировании, поскольку у кодека за 2 прохода появляется возможность оценить весь видеоряд. 

Рекомендации: Используйте (то есть отключайте) при кодировании в --crf.
Примечание: Эта опция отключает данную функцию.
В консоли: --no-dct-decimate
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Noise reduction

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

Рекомендации: По умолчанию или (100..1000 для шумоподавления)
В консоли: --nr <integer>
В MediaInfo: nr=<integer>
Значение по умолчанию: Отключено

вернуться к списку

Set the size of the inter luma quantization deadzone

Установит inter (внешний) размер luma-квантизеру deadzone.

Диапазон: 0..32
В консоли
: --deadzone-inter <integer>
В MediaInfo: deadzone=<integer>
Значение по умолчанию: Отключено
См. также: --deadzone-intra

вернуться к списку

Set the size of the intra luma quantization deadzone

Установит intra (внутренний) размер luma-квантизеру deadzone.

Диапазон: 0..32
В консоли
: --deadzone-intra <integer>
В MediaInfo: deadzone=<integer>
Значение по умолчанию: Отключено

вернуться к списку

Preset quant matrices

Позволяет использовать заранее заданные матрицы квантования. В последних версиях кодека х264 категорически запрещено применять матрицы квантования, поскольку данная функция обеспечивается функцией адаптивного квантования --aq-mode.

В консоли: --cqm <string>
В MediaInfo: cqm=<integer>
Значение по умолчанию: Flat (отключено)
См. также: --cqmfile

вернуться к списку

Read custom quant matrices from a JM-compatible file

Читает матрицы квантования из JM-совместимого файла (игнорируются другие заданные --cqm параметры).

В консоли: --cqmfile <string>
В MediaInfo: Не отображается
Значение по умолчанию: Отключено
См. также: --cqm

вернуться к списку

Set all 4x4 quant matrices

Нет описания.

В консоли: --cqm4
В MediaInfo: Не отображается
Значение по умолчанию: Отключено
См. также: --cqm, --cqm-file, --cqm8, --cqm4i, --cqm4iy

вернуться к списку

Set all 8x8 quant matrices

Нет описания.

В консоли: --cqm8
В MediaInfo: Не отображается
Значение по умолчанию: Отключено
См. также: --cqm, --cqm-file, --cqm4, --cqm4i, --cqm4iy

вернуться к списку

Set both luma and chroma quant matrices

Нет описания.

В консоли: --cqm4i, --cqm4p, --cqm8i, --cqm8p
В MediaInfo: Не отображается
Значение по умолчанию: Отключено
См. также: --cqm, --cqm-file, --cqm4, --cqm4iy

вернуться к списку

Set individual quant matrices

Нет описания.

В консоли: --cqm4iy, --cqm4ic, --cqm4py, --cqm4pc
В MediaInfo: Не отображается
Значение по умолчанию: Отключено
См. также: --cqm, --cqm-file, --cqm4, --cqm4i

вернуться к списку


 

Specify crop overscan setting

Как отображать overscan.

Рекомендации: crop перед кодированием и show если выше устройство воспроизведения поддерживает это, если нет, то можно проигнорировать.
Допустимые значения:
undef - не задано.
show - заставляет отображать все изображение. Учитывается при кодировании.
crop - указывает, что изображение приспособлено для воспроизведения на устройствах с overscan. Не всегда учитывается.
В консоли: --overscan <string>
В MediaInfo: Не отображается
Значение по умолчанию: undef

вернуться к списку

Specify video format

Указывает тип входного видео.

Допустимые значения:
component
pal
ntsc
secam
mac
undef
Рекомендации: В зависимости от вашего видео. Только если необходимо.
В консоли: --videoformat <string>
В MediaInfo: Не отображается
Значение по умолчанию: undef

вернуться к списку

Specify full range samples setting

Указывает на принудительное использование полного спектра яркости(luma) и цветности(chroma). Если off, то будет использоваться только ограниченный диапазон.

Допустимые значения: on, off
Рекомендации
: Если ваше видео оцифровка аналогового, то установите этот параметр в off. В остальных случаях выставляйте on.
В консоли: --fullrange <string>
В MediaInfo: Не отображается
Значение по умолчанию: off

вернуться к списку

Specify color primaries

Задаем исходную цветовую модель для конвертирования ее в RGB.

Рекомендации: По умолчанию, разве что вы знаете какое было использовано во входном видео.
Доступные значения:
undef
bt709
bt470m
bt470bg
smpte170m
smpte240m
film
В консоли: --colorprim <string>
В MediaInfo: Не отображается
Значение по умолчанию: undef

вернуться к списку

Specify transfer characteristics

Устанавливает какую оптико-электронную передачу использовать.

Рекомендации: По умолчанию, разве что вы знаете какое было использовано во входном видео.
Примечание:
undef
bt709
bt470m
bt470bg
linear
log100
log316
smpte170m
smpte240m
В консоли: --transfer <string>
В MediaInfo: Не отображается
Значение по умолчанию: undef

вернуться к списку

Specify color matrix setting

Устанавливаем коэффициенты матриц, использующиеся при выводе яркости и цветности из RGB.

Рекомендации: По умолчанию, разве что вы знаете какое было использовано во входном видео.
Примечание:
undef
bt709
fcc
bt470bg
smpte170m
smpte240m
GBR
YCgCo
В консоли: --colormatrix <string>
В MediaInfo: Не отображается
Значение по умолчанию: undef

вернуться к списку

Specify chroma sample location

Устанавливает позицию образца цветовой насыщенности.

Рекомендации:
Если Вы кодируете из MPEG1 с правильным сабсемплингом 4:2:0 и без каких либо преобразований цветов, вы должны установить значение 1.
Если Вы кодируете из MPEG2 с правильным сабсемплингом 4:2:0 и без каких либо преобразований цветов, вы должны установить значение 0.
Если Вы кодируете из MPEG4 с правильным сабсемплингом 4:2:0 и без каких либо преобразований цветов, вы должны установить значение 0.
Во всех остальных случаях используйте значение по умолчанию.
Примечание: Диапазон: 0..5
В консоли: --chromaloc <integer>
В MediaInfo: Не отображается
Значение по умолчанию: 0

вернуться к списку

Signal HRD information

Задаем HDR информацию. Необходимо для Blu-ray, телевизионных потоках и в некоторых других специализированных областях.

Рекомендации: Не использовать, разве что вам нужна эта информация.
Допустимые значения:
none - не записывать HDR информацию
vbr - записывать HDR информацию
cbr - записывать HDR информацию и запаковывать видеопоток в битрейт, указанный в --bitrate. Только при кодировании в постоянный битрейт.
Примечание: Требует включенного --vbv-bufsize
В консоли: --nal-hrd <string>
В MediaInfo: Не отображается
Значение по умолчанию: none
См. также: --vbv-bufsize, --vbv-maxrate, --aud

вернуться к списку

Force pic_struct in Picture Timing SEI

Force sending pic_struct in Picture Timing SEI.

Примечание: Подразумевает использование --pulldown или --tff/--bff.
В консоли: --pic-struct
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Add 'left,top,right,bottom' to the bitstream-level cropping rectangle

Задаем прямоугольную обрезку на уровне видеопотока.

Рекомендации: Необходимо, если вы хотите что бы декодер обрезал видео при проигрывании, но сам видеопоток оставался оригинальным.
В консоли: --crop-rect <string>
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку


Specify output file

Устанавливает имя выходного файла.

Рекомендации: Не используйте кириллицу и пробелы.
Примечание: Можно задать просто имя выходного файла, к примеру: out.mkv. Тогда файл сохранится в домашнюю директорию. А можно задать полный путь, для того что бы готовый файл сохранился в определенную директорию. К примеру: C:\Movies\out.mkv.
В консоли: -o, --output <string>
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Specify output container format

Задаем контейнер для выходного файла.

Доступные контейнеры:
raw
mkv
flv
mp4
Примечание: При использовании значения по умолчанию, контейнер будет выбран на основе имени выходного файла. То есть, если вы задали имя вида: out.mkv, то контейнером в этом случае будет mkv и т. д.
В консоли: --muxer <string>
В MediaInfo: General -> Format: <string>
Значение по умолчанию: auto
См. также: --output

вернуться к списку

Specify input container format

Устанавливаем тип демуксера и декодера для x264, которые будут обрабатывать входное видео.

Доступные варианты:
auto
raw
y4m
avs
lavf
ffms
Примечание: Если у выходного видео переменный фремрейт, а должен быть постоянный, значит демуксер и декодер были выбраны не правильно. Если это происходит даже с параметром auto, то можно попробовать задать фремрейт с помощью --fps. Если вам нужен специальный переменный фремрейт, Вы можете задать его через --tcfile-in.
В консоли: --demuxer <string>
В MediaInfo: Не отображается
Значение по умолчанию: auto
См. также: --input, --muxer

вернуться к списку

Specify input file format

Задаем формат входного видео.

Примечание: Необходима поддержка lavf.
В консоли: --input-fmt <string>
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Specify input colorspace format for raw input

Задаем какое пространство цветов использовано в входном RAW видео.

Поддерживаемые цветовые пространства для RAW демуксеров:
i420
yv12
nv12
i422
i444
bgr
bgra
rgb
Примечание: Хоть в списке и есть RGB, но видео все равно будет сначала сконвертировано в YUV, используя bt601 матрицы, а потом уже скодированно.
В консоли: --input-csp <string>
В MediaInfo: Не отображается
Значение по умолчанию: i420
См. также: --input-res

вернуться к списку

Specify output colorspace

Задаем цветовое пространство для выходного видео.

Допустимые значения:
i420
i422
i444
rgb
В консоли: --output-csp <string>
В MediaInfo: Не отображается
Значение по умолчанию: i420
См. также: --input-csp

вернуться к списку

Specify input bit depth for raw input

Задаем битовую глубину для входного RAW видео.

В консоли: --input-depth <integer>
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Specify input resolution

Задаем разрешение входного видео.

Примечание: Необходимо, если x264 неверно определил разрешение или аспект.
Пример: --input-res 720x480
В консоли: --input-res <integer>x<integer>
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Filename for input index file

Задаем путь к файлу в который будет записываться информация о индексировании видео.

Рекомендации: Обычно не нужно.
Примечание: Опция срабатывает только при наличии --demuxer ffms.
В консоли: --index <string>
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Specify Sample Aspect Ratio

Записывает размер не квадратного пикселя в видео потоке, который будет использоваться при дальнейшем проигрывании. Это позволяет производить анаморфное кодирование. Человеческий глаз в большей степени чувствителен к вертикальному разрешению, чем к горизонтальному, когда кодируют MPEG2-поток из DVD, этим пользуются и, сохраняя вертикальное разрешение, интерполируют горизонтальное. В этом и суть анаморфного разрешения при кодировании видео: вместо того, чтобы тратить битрейт на горизонтальные пиксели, риппер устанавливает вертикальное разрешение 1:1, а на горизонтальном экономит за счёт анаморфной интерполяции. Человеческому глазу сложно с расстояния отличить "честные" 1024x576 от тех же 1024x576 интерполированных из 720x576. Если рип был сделан с DVD, то вместо того, чтобы делать масштабирование с потерей части информации по вертикали, AVC поток можно кодировать и хранить в контейнере в том разрешении, которое было на DVD, а в самом контейнере с фильмом устанавливается флаг, который точно указывает в каких пропорциях необходимо конкретный фильм воспроизводить. Например, вы хотите создать анаморфный клип с разрешением по вертикали 480. Аспект разрешения у фильма 16:9. Тогда 480х16/9=853.44. В таком случае получим: --sar 853:720.

Примечание: В данном примере не учтены данные Crop. Например, обрезаем слева и справа по 4 пикселя, сверху и снизу по 2. Тогда вместо коэффициента (16/9) получим (712/476)/(720/480)*(16/9).
В консоли: --sar <integer>
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Specify framerate

Эта опция задает количество кадров в секунду (фреймрейт) для кодируемого видео (если автоматически не определилась, установите сами).

Примечание: Стандартные фреймрейты: 23.976(тоже что и 24000/1001), 24, 25, 29.97(тоже что и 30000/1001), 30, 50.97, 60.
В консоли: --fps <float>
В MediaInfo: Не отображается
Значение по умолчанию: autodetected

вернуться к списку

First frame to encode

Задаем номер кадра с которого начнется кодирование.

В консоли: --seek <integer>
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Maximum number of frames to encode

Задаем количество кадров, которые будут скодированы. Начиная с первого, или с заданного параметром --seek.

В консоли: --frames <integer>
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Specify level

Устанавливает уровень выходного потока (определено стандартом H.264).

Допустимые уровни: 1, 1b, 1.1, 1.2, 1.3, 2, 2.1, 2.2, 3, 3.1, 3.2, 4, 4.1, 4.2, 5, 5.1.
Примечание: Если вы самостоятельно не зададите --level, то он будет определен автоматически. Но так как автоопределение не идеально, то лучше всегда самостоятельно задавать нужный вам уровень. Заметьте, что некоторые параметры будут строго лимитированы выбранным вами уровнем. Например количество референсных кадров (--ref). Это очень важный параметр для аппаратной совместимости. Уровень 4.1 - это максимум, который поддерживается такими устройствами, как Xbox 360, Playstation 3, "железными" Blu-ray плеерами и аппаратными декодерами на ПК. В то же время, мобильные устройства редко поддерживают уровень выше 3.1. Что бы точно определить нужный вам уровень - можете воспользоваться этой таблицей.
В консоли: --level <string>
В MediaInfo: Format profile :=<string>
Значение по умолчанию: -1 (auto)
См. также: --ref

вернуться к списку

Enable compatibility hacks for Blu-ray support

Включаем совместимость с Blu-ray.

В консоли: --bluray-compat
В MediaInfo: bluray_compat=<integer>
Значение по умолчанию: Отключено

вернуться к списку

Print stats for each frame

Включает отображение статистики о каждом кадре.

В консоли: -v, --verbose
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Don't show the progress indicator while encoding

Не показывать прогресс кодирования.

В консоли: --no-progress
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Quiet Mode

Включаем "тихий" режим кодирования.

Примечание: Отключает вывод информации в консоль.
В консоли: --quiet
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Specify the maximum level of logging

Задаем уровень детальности лога кодирования.

Допустимые значения:
none
error
warning
info
debug
В консоли: --log-level <string>
В MediaInfo: Не отображается
Значение по умолчанию: info

вернуться к списку

Enable PSNR computation

Включаем расчёт PSNR.

В консоли: --psnr
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Enable SSIM computation

Включаем расчёт SSIM.

В консоли: --ssim
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Force a specific number of threads

Задаем количество потоков кодирования.

Рекомендации: Для увеличения скорости кодирования - это число должно быть равно числу виртуальных или физических ядер процессора; т.е. нужно устанавливать --threads 2 на одноядерном процессоре с hyper-threading (HT), или на двух ядерном процессоре. На данный момент, максимальное количество потоков ограничено 128-и.
Примечание: Это значительно уменьшит скорость кодирования, если число потоков выбрано больше, чем количество имеющихся ядер процессора. В некоторых случаях, HT, также может уменьшить скорость кодирования. Наравне с увеличением скорости, использование нескольких потоков может незначительно уменьшить качество кодирования. Так как, кадр разбивается на слайсы, которые кодируются независимо и поэтому могут не иметь референсных связей.
В консоли: --threads <integer>
В MediaInfo: threads=<integer>
Значение по умолчанию: auto
См. также: --thread-input, --sliced-threads

вернуться к списку

Force a specific number of lookahead threads

Разделяем каждый вызов lookahead-кадра на несколько потоков. Слегка влияет на качество, но не всегда в худшую сторону.

Примечание: Помогает избежать проблем при большом количестве потоков и кадров. В большинстве случаев - позволяет сильно прибавить к производительности на многоядерных процессорах. К примеру: при кодировании с --preset veryfast на 12-и ядрах процессора Intel i7 скорость кодирования на 100% выше. Также дает возможность кодировать в реальном времени 1080p30 видео.
В консоли: --lookahead-threads <integer>
В MediaInfo: Не отображается
Значение по умолчанию: значение lookahead threads равно 1/6 от количества потоков. С включенным --sliced-threads равно количеству потоков.
См. также: --threads, --sliced-threads

вернуться к списку

Low-latency but lower-efficiency threading

Активируем sliced-threads. Этот метод многопоточного кодирования имеет низкий уровень сжатия и дает большое количество ошибок. Но дает большой прирост к скорости кодирования, что применимо при потоковом вещании. По этому он используется в --tune zerolatency.

Рекомендации: Только для потокового вещания.
Примечание: На мощных системах может позволить кодирование в реальном времени, то есть скорость кодирования будет выше, чем скорость воспроизведения самого кодируемого видео.
В консоли: --sliced-threads
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Run Avisynth in its own thread

Запускает Avisynth в отдельном потоке.

Рекомендации: Включайте, если количество ядер у вашего процессора больше 1-го.
Примечание
: Декодирует входное видео в отдельном потоке.
В консоли: --thread-input
В MediaInfo: Не отображается
Значение по умолчанию: auto

вернуться к списку

Number of buffer frames for threaded lookahead

Задаем количество кадров, которые будут использоваться как буфер для lookahead.

Рекомендации: Установка значения в 0 отключит эту опцию. Это даст немного большее качество с меньшим количеством ошибок, на отрицательно скажется на производительности.
Примечание: Автоматически отключается при втором и последующих, проходах, или когда включен sliced-threads. Добавляет +1 к количеству --bframes. Максимальное значение: 250.
В консоли: --sync-lookahead <integer>
В MediaInfo: Не отображается
Значение по умолчанию: auto

вернуться к списку

Slightly improve quality of SMP, at the cost of repeatability

Немного увеличивает качество при многопоточном кодировании, ценой использования недетерминированного кодирования. Используются многопоточные векторы движения и полностью используется буфер lookahead.

В консоли: --non-deterministic
В MediaInfo: Не отображается
Значение по умолчанию: Отключено
См. также: --threads

вернуться к списку

Override CPU detection

Принудительно включить использование оптимизаций процессора.

Примечание: Может помочь в поиске различных проблем.
В консоли: --asm
В MediaInfo: Не отображается
Значение по умолчанию: auto

вернуться к списку

Disable all CPU optimizations

Кодер использует продвинутые SIMD (Single Instruction, Multiple Data) инструкции, включив которые можно получить немалую прибавку к скорости.

Примечание: Отключение некоторых оптимизаций может помочь в поиске различных проблем.
В консоли: --no-asm
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Show MB types overlayed on the encoded video

Отладочная опция. Используется для понимания того, что происходит в кадре.

В консоли: --visualize
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Save reconstructed frames

Помещает дамп всех реконструированных YUV каров в определенный файл.

Примечание: Полезно только для поиска проблем у енкодера.
В консоли: --dump-yuv
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Set SPS and PPS id numbers

Устанавливает SPS (последовательный параметр установки) и PPS (картинный параметр установки) идентификационные номера.

В консоли: --sps-id <integer>
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Use access unit delimiters

Используется для совместимости, когда AVC помещают в транспортные потоки (включая MPEG-2 TS).

В консоли: --aud
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Force constant framerate timestamp generation

Если используется FFMS2 или lavf демуксеры, таймкод копируется из входного файла в выходной. Эта опция запрещает копирование и заставляет энкодер самостоятельно генерировать собственный таймкод.

Рекомендации: Желательно использовать в паре с --fps.
В консоли: --force-cfr
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Force timestamp generation with timecode file

Задаем файл с таймкодом, который будет использоваться для правильной интерпретации фреймрейта входного видео.

В консоли: --tcfile-in <string>
В MediaInfo: Не отображается
Значение по умолчанию: Отключено
См. также: --tcfile-out, --force-cfr, --fps

вернуться к списку

Output timecode v2 file from input timestamps

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

Рекомендации: Используйте если вы кодируете с переменным фремрейтом, и хотите сохранить полученный такмкод.
В консоли: --tcfile-out <string>
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Specify timebase numerator and denominator

Позволяет задавать пользовательский таймкод.

Примечание: Конфликтует с режимом --force-cfr.
В консоли: --timebase <integer>
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку

Eliminate initial delay with container DTS hack

Хак, используемый для FLV и MP4 контейнеров, позволяющий обойти баги декодеров, которые поддерживают только положительный/последовательный DTS.

Примечание: DTS (Decode TimeStamp). Каждый кадр имеет свой DTS, который содержит информацию о позиции кадра во время кодирования. В отличии от порядка отображения кадров, который называется PTS (Presentation TimeStamp). Порядок кадров содержащихся в потоке отличается от порядка отображение кадров при воспроизведения. Это связано с тем, что x264 применяет такие техники сжатия как B-кадры, что означает, что кадру необходима информация о кадре, который будет отображен позже.
В консоли: --dts-compress
В MediaInfo: Не отображается
Значение по умолчанию: Отключено

вернуться к списку


Примечание по типам

integer - целочисленные значения.
float - значения с плавающей точкой.
string - строковые значения.

Обновлено 18.09.2012 17:47