x264
x264 es una librería libre para codificar cadenas de video [H.264/MPEG-4 AVC] . El código está escrito desde cero por Loren Merritt, Dark Shikari, Laurent Aimar, Eric Petit, Min Chen, Justin Clay, Måns Rullgård, Radek Czyz, Alex Izvorski, Alex Wright, y Christian Heine. Fue liberado bajo la licencia pública GPL, pero esta licencia puede ser incompatible con las licencias de patentes de MPEG-LA en las jurisdicciones que reconocen patentes de software.
x264 está disponible como un codec del tipo Video for Windows y también como una interfaz de línea de comandos. Esta última siempre está al día, mientras que la versión "Video For Windows", ha sido descontinuada a partir de la r532, y requiere hacks para manejar los B frames, (una limitación del formato AVI fuerza el uso de packed bitstream). Se han hecho muchas interfaces gráficas de la versión de línea de comandos, incluyendo MeGUI, AutoAC y una GUI.NET (1.1) basada en x264CLI.
x264 ha formado una comunidad enorme de usuarios, sobre todo en Doom9, donde tienen lugar las discusiones para hacer mejoras al desarrollo.
Capacidades
A la fecha de abril del 2008, es uno de los codificadores AVC liberados al público más avanzados. También es uno de los pocos de tipo "High Profile AVC" que se han puesto a disposición del público. Soporta:
- "Context-based Adaptive Binary Arithmetic Coding" (CABAC), y "Context-based Adaptive Variable Length Coding" (CAVLC)
- "Multiple reference frames"
- "All intra-predicted macroblock types" (16x16, 8x8 y 4x4 -- 8x8 es parte de AVC High Profile)
- "All P-frame inter-predicted macroblock types"
- "B-Inter-predicted macroblock types from 16x16 down to 8x8"
- "Rate Distortion Optimization"
- "Multiple ratecontrol modes: constant quantizer, constant quality, single or multipass ABR with the option of VBV"
- Detección de cambios de escena
- "Adaptive B-frame placement, with the option of keeping B-frames as references / arbitrary frame order" (orden adaptativo de fotogramas B, con la opción para tenerlas de referencia o de forma arbitraria)
- "8x8 and 4x4 adaptive spatial transform" (trasformación espacial adaptativa de 4x4 y 8x8) en el High Profile (modo high).
- "Lossless mode" (modo sin pérdida de calidad) del tipo "High 4:4:4 Profile"
- Custom quantization matrices (High Profile)
- "Parallel encoding of multiple slices" (compresión paralela de múltiples trozos)
- Custom quantization matrices (High Profile)
- "Adaptive quantization", una nueva caracteristica que permite utilizar diferentes valores de cuantización para diferentes partes del cuadro. Esto permite a alocación mas efectiva de bits en areas mas complejas reduciendo los efectos de compresión.
De momento las versiones base del codec no son compatibles con los estandares Bluray/HD DVD debido a la falta de ciertos metadatos necesarios (Telecine, Sequence End Code information, etc.), aunque hay varias personas que han creado sus propias compilaciones / parches con las modificaciones necesarias para lograr la compatibilidad.
Otras funciones importante en la que los autores estan ya trabajando son modelos de codificación optimizados para retener grano, ya que muchas veces este es eliminado por x264 creando una imagen plana y con pocos detalles, Dark Shikari es el programador encargado del tema, y en la actualidad presenta dos opciones, "Film Grain Optimization" el cual en lugar de utilizar "Sum of Squared Differences" para la diferenciación de detalles utiliza "Noise and Sum of Squared Differences" es decir toma en cuenta la información del grano en la imagen respecto a las anteriores recompensando los modos que tienen una cantidad similar de ruido y se aproximan a la imagen fuente razonablemente bien[1]; El otro modelo es el "Psy RDO" utiliza el hecho de que el ojo humano no solo quiere una imagen similar, sino tambien una imagen con complejidad similar, por lo que el preferimos ver una imagen detallada aunque este ligeramente distorcionada que una imagen plana sin detalle alguno[2]. En corto, ambos metodos mas que retener el ruido original crean uno "similar" por lo menos para nuestros ojos.
Comparación con otros codecs
x264 ha ganado premios en las siguientes comparaciones de codecs:
- "Doom9's 2005 codec shoot-out" [1]
- "Second annual MSU MPEG-4 AVC/ H.264 codecs comparison" [2]
- "MSU Subjective Comparison of Modern Video Codecs" [3]
Referencias
- ↑ «x264: Film Grain Optimization». Consultado el 9 de junio de 2008.
- ↑ «x264: Psy RDO». Consultado el 9 de junio de 2008.
Proyectos usando x264
- Avidemux
- ffdshow
- ffmpeg
- Gordian Knot
- Handbrake: a multi-platform, multithreaded DVD to MPEG-4 ripper/converter.
- MeGUI
- MEncoder
- pspVideo9
- RealAnime
- StaxRip
- TCVP
- VLC Media Player
- MPlayer
- VirtualDub
- Connecta 2000: software de videoconferencia peer-to-peer
Véase también
Enlaces externos
- Página oficial x264 en inglés.
- Foro sobre codecs MPEG-4 AVC (x264, NeroDigital AVC, etc.) en inglés.
- GUI ffmpegX para Mac OSX incluyendo soporte para x264 en inglés.
- Manual para la reproducción óptima de x264 en español.
- Comparaciones de x264 con otros codecs:
- Doom9's 2005 codec shoot-out en inglés.
- Second annual MSU MPEG-4 AVC/ H.264 codecs comparison en inglés.
- MSU Subjective Comparison of Modern Video Codecs en inglés.
- Compresión de video con x264:
- Manual de configuración del codec x264 VfW
- [4] Tutorial de compresión de video con x264 en español.