Aventura Technologies Experience the Power of H.264/AVC
  [ English Español ]
 
 
CHAT EN VIVO:
VER PRODUCTOS:

Mfg. Reps Wanted

Surveillance GSA
BUSCAR:

¿Porqué  el alboroto sobre el H.264?

¡Es la velocidad!

H.264 esta obteniendo tanta atención porque puede codificar video con aproximadamente 3 veces menos bits que los codificadores MPEG-2 comparables.

Como el H.264 es el doble de eficiente que la codificación MPEG-4 Parte 2 (video natural), ha sido recientemente bienvenido dentro de estándar MPEG-4 como Parte 10 – Codificación de Video Avanzado. Muchos distribuidores de codificadores establecidos se están pasando directamente al h.264 y pasando por encima del paso intermedio del MPEG-4 Parte 2.

Objetivos y Enfoque del H.264

La Unión Internacional de Telecomunicaciones (ITU) comenzó el esfuerzo del h.26L (a largo plazo) en 1998 como una continuación del trabajo de los estándares MPEG-2 y h.263. El objetivo predominante era lograr una reducción de factor de 2 en la tasa de bits comparado a cualquier estándar rival.

Recuerde que el MPEG-2 fue optimizado con especial enfoque en los servicios de televisión digital Estándar y de Alta Definición, los cuales son transmitidos a través de redes distribuidoras circuito-conmutadas, a enlaces de satélite dedicados, por infraestructura de cable o por instalaciones terrestres. La habilidad del MPEG2 de acomodación se resalta a medida que el rango de medios de transmisión se expande para incluir redes móviles heterogéneas, redes IP conmutadas de paquete y formatos de almacenamiento múltiples y en la medida que crecen los servicios para incluir la mensajería mutilmedia, seguridad, el mayor uso del HDTV y otros. Además un segundo objetivo del h.264 era acomodar una mayor variedad de requerimientos de ancho de banda, formatos de imágenes y ambientes de red poco amigables que incluían alta fluctuación, perdida de paquetes e instabilidad del ancho de banda.

El enfoque del h.264 es estrictamente una extensión de evolución del enfoque de codificación basado en bloques, tan bien establecido en los estándares MPEG e ITU. Los pasos claves incluyen: :

• Uso de estimación de movimiento para soportar predicción inter-imágenes para eliminar redundancias temporales
• Uso de datos de correlación espacial para proporcionar predicción intra-imagen.
• Construcción de residuos como la diferencia entre las imágenes predichas y las imágenes fuente.
• Uso de una transformación espacial discreta y filtrado para eliminar redundancias espaciales en los residuos.
• Codificación de entropía de los coeficientes residuales transformados y de los datos soportantes como vectores de movimiento.

Mayores Características del  H.264


Intra-Predicción  y Estimación de Movimiento Mejorada

Primero recuerde las limitaciones de la estimación de movimiento del MPEG-2, el cual busca en las imágenes de referencia para un conjunto de píxeles de 16x16 muy semejantes al macro bloque actual. El conjunto resultante de píxeles semejantes debe estar completamente dentro de la imagen de referencia. En contraste el, H.264 proporciona::

Estimación de movimiento de grano fino. La búsqueda temporal busca bloques sub-macro semejantes de tamaños variables de hasta 4x4, y encuentra el vector de movimiento a resolución _ pel. Las búsquedas pueden también identificar vectores de movimiento asociados con bloques sub-macro semejantes de 4x8, 8x4, 8x8, 8x16, 16x8, o el completo 16x16. [En el futuro, la resolución más fina de 1/8 pel estará soportada]

Marcos de referencia múltiples. El H.264 proporciona flexibilidad adicional paralos marcos para apuntar a más que a marcos– los cuales pueden ser cualquier combinación de marcos pasados o futuros. Esta capacidad proporciona oportunidades para un inter-predicción más precisa sino también a un robustez mejorada a los datos de imágenes perdidas.

Búsqueda movimiento sin restricción. La búsqueda de movimiento permite marcos de referencia que pueden estar parcialmente fuera de la imagen; los datos ausentes puede predecirse espacialmente de los datos fronterizos. Los usuarios pueden escoger deshabilitar esta función al escoger búsqueda de Movimiento Restringido.

Preedición de vector de movimiento. Donde exista correlación temporal suficiente se pueden predecir con precisión los vectores de movimiento y solo transmitir explícitamente sus residuos en el flujo de bits.

Tales técnicas no solo proporcionan una inter-predicción más precisa, sino también ayudan a particionar y escalonar el flujo de bits, dándole prioridad a los datos que son más globalmente aplicables. Además, no mejoran la compresión sino también la resistencia a los errores e instabilidades de red.

Predicción Intra Espacial y Transformación Mejorada

Como la "intra-predicción" se ocupa de una sola imagen a la vez, depende de las correlaciones espaciales en lugar de correlaciones temporales. A media que el algoritmo trabaja a través de los macro-bloques de la imagen en orden de escaneo de trama, los primeros resultados se pueden utilizar para predecir los cálculos futuros. Luego necesitamos solo se transmiten los residuos como refinamientos a los resultados predecidos.

El H.264 realiza una intra-predicción en el dominio espacial (antes de la transformación y parte clave del enfoque). Hasta para una intra-imagen, cada bloque de datos se predice de sus vecinos antes de ser transformado y se generan coeficientes para ser incluidos en el flujo de bits.

Intra-predicción tosca versus fina. La intra-predicción puede realizarse en bloques de 4x4 o en macro-bloques de 16x16. El ultimo es más eficiente para las regiones uniformes de la imagen.

Intra-Modos Dependientes de la Dirección. Al hacer intra-predicción en el dominio espacial (en lugar que en el dominio de transformación), el h.264 puede usar predicción dependiente de la dirección y además puede enfocarse en los vecinos más altamente correlacionados. Para codificación intra 16x16 e intra 4 x 4, existen modos direccionales 9 y 4, respectivamente.

Transformación 4x4 de datos residuales. Para perfiles inicialmente soportados, la transformación de datos residuales se realiza siempre para bloques de datos de 4x4 y coeficientes transmitidos en esta base de granos finos.

Tamaños de bloque variable para transformación espacial*. Los perfiles futuros permitirán la transformación de bloques de tamaño variable (4x8, 8x8, etc.) con el mismo nivel de flexibilidad de bloques de estimación de movimiento. Esto proporciona mayor flexibilidad y mayor reducción de la tasa de bits.

Transformaciones de enteros. La eficiencia en ambos computación y tasa de bits se logra al implementar la Transformación de Coseno Discreta (DCT, por sus siglas en ingles) tradicional como una transformación de enteros que no requiere multiplicaciones, excepto de una sola normalización. También se puede invertir de manera exacta sin incompatibilidad.

Filtro de Desbloque. Para eliminar la estructura fina de bloques que puedan agravarse por bloques de transformación más pequeños, un filtro de desbloque contexto-sensible suaviza los bordes internos. La fuerza del filtro depende de los modos de preedición y la relación entre los bloques vecinos. Además al aumentar la relación de señal - ruido (S/N, por sus siglas en ingles), esta técnica mejora significativamente la calidad subjetiva de la imagen para un S/N dado.


Algoritmos para codificación Mejorados  

Dos métodos alternativos mejoran la eficiencia del proceso de codificación de entropía al seleccionar códigos de longitud variable dependiendo del contexto de los datos que están siendo codificados.

La Codificación Contexto-Adaptativa de Longitud Variable (CAVLC, por sus siglas en ingles) utiliza múltiples tablas de palabras clave de longitud variable para codificar coeficientes de transformación, lo que consume la gran mayoría del ancho de banda. Basados en estadísticas a priori de datos ya procesados, se escoge la mejor tabla de manera adaptativa. Para datos no coeficientes, se utiliza un esquema más simple que depende sole en una sola tabla.

La Codificación Aritmética Binaria Contexto-Adaptativa (CABAC* por sus siglas en ingles) proporciona un esquema de codificación extremadamente eficiente cuando se conoce que ciertos símbolos son más probables que otros. Tales símbolos dominantes pueden ser codificados con relaciones de bits/símbolos extremadamente pequeños. El método CABAC continuamente actualiza las estadísticas de frecuencia de los datos entrantes y ajusta adaptativamente el algoritmo en tiempo real. Este método es una opción avanzada disponible en perfiles más allá de los perfiles basales.

Técnicas para Mitigar Errores, Perdidas de Paquetes y Variabilidad de la Red

Contención y Escalabilidad de Errores 

El H.264 incluye varios otras funciones que son útiles en la contención del impacto de los errores y al permitir el uso de flujos de bits múltiples o escalables:

Codificación de Tajada. Cada imagen es subdividida en uno o más tajadas. A cada tajada se le otorga una gran importancia en el H.264, como el segmento básico espacial dependiente de sus vecinos. Por lo tanto los errores o datos perdidos de una tajada no se puede propagar a ninguna otra tajada dentro de la imagen. Esto también aumenta la flexibilidad a extender tipos de imagen (I, P, B) hacia el nivel de “tipos de tajada”. Las tajadas redundantes son permitidas.

El Particionamiento de Datos es soportado para permitir la separación de datos de mayor prioridad  (p.e., encabezamiento de secuencias) y los de menor prioridad (p.e., Coeficientes de transformación de imagen B).

Ordenamiento Flexible de macro bloques (FMO, por sus siglas en ingles) se puede utilizar para diseminar los bits asociados con macro-bloques adjuntos de forma más azarosa a través del flujo de bits. Esto reduce la posibilidad que una perdida de paquete afecte una región grande y permite encubrir errores asegurando que los macro-bloques vecinos estén disponibles para predecir un macro-bloque perdido.

Marcos de Referencia Múltiple que se utilizan para una estimación de movimiento mejorada también permite una compensación parcial de movimiento para una imagen P, cuando uno de sus marcos referenciados esta ausente o corrupto.


Imágenes SI y SP Pictures (o Tajadas)*

La práctica del MPEG-2 es insertar intra-imágenes (I) a intervalos regulares para detener errores que, de otra manera podrían propagarse a través de la secuencia de la imagen de manera indefinida. Además, las intra-imágenes proporcionan un medio de acceso azaroso o acciones de avance rápido, ya que los intra marcos no requieren ningún conocimiento de los otros marcos referenciados. De manera similar, imágenes I regulares serían necesarias para cambiar rápidamente entre flujos de bits mayores y menores – una función importante para acomodar la variabilidad del ancho de banda en redes móviles. Sin embargo, las imágenes I típicamente requieren mucho más bits que las imágenes P y por lo tanto son un medio ineficiente para abordar estos dos requerimientos.

El H.264 introduce dos nuevos tipos de tajadas
, "Imágenes I Cambiantes" (SI, por sus siglas en ingles) e "Imágenes P Cambiantes" (SP, por sus siglas en ingles), los cuales ayudan a abordar estas necesidades con una tasa de bits significativamente reducida. Se pueden obtener marcos SP idénticos, aunque se utilicen diferentes marcos de referencia – de esa manera, pueden ser sustituidas por marcos I como puntos de re-sincronización temporales, pero con tasas de bits significativamente reducidas. Las imágenes SP dependen de la transformación y cuantificación de los inter-bloques predecidos. Como las imágenes SP no toman ventaja completa de la intra-predicción, a costo de algunos bits, se puede extender a imágenes SI, que sí lo hacen.

Nótese que como las tajadas se codifican de manera independiente,  las tajadas cambiantes, (SI o SP) pueden definirse a ese nivel.

Función de Baja Latencia


Ordenamiento arbitrario de tajada (ASO, por sus siglas en ingles) relaja la restricción que todos los macro-bloques deben ser secuenciados en orden de decodificación y por lo tanto acentúa la flexibilidad del desempeño de bajo-retardo, importante en las aplicaciones de videoconferencias, vigilancia e Internet interactivo.

Perfiles Simplificados


El H.264 esta completamente enfocado hacia la codificación eficiente de  video natural y no aborda directamente la funcionalidad dirigida al objeto, video sintético y otras funcionalidades del sistema del MPEG-4, la cual posee una estructura muy compleja de más de 50 perfiles.

En contraste el  H.264 es inicialmente definido con solo tres perfiles:

Perfil Basal. Una meta básica del H.264 era proporcionar un perfil basal, libre de regalías para alentar la aplicación generalizada del estándar. El perfil basal posee la mayoría de las funciones descritas arriba, con la excepción de: Tajadas B y predicción ponderada; codificación CABAC; codificación de campo y tajadas SP y SI. Por lo tanto, el perfil de base es apropiado para muchas aplicaciones de escaneo progresivo, tales como la video conferencia y video sobre IP, pero no para televisión entrelazada o aplicaciones de flujos múltiples.

Perfil Principal. El perfil principal posee todas las funciones del Perfil Basal excepto el ordenamiento flexible de macro-bloques (FMO), el ordenamiento arbitrario de tajada (ASO) y tajadas redundantes. Sin embargo, agrega codificación de campo, tajadas B y predicción ponderada además de codificación de entropía CABAC. Este perfil es apropiado para la codificación eficiente de aplicaciones de televisión entrelazada donde el error de bits o de paquete no es excesivo y donde la baja latencia no es un requerimiento.

Perfil Extendido. Este perfil tiene todas las características del perfil basal y perfil principal, excepto que el CABAC no esta soportado.  Además, el perfil Extendido agrega SP y SI para conmutación de flujo y hasta 8 grupos de tajada. Este perfil es apropiado para aplicaciones de flujo en servidores, donde la escalabilidad de la tasa de bits y tasa de errores es muy importante. Las aplicaciones de seguridad y servicios de video móviles serían un ejemplo.


¿Donde tendrá el  H.264 el mayor impacto?

Cualquier aplicación de video se puede beneficiar de una reducción de los requerimientos del ancho de banda, pero el mayor impacto lo sentirán las aplicaciones donde la reducción alivia una restricción muy técnica o donde se hace un uso mucho más económico del ancho de banda como un recurso limitante.

Además, otras características del h.264 como la contención y ocultamiento de errores y la eficiente conmutación de flujo de bits es especialmente útil para ambientes de IP o inalámbricos.

Sáquele Más Servicios A Un Canal de Transmisión  

La reducción de los requerimientos de ancho de banda por un factor de entre 2 y 3 proporciona ahorros para los servicios limitados por el ancho de banda, tal como los servicios de satélite y DVB-Terrestre, o de manera alternativa permitir a tales proveedores expandir sus servicios a un costo incremental reducido.

Facilita la transmisión de Video de Alta Calidad sobre redes IP.
El H.264 puede producir una muy buena calidad, transmisión de TV de calidad, a menos de 1Mbps (definición estándar). Esto cae por debajo del umbral de 1 Mbps para xDSL y por lo tanto abre posibilidades para nuevos métodos de acceso de video de formato más grande y de alta calidad.

Transmisión   y Almacenamiento de Alta Definición  

Recuerde que el MPEG-2 consume entre 15 a 20 Mbps para video de Alta Definición con calidad adecuada para la transmisión o DVD. El uso de H.264 disminuirá esto a alrededor de 8 Mbps, haciendo posible para los proveedores de servicios de satélite limitados por el ancho de banda, de acomodar 4 canales HD (alta definición) por canal QPSK.

Aun más importante es que esta reducción permite quemar una película en HD en un DVD convencional, por lo tanto evitando la necesidad de la industria de adaptarse a un formato de DVD de mayor densidad ("blue laser").

Aplicaciones de Video Móvil  

Las redes portátiles 3G presentan una serie inusual de retos técnicos que han impulsado muchas funciones del h.264. Las aplicaciones incluyen video conferencia, transmisión de video por demanda, servicios de mensajería de multimedia y transmisión de baja resolución. Algunos temas clave y las herramientas de h.264 para abordarlos, incluyen:

Ancho de banda baja (50 – 300 kbps) es un tema clave. La tendencia esperada es que la implementación del 3G se inicie con el h.263 y avance hacia el h.264 a medida que este último madure. Un analista de la industria comenta "… las redes 3G probablemente solo ofrecerán 57.6kbit/s inicialmente. A medida que las tasas de bits aumenten, las redes y redes móviles se trasladarán a nuevo al codec H.264, el cual ofrece el doble del desempeño del H.263. Esto deberá resultar en la consecución de la misma calidad de imagen con la mitad de la tasa de bits".

Dispositivos pequeños con muchos formatos; variabilidad de ancho de banda disponible. Para aplicaciones de transmisión, estos dos asuntos separados pueden ser abordados al proporcionar múltiples transmisiones con diferentes formatos y anchos de banda y al seleccionar la transmisión apropiada al momento de uso. Las imágenes H.264 SP y SI facilitan la conmutación dinámica entre varias transmisiones múltiples para acomodar la variabilidad del ancho de banda.

Tasas de error de bits altos, perdida de paquetes y latencia. Para aplicaciones de video, las retransmisiones son poco prácticas para paquetes caídos o retrasados, así que el h.264 proporciona varios métodos (p.e., FMO, particionamiento de datos, etc.) para detener el impacto de los errores y facilitar el ocultamiento de errores.


¿Qué sucede con la relación al MPEG-4 y MPEG-2?


Comparado al MPEG-2

El H.264 emplea el mismo enfoque general que el MPEG 1 & 2 como también los estándares h.261 y h.263, pero agrega muchos mejoramientos incrementales para obtener una mejoramiento de la eficiencia de codificación en alrededor de un factor de 3.
 

El MPEG-2 fue optimizado con especial enfoque en los servicios de televisión digital Estándar y de Alta Definición, los cuales son transmitidos a través de redes distribuidoras circuito-conmutadas, a enlaces de satélite dedicados. La habilidad del MPEG2 de acomodación se resalta a medida que el rango de medios de transmisión se expande para incluir redes móviles heterogéneas, redes IP conmutadas de paquete y formatos de almacenamiento múltiples y en la medida que crecen los servicios para incluir la mensajería mutilmedia, seguridad, el mayor uso del HDTV y otros. Además un segundo objetivo del h.264 era acomodar una mayor variedad de requerimientos de ancho de banda, formatos de imágenes y ambientes de red poco amigables que incluían alta fluctuación, perdida de paquetes e instabilidad del ancho de banda.

Comparado al MPEG-4

Durante el año 2002, el Grupo de Expertos de Codificación h.264 unieron fuerzas con los expertos en  MPEG4 para formar el Equipo de Video Conjunto (JVT, por sus sigla en ingles), así que el H.264 esta siendo publicado como MPEG-4 Parte 10 (Codificación de Video Avanzado)..

El MPEG-4 es realmente una familia de estándares cuyo tema global esta es hacia aplicaciones de multimedia orientadas al objeto. Por lo tanto tiene un alcance mucho más amplio que el H.264, el cual esta estrictamente enfocado en una codificación de video más eficiente y robusto. La parte comparable del MPEG-4 es la Parte 2 Visual (a veces denominado " Video Natural "). Otras partes del MPEG abordan escenas de composición, descripción de objetos y representación java de comportamiento, animación del cuerpo humano y movimientos faciales, audio y sistemas