¿Qué es H.264?
H.264 es un estándar de la industria para la compresión de video, el proceso de conversión de video digital a un formato que ocupa menos capacidad cuando se almacena o transmite. La compresión de video (o codificación de video) es una tecnología esencial para aplicaciones tales como televisión digital, DVD-Video, TV móvil, videoconferencia y transmisión de video por Internet. La estandarización de la compresión de video hace posible que productos de diferentes fabricantes (por ejemplo, codificadores, decodificadores y medios de almacenamiento) interactúen. Un codificador convierte el vídeo en un formato comprimido y un decodificador convierte el vídeo comprimido nuevamente en un formato sin comprimir.
La Recomendación H.264: Codificación avanzada de video es un documento publicado por los organismos internacionales de normalización UIT-T (Unión Internacional de Telecomunicaciones) e ISO / IEC (Organización Internacional de Normalización / Comisión Electrotécnica Internacional). Define un formato (sintaxis) para video comprimido y un método para decodificar esta sintaxis para producir una secuencia de video visualizable. El documento estándar no especifica realmente cómo codificar (comprimir) el video digital (esto se deja al fabricante de un codificador de video), pero en la práctica es probable que el codificador refleje los pasos del proceso de decodificación. La Figura 1 muestra los procesos de codificación y decodificación y resalta las partes que están cubiertas por el estándar H.264.

¿Cómo funciona un codec H.264?
Un codificador de video H.264 realiza procesos de predicción, transformación y codificación (ver Figura 1) para producir un flujo de bits H.264 comprimido. Un decodificador de video H.264 realiza los procesos complementarios de decodificación, transformación inversa y reconstrucción para producir una secuencia de video decodificada.
Procesos de encoder
Transformación y cuantización.
Un bloque de muestras residuales se transforma utilizando una transformada entera de 4x4 u 8x8 , una forma aproximada de la Transformada de Coseno Discreto ( DCT ). La transformación genera un conjunto de coeficientes , cada uno de los cuales es un valor de ponderación para un patrón base estándar. Cuando se combinan, los patrones de base ponderados recrean el bloque de muestras residuales. La Figura 4 muestra cómo el DCT inverso crea un bloque de imagen al ponderar cada patrón base de acuerdo con un valor de coeficiente y combinando los patrones de base ponderados.
La salida de la transformación, un bloque de coeficientes de transformación, se cuantifica , es decir, cada coeficiente se divide por un valor entero. La cuantización reduce la precisión de los coeficientes de transformación de acuerdo con un parámetro de cuantificación (QP). Típicamente, el resultado es un bloque en el que la mayoría o todos los coeficientes son cero, con unos pocos coeficientes distintos de cero. Establecer QP en un valor alto significa que más coeficientes se establecen en cero, lo que resulta en una compresión alta a expensas de una calidad de imagen decodificada deficiente. Establecer QP en un valor bajo significa que quedan más coeficientes distintos de cero después de la cuantificación, lo que resulta en una mejor calidad de imagen decodificada pero una compresión más baja.
Codificación bitstream
El proceso de codificación de video produce una serie de valores que deben codificarse para formar el flujo de bits comprimido. Estos valores incluyen:
- coeficientes de transformación cuantificados
- Información para permitir al decodificador recrear la predicción.
- información sobre la estructura de los datos comprimidos y las herramientas de compresión utilizadas durante la codificación
- Información sobre la secuencia completa de videos.
Estos valores y parámetros ( elementos de sintaxis ) se convierten en códigos binarios utilizando codificación de longitud variable y / o codificación aritmética . Cada uno de estos métodos de codificación produce una representación binaria eficiente y compacta de la información. El flujo de bits codificado se puede almacenar y / o transmitir.
Procesos del decodificador
Decodificación bitstream
Un decodificador de video recibe el flujo de bits H.264 comprimido, decodifica cada uno de los elementos de sintaxis y extrae la información descrita anteriormente (coeficientes de transformación cuantificados, información de predicción, etc.). Esta información se usa para revertir el proceso de codificación y recrear una secuencia de imágenes de video.
Cambio de escala y transformación inversa
Los coeficientes de transformación cuantificados son reescalados . Cada coeficiente se multiplica por un valor entero para restaurar su escala original2. Una transformación inversa combina los patrones de base estándar, estimulados por los coeficientes redimensionados, para recrear cada bloque de datos residuales. Estos bloques se combinan para formar un macrobloque residual.
Reconstrucción
Para cada macrobloque, el decodificador forma una predicción idéntica a la creada por el codificador. El decodificador agrega la predicción al residuo decodificado para reconstruir un macrobloque decodificado que luego puede mostrarse como parte de un cuadro de video.
H.264 en la práctica
Rendimiento
Quizás la mayor ventaja de H.264 sobre los estándares anteriores es su rendimiento de compresión. En comparación con estándares como MPEG-2 y MPEG-4 Visual, H.264 puede ofrecer:
- Mejor calidad de imagen en la misma tasa de bits comprimida, o
- Una tasa de bits comprimida más baja para la misma calidad de imagen.
Por ejemplo, un DVD de una sola capa puede almacenar una película de aproximadamente 2 horas de duración en formato MPEG-2. Utilizando H. 264, debería ser posible almacenar 4 horas o más de video con calidad de película en el mismo disco (es decir, menor tasa de bits para la misma calidad). Alternativamente, el formato de compresión H.264 puede ofrecer una mejor calidad a la misma tasa de bits en comparación con MPEG-2 y MPEG-4 Visual (Figura 5).
El rendimiento mejorado de la compresión de H.264 tiene el precio de un mayor costo computacional. H. 264 es más sofisticado que los métodos de compresión anteriores y esto significa que puede tomar una capacidad de procesamiento significativamente mayor para comprimir y descomprimir el video H.264.
Aplicaciones
Además de su rendimiento de compresión mejorado, H.264 ofrece una mayor flexibilidad en términos de opciones de compresión y soporte de transmisión. Un codificador H.264 puede seleccionar entre una amplia variedad de herramientas de compresión, lo que lo hace adecuado para aplicaciones que van desde la transmisión móvil de baja tasa de bits y bajo retardo a través de la televisión de consumo de alta definición hasta la producción de televisión profesional. El estándar proporciona soporte integrado para la transmisión o el almacenamiento, incluido un formato comprimido empaquetado y características que ayudan a minimizar el efecto de los errores de transmisión.
4 / AVC se está adoptando para una creciente gama de aplicaciones, que incluyen:
- DVD de alta definición (formatos HD-DVD y Blu-Ray)
- Transmisión de televisión de alta definición en Europa
- Productos de Apple que incluyen descargas de video de iTunes, iPod video y MacOS
- Aplicaciones de video DATO de la OTAN y de los Estados Unidos
- Transmisión de televisión móvil
- Video por internet
- Videoconferencia
Comentarios