x264 Video Codec rev. 1563 x86/x64
24.04.2010 04:57

x264 (x86/x64) - это свободная библиотека программных компонентов для кодирования видеопотоков H.264/MPEG-4 AVC.


x264 (x86/x64) is a free library for encoding H.264/MPEG-4 AVC video streams.


Изменения/Changes (1543-1563):


  • Add CP128/M128 macros using SSE;
  • Fix a ton of pessimization caused by aliasing in cache_save and cache_load;
  • Prefetch MB data in cache_load. Dramatically reduces L1 cache misses. ~10% faster cache_load. ;
  • Move deblocking/hpel into sliced threads. Instead of doing both as a separate pass, do them during the main encode. This requires disabling deblocking between slices (disable_deblock_idc == 2). Overall performance gain is about 11% on --preset superfast with sliced threads. Doesn't reduce the amount of actual computation done: only better parallelizes it.;
  • Fix four minor bugs found by Clang;
  • MMX code for predictor rounding/clipping. Faster predictor checking at subme < 3.;
  • Fix issues with extremely large timebases. With timebase denominators >= 2^30 , x264 would silently overflow and cause odd issues. Now x264 will explicitly fail with timebase denominators >= 2^31 and work with timebase denominators 2^31 > x >= 2^30.;
  • Faster chroma CBP handling;
  • Faster deblock reference frame checks. Use a lookup table to simplify logic.;
  • Fix build scripts to work with non-GNU tools;
  • Add mv0 special case in pskip chroma MC. Significantly faster pskip MC.;
  • Print intra chroma pred modes in stats;
  • Remove reordering restrictions from weightp. Apparently the spec does allow two consecutive copies of the same frame in the reference list. This involves an incredibly ugly hack to wrap around the frame number. Very slight compression improvement.;
  • Don't check mv0 twice. One less SAD in motion estimation. Also rename bmv -> pmv; more accurate naming.;
  • Fix printing of bitrate when timestamps aren't available. Doesn't affect x264cli, but was broken in some other apps in CFR mode.;
  • Fix checkasm's generation of deblock inputs (regression in r1517);
  • Faster fullpel predictor checking. Also shave a few instructions off dia/hex motion estimation loops.;
  • Fix 10l in cache_load changes. Broke constrained intra pred, probably not anything else.;
  • fix ffms demuxer to support input timebase values > 2^31;
  • Move deblocking code to a separate file. Should clean up frame.c a bit.;
  • Move getopt.c to x264cli sources from libx264. Only affects builds on systems without getopt.c.



 Encoder features :

  • Multi-references
  • Intra: all macroblock types (16x16, 8x8, and 4x4 with all predictions)
  • Inter P: all partitions (from 16x16 down to 4x4)
  • Inter B: partitions from 16x16 down to 8x8 (including skip/direct)
  • Ratecontrol: constant quantizer, single or multipass ABR, optional VBV
  • Scene cut detection
  • Adaptive B-frame placement
  • B-frames as references / arbitrary frame order
  • 8x8 and 4x4 adaptive spatial transform
  • Lossless mode
  • Custom quantization matrices
  • Parallel encoding of multiple slices

Advanced settings :

  • Enabling Cabac: approximately 10% bitrate reduction without loss in quality, but is slow.
  • Enabling De-blocking Filter: smooths out visible blocks during an encode (rather than by using post processing to smooth out blocks while decoding). Is a good idea to enable for low bitrate encodes.  

Возможности кодека x264:

  • Контекстнозависимое Адаптивное Бинарное Арифметическое кодирование (CABAC) и Контекстнозависимое Адаптивное Кодирование с Переменной Длиной Кодового Слова (CAVLC)
  • Поддержка нескольких ссылочных кадров
  • Все intra типы макроблоков (16x16, 8x8 и 4x4 — 8x8 это часть AVC HP)
  • Все inter типы макроблоков P фрейма
  • B-Inter типы макроблоков от 16x16 до 8x8
  • Оптимизация отношения вносимых искажений к скорости потока
  • Несколько режимов работы управления скоростью потока: постоянный квантователь, постоянное качество, одно- или многопроходный ABR с режимом VBV
  • Обнаружение смены сцены
  • Адаптивная расстановка B-кадров, с возможностью использования B кадров как ссылочных кадров
  • 8x8 и 4x4 адаптивное пространственное преобразование (High Profile)
  • Режим сжатия без потерь (отклоненный High Profile 4:4:4)
  • Произвольные матрицы квантования (High Profile)
  • Параллельное кодирование на нескольких CPU
  • Поддержка компрессии кадров с чересстрочной разверткой (неадаптивный MBAFF — все макроблоки кодируются в режиме чересстрочных)

Доступные настройки кодека для профессионалов:

  • Кодирование Cabac: приблизительно 10%-ое снижение битрэйта без потери качества.
  • Фильтр деблокирования: показывает видимые блоки во время кодирования (гораздо лучший метод по сравнению с пост-процессингом). Отличный метод для кодирования с использованием низкого битрэйта. 


Cross-MinGW with GCC 4.5.0 x86_32, fprofiled / Cross-MinGW with GCC 4.5.0 x86_64, fprofiled)


Скачать / Download:


Unpatched, fprofiled, GCC 4.5.1: (svn rev. 158674, Pre-Release, 2010.04.23); (avs input, lavf input, ffms input, mp4 output.); (ffmpeg svn.22957, ffms2 svn.310, pthreads cvs.2.9.0, gpac cvs.20100423, all static).:
icon x264 Video Codec rev. 1563 x86 (3.15 Мбайт 2010-04-24 05:26:12) (generic)
icon x264 Video Codec rev. 1563 x86 -march=amdfam10 (3.15 Мбайт 2010-04-24 05:27:03) (-march=amdfam10 (Athlon X2 7x50, Phenom X3/X4, Phenom II, Athlon II))
icon x264 Video Codec rev. 1563 x86 -march=core2 (3.13 Мбайт 2010-04-24 05:27:49) (-march=core2)

icon x264 Video Codec rev. 1563 x64 (3.24 Мбайт 2010-04-24 05:28:41) (generic)

icon x264 Video Codec rev. 1563 x64 -march=amdfam10 (3.23 Мбайт 2010-04-24 05:29:30) (-march=amdfam10 (Athlon X2 7x50, Phenom X3/X4, Phenom II, Athlon II))
icon x264 Video Codec rev. 1563 x64 -march=core2 (3.21 Мбайт 2010-04-24 05:30:10) (-march=core2)
Обновлено 24.04.2010 05:32

Новые Файлы

XvidVideo.RU © 2008 - 2012