h.264 codec multimedia

72

Upload: bernycol

Post on 18-Dec-2014

1.681 views

Category:

Technology


1 download

DESCRIPTION

 

TRANSCRIPT

Page 1: H.264 Codec Multimedia
Page 2: H.264 Codec Multimedia

CRONOGRAMACRONOGRAMA

LUNES 13 DE JUNIO CONCEPTOS GENERALES DE MPEG4 H.264 COMPARACION ENTRE ESTANDARES MPEG

VIERNES 17 DE JUNIO PROS Y CONTRAS DE H.264 SOFTWARE PARA ANALISIS DE VIDEO

H.264

Page 3: H.264 Codec Multimedia

Su nombre formal es ISO/IEC 44196, formado por un grupo de estándares de codificación de audio y video, desarrollado por el MPEG.El principal objetivo es ofrecer al usuario final un mayor grado de interactividad y control de los contenidos multimedia, por lo que en vez de basarse en el conjunto de la secuencia, MPEG-4 se basa en el contenido.

Page 4: H.264 Codec Multimedia

FIGURA A FIGURA B

Page 5: H.264 Codec Multimedia

Video Demostrativo

Page 6: H.264 Codec Multimedia

1. Interacción con el contenido: Manipulación del contenido Codificación y manipulación de datos

naturales y sintéticos Acceso aleatorio temporal mejorado a

cuadros u objetos de forma arbitraria

2. Compresión Codificación eficiente: mejor calidad a igual

bit-rate Codificación de secuencias con varias

fuentes de datos.

Page 7: H.264 Codec Multimedia

3. Acceso Universal Robustez frente a errores en diferentes

redes. En particular, bajos bit-rates en condiciones hostiles.

Escalabilidad a nivel de contenido (objetos)

4. Características Comunes MPEG-4 toma muchas de las

características de MPEG-1 y MPEG-2 así como de otros estándares relacionados, tales como soporte de VRML (Virtual Reality Modeling Language)

Page 8: H.264 Codec Multimedia

5. Velocidad Very Low Bit-rate Video (VLBV). 5-64

kbps. Bit-rates altos. 64kbps a 4 Mbps

Page 9: H.264 Codec Multimedia

Colocar los objetos en cualquier lugar del sistema de coordenadas.

Aplicar transformaciones para cambiar la geometría o la apariencia acústica del objeto.

Agrupar objetos primitivos para formar objetos compuestos.

Aplicar datos adicionales para modificar los atributos del objeto(sonido, textura, animación, etc.)

Cambiar, interactivamente, el punto de vista y audición del usuario en cualquier lugar de la escena.

Page 10: H.264 Codec Multimedia
Page 11: H.264 Codec Multimedia

Además, MPEG-4 no hace distinción entre objetos naturales y sintéticos.

Se entiende por objeto sintético cualquier recreación informática, como gráficos en tres dimensiones o incluso voz sintetizada.

En cambio los objetos naturales es todo lo que podemos captar con una cámara, es decir nuestro entorno

Page 12: H.264 Codec Multimedia

La codificación basada en contenidos de imágenes y video permite la decodificación separada y la reconstrucción de objetos de video de forma arbitraria.

El acceso aleatorio de el contenido de una secuencia de video permite las funciones tale como pausa, paso rápido hacia delante y rebobinado rápido de los objetos de video almacenados.

La manipulación del contenido extendida en las secuencias de video, permite funciones tales como la inserción de texto sintético o natural, imagen y video.

Page 13: H.264 Codec Multimedia
Page 14: H.264 Codec Multimedia

Visual Object Sequence (VS)Secuencia del videoVideo Object (VO)Un objeto particular en la escena.Video Object Layer (VOL) Cada objeto puede estar codificado

en varias capas.Group of Video Object Planes (GOV) Agrupa VOP.Video Object Plane (VOP) Es una muestra temporal de un VO.

Page 15: H.264 Codec Multimedia

Videoteléfonos móviles y comunicaciones espaciales.

Video interactivo basado en WebPresentaciones y publicidad basados

en Web. Capturar y codificar con cámaras

domésticas. Juegos.Televisión digitalStreaming video

Page 16: H.264 Codec Multimedia

Parte 1 (ISO/IEC 14496-1): Sistemas: Describe la sincronización y la transmisión simultánea de audio y vídeo.

Parte 2 (ISO/IEC 14496-2): Visual: Un códec de compresión para elementos visuales (video, texturas, imágenes sintéticas, etc.). Uno de los muchos perfiles definidos en la Parte 2 es el Advanced Simple Profile (ASP).

Parte 3 (ISO/IEC 14496-3): Audio: Un conjunto de códecs de compresión para la codificación de flujos de audio; incluyen variantes de Advanced Audio Coding (AAC) así como herramientas de codificación de audio y habla.

Parte 4 (ISO/IEC 14496-4): Conformidad: Describe procedimientos para verificar la conformidad de otras partes del estándar.

Page 17: H.264 Codec Multimedia

Parte 5 (ISO/IEC 14496-5): Software de referencia: Formado por elementos de software que demuestran y clarifican las otras partes del estándar.

Parte 6 (ISO/IEC 14496-6): Delivery Multimedia Integration Framework .

Parte 7 (ISO/IEC 14496-7): Software optimizado de referencia: Contiene ejemplos sobre como realizar implementaciones optimizadas (por ejemplo, en relación con la Parte 5).

Parte 8 (ISO/IEC 14496-8): Transporte sobre redes IP: Especifica un método para transportar contenido MPEG-4 sobre redes IP.

Parte 9 (ISO/IEC 14496-9): Hardware de referencia: Provee diseños de hardware que demuestran implementaciones de otras partes del estándar.

Parte 10 (ISO/IEC 14496-10): Advanced Video Coding (AVC): Un códec de señales de vídeo técnicamente idéntico al estándar ITU-T H.264.

Page 18: H.264 Codec Multimedia

Parte 11 (ISO/IEC 14496-11): Descripción de escena y motor de aplicación. BIFS.

Parte 12 (ISO/IEC 14496-12): Formato para medios audiovisuales basado en ISO: Un formato de archivos para almacenar contenido multimedia.

Parte 13 (ISO/IEC 14496-13): Extensiones para el manejo y protección de Propiedad Intelectual (IPMP).

Parte 14 (ISO/IEC 14496-14): Formato de archivo MPEG-4: El formato de archivo de contenedor designado para contenidos MPEG-4; basado en la Parte 12.

Parte 15 (ISO/IEC 14496-15): Formato de archivo AVC: Para el almacenamiento de vídeo Parte 10, basado en la Parte 12.

Parte 16 (ISO/IEC 14496-16): Animation Framework eXtension (AFX).

Parte 17 (ISO/IEC 14496-17): Formato de subtítulos (en elaboración - el último avance en su revisión data de enero de 2005).

Parte 18 (ISO/IEC 14496-18): Compresión y transmisión como flujo de fuentes tipográficas (para fuentes OpenType).

Page 19: H.264 Codec Multimedia

Parte 19 (ISO/IEC 14496-19): Flujos de texturas sintetizadas.

Parte 20 (ISO/IEC 14496-20): Representación liviana de escenas (LASeR).

Parte 21 (ISO/IEC 14496-21): Extensión de MPEG-J para rendering (en elaboración - el último avance en su revisión data de enero de 2005).

Parte 22 (ISO/IEC 14496-22): Open Font Format: formato de fuentes abierto.

Parte 23 (ISO/IEC 14496-23): Representación simbólica de la música, SMR (Simbolic Music Representation).

Parte 24 (ISO/IEC 14496-24): Interacción con el sistema y el audio.

Parte 25 (ISO/IEC 14496-25): Modelo de compresión de gráficos 3D.

Parte 26 (ISO/IEC 14496-26): Conformidad del audio. Parte 27 (ISO/IEC 14496-27): Conformidad de los gráficos

3D.

Page 20: H.264 Codec Multimedia

CalidadLa calidad de MPEG-2 es impecable, pero este formato no está hecho para las aplicaciones multimedia de la red. No se utiliza para streaming de video o para aplicaciones de transmisión. Por lo tanto la calidad de un video comprimido en formato MPEG-2, si se transmite en línea, se verá comprometida.

Por otro lado, el formato MPEG-4 ha sido desarrollado para aplicaciones de streaming multimedia en Internet. Así, un vídeo codificado en el formato MPEG-4 dará una mejor calidad de vídeo o de audio cuando se transmiten en línea, ya que está diseñado para un uso de la red o multimedia. Con formato MPEG-4, la videoconferencia es posible.

Page 21: H.264 Codec Multimedia

Tamaño del archivo

En comparación con los archivos MPEG-2, los archivos MPEG-4 ocupan menos tamaño de memoria. Esto se debe a que el algoritmo de compresión está diseñado para crear archivos, que puedan ser transportados a través de Internet, y a través de múltiples plataformas de red.

Compresión

La compresión MPEG-4 es bastante complicada en comparación con la compresión MPEG-2, ya que está diseñado para lograr videos de alta calidad para aplicaciones multimedia a una velocidad relativamente baja. En pocas palabras, la compresión MPEG-4 elimina los bits redundantes mediante la comparación de muchos más cuadros a la vez, en comparación con MPEG-2, mediante el ajuste de la tasa de bits en consecuencia.

Page 22: H.264 Codec Multimedia
Page 23: H.264 Codec Multimedia
Page 24: H.264 Codec Multimedia

Actualmente el análisis de vídeo es un tema muy importante en nuestra sociedad. En los auges de esta era digital, donde lo analógico está desapareciendo progresivamente. La compresión se vuelve algo fundamental. Ladigitalización de las señales de vídeo y audio proporciona una gran cantidad de ventajasrespecto a la señal analógica que pronto desaparecerá: resoluciones superiores, calidad, robustez frente al ruido y a errores en la propagación, etc.

Page 25: H.264 Codec Multimedia

Con el paso del tiempo MPEG ha ido evolucionando e introduciendo mejoras en susestándares dando lugar a los estándares MPEG-1, MPEG-2, MPEG-4…. Este trabajo se centraráen vídeo MPEG-4, concretamente en la parte 10 de este estándar: estándar H.264, códec de vídeo digital con el principal objetivo de conseguir una importante compresión de datos. Este estándar proporciona una compresión considerablemente mayor que la de estándares anteriores, reduciéndose la tasa binaria hasta un 50% respecto a la de MPEG-2.

Page 26: H.264 Codec Multimedia

El objetivo es encontrar los medios adecuados para no perder esa calidad visual a la vez que se logra la mayor compresión posible. Eligiendo los valores adecuados, se pueden llegar a compresiones de 100:1 con diferencias de calidad respecto al original imperceptibles.

Page 27: H.264 Codec Multimedia
Page 28: H.264 Codec Multimedia

Trastorno obsesivo de compresión, Los esquemas de compresión sofisticados como H.264 brillan en su actividad por lo obsesionados que son por naturaleza por obtener la calidad visual máxima, con la mínima cantidad de datos posibles. Otro aspecto notable del esquema de compresión de H.264 es como usa referencias a otras áreas del video clip para definir una nueva área sin tener que redefinirla desde cero.

Page 29: H.264 Codec Multimedia

La compresión de H.264 llega a los extremos para reducir lo que necesita llevar en la valija. En lugar de empacar las dos medias en un par, ¿porqué no cargar una sola con una nota que diga que al llegar al destino se haga una copia?

Page 30: H.264 Codec Multimedia

Comprimir video en H.264 es más un arte que una ciencia, pero tener una comprensión básica de cómo los diversos factores influencian el resultado final puede mejorar notablemente su habilidad para conseguir mejores resultados. Si bien no hay fórmulas mágicas o reglas rigurosas, empezar desde una base sólida e ir gradualmente refinando las configuraciones mediante experimentación controlada pueda dar los mejores resultados en cualquier situación.

Page 31: H.264 Codec Multimedia
Page 32: H.264 Codec Multimedia

SECUENCIAS DE CUADROS REAL Y TRANSMITIDA

Estas imágenes B requieren menos tasa de transmisión que las imágenes I y P, aunque las imágenes I siguen teniendo mayor fiabilidad, pues son resultantes de una intra-codificación y no de una estimación de movimiento con respecto a otro bloque. A su vez, dada una mayor complejidad en la codificación de este tipo de imágenes, también cabe destacar que el tiempode codificación es mayor.

Page 33: H.264 Codec Multimedia
Page 34: H.264 Codec Multimedia

CONCEPTOS BÁSICOS SOBRE H.264MACROBLOQUES

Page 35: H.264 Codec Multimedia

H.264 da la posibilidad de ofrecer vídeo de alta calidad a un amplio rango de dispositivos, desde telefonía móvil hasta dispositivos Blu-Ray (actualmente con las mayores prestaciones en calidad de vídeo). Ésta es una de las grandes razones por las que H.264 está sustituyendo a los estándares actuales de compresión de vídeo.

Page 36: H.264 Codec Multimedia

un frame puede dividirseen varios slices, aunqueen la práctica, un frame casi siempre está compuesto por un únicoslice. Un slice es un conjunto de macrobloquesque se procesa en orden de escaneado, es decir, de izquierda a derecha y de arriba a abajo. Un slice se puede decodificar de formaindependiente.

Page 37: H.264 Codec Multimedia

En inter-predicción se usan imágenes codificadas previamente, las cuales están almacenadas en un buffer (DPB – Decoded Picture Buffer). Se puede acceder a ellas a partir de dos listas: lista 0 y lista 1

Un slice se puede decodificar de forma independiente.

· Los slices de tipo I contienen solo macrobloques de tipo I.· Los slices tipo P tienen macrobloques tipo I y P.· Los slices tipo B tienen macrobloques I y B.La predicción de H.264 se produce a nivel de macrobloque

Page 38: H.264 Codec Multimedia

Otra mejora que se introduce en H.264 es la aparición de dos nuevos tipos de slices: SP y SI.Estos tipos de slices se utilizan en el perfil extendido de H.264, conocido como “Extended Profile”. El uso de dichos slices permite un flujo eficiente entre streams de vídeo y un acceso aleatorio eficiente para los decodificadores de vídeo.· Los slices SP facilitan la transición entre flujos o streams codificados. Contiene macrobloques P y/o I y están diseñados para soportar cambios entre secuencias codificadas similares· Los slices SI son similares a los slices SP pero contienen macrobloques SI (un tipo especial intra-frame). Han sido ideados para conmutar de manera eficaz entre diferentes flujos de vídeo para un acceso aleatorio en los decodificadores de vídeo más eficiente.

Page 39: H.264 Codec Multimedia
Page 40: H.264 Codec Multimedia
Page 41: H.264 Codec Multimedia

CODIFICACIÓN TEMPORAL

También llamada codificación inter-frame.

H.264 permiten nuevas particiones de los bloques, desde 16x16 hasta 4x4. Una mayor variabilidad de las particiones permite obtenermás información acerca del vídeo a analizar y una mayor exactitud en la estimación demovimiento. También cabe destacar que este estándar permite una precisión de hasta ¼ de píxel, la cual era de ½ en estándares previos.

Page 42: H.264 Codec Multimedia
Page 43: H.264 Codec Multimedia
Page 44: H.264 Codec Multimedia

Particiones macrobloques H.264 mantiene una de las herramientas más utilizadas en estándares anteriores, los vectores de movimiento. La misión de dichos vectores es apuntar al bloque más parecido al que estamos codificando en ese momento. Esto permite codificar la diferencia entre ambos bloques, lo cual supone mucha menor información que enviar el bloque en sí.Otra de las principales novedades de H.264 es la de la “multirreferencia”, que permite a bloques de un cierto cuadro referenciar a bloques de distintos cuadros. La multirreferencia de H.264 permite que cada partición dentro de un macrobloque tenga su propia predicción y su propio vector de movimiento y que dichos bloques (dentro del mismo macrobloque) puedan apuntar a distintos bloques de cualquier macrobloque de cualquier frame que esté en el DPB (Decoded Picture Buffer, donde se almacenan los frames que serán usados como referencia).

Page 45: H.264 Codec Multimedia

Por tanto, es posible codificar no la información de la imagen en sí, sino el error de predicción con respecto a la imagen anterior, guardando previamente dichas imágenes en el buffer. Si se pierden las imágenes del buffer, se pierde también la informaciónfundamental para poder reconstruir las siguientes imágenes y se perdería toda posibilidad de reconstruirlas.

Page 46: H.264 Codec Multimedia

Hablar de estimación de movimiento, o compensación de movimiento, es hablar de los vectores de movimiento (MV - “Motion Vectors”), ya utilizados en MPEG-1. Tras un análisisdentro de una ventana de búsqueda, estos vectores de movimiento resultan en la localización del bloque más similar al que se está codificando, de entre los posibles dentro de los cuadros previamente codificados.

Se marcarán como áreas de potenciales coincidencias posibles las que estén más cerca del macrobloque que estemos codificando en imágenes previas, conocidas como ventanas de búsqueda. También se puede apelar directamente a la búsqueda exhaustiva, la cual buscará en todos los macrobloques de la imagen de referencia, previamente codificada.

Page 47: H.264 Codec Multimedia
Page 48: H.264 Codec Multimedia
Page 49: H.264 Codec Multimedia
Page 50: H.264 Codec Multimedia
Page 51: H.264 Codec Multimedia

Codificación espacial

En H.264 (como novedad respecto a estándares anteriores), la redundancia espacial se refiere al análisis de la semejanza de cada bloque en relación a los bloques ya codificados del cuadro en cuestión.Se trata de un proceso similar a la codificación inter-frame pero entre bloques del mismo cuadro.

Sin embargo, al contrario que en inter, en codificación intrasólo se utilizan tamaños de macrobloque de 16x16 o 4x4 en luminancia. Existen distintos modos de predicción según sea el tamaño de dicho macrobloque: nueve modos de predicciónpara los bloques 4x4 y cuatro modos de predicción para los bloques 16x16

También llamada codificación intra-frame

Page 52: H.264 Codec Multimedia
Page 53: H.264 Codec Multimedia
Page 54: H.264 Codec Multimedia

PERFILES Y NIVELES (PROFILES AND LEVELS)

El gran motivo que ha inspirado la creación de diferentes tipos de perfiles y niveles en este estándar es que H.264 (desde MPEG-2) abarca muchas capacidades y permite al usuario distintos niveles de restricción a la hora de codificar.

Hay siete perfiles en H.264, teniendo cada perfil un tipo concreto de aplicaciones

Page 55: H.264 Codec Multimedia
Page 56: H.264 Codec Multimedia

De estos, los 3 perfiles más utilizados son: Baseline Profile- Slices de tipo I/P- Codificación entrópica CAVLC(Estas dos características son comunes a “Main Profile” y a “Extended Profile”)- Grupos de Slice y ASO (Arbitrary Slice Ordering - orden de grupos de slice arbitrario) (Común a “Extended Profile”) Main ProfileAñade a las dos primeras características de “Baseline Profile”:- Slices tipo B- Weighted prediction- Codificación entrópica CABAC- Codificación entrelazada. Extended ProfileIncluye todo el “Baseline Profile” y las dos primeras características del “Main Profile”, además de:- Slices tipo SP y SI (como explicaremos más adelante en el apartado 3.1.2).- Partición de datos

Page 57: H.264 Codec Multimedia
Page 58: H.264 Codec Multimedia
Page 59: H.264 Codec Multimedia

Los niveles hacen referencia a la frecuencia de bits y de codificación en macrobloques por segundo para todo tipo de resoluciones, desde QCIF hasta HDTV.

Page 60: H.264 Codec Multimedia

H.264 utiliza esta misma transformada pero aplicada sobre residuos, es decir, sobre las diferencias entre cada bloque y los contiguos.Esto implica que algunas técnicas que hacían usode estas imágenes DC dejen de tener utilidad. Es importante señalar que, aunque se aplique sobre residuos, cada bloque sigue teniendo sus coeficientes DC y AC. El coeficiente DC (“Direct Current”) es la frecuencia más baja y se corresponde con el valor medio. Los coeficientes AC (“Alternative Current”) se corresponden con los detalles del bloque.

Page 61: H.264 Codec Multimedia

En los estándares anteriores se utilizaba la DCT 8x8. En H.264 se utiliza la transformada Hadamard tanto para los coeficientes DC de luminancia como para los coeficientes DC de crominancia, y la transformada DCT para todos los demás bloques 4x4 de datos residuales.

Page 62: H.264 Codec Multimedia

Los vectores de movimiento y los coeficientes cuantizados se codifican utilizando codificadores de entropía tales como el CAVLC (Context-Adaptive Variable Length Codes) o el CABAC (Context-Adaptive Binary Arithmetic Codes)

Código adaptivo de longitud variable basado en el contexto (CAVLC)Después de la transformación y la cuantización, la probabilidad de que el valor de un coeficiente sea cero o +/- 1 es muy alta. Por lo tanto, se codifica el número total de ceros y +/-1 que ocurren. Para los demás coeficientes sólo se codifica su nivel.

Page 63: H.264 Codec Multimedia

Código aritmético binario adaptivo basado en el contexto (CABAC), CABAC es más avanzado, brinda una mejor economía de tasa de bits/calidad, con la contraprestación de requerir más poder de cómputo comparado con CAVLC. CABAC utiliza la codificación aritmética a fin de obtener una buena compresión. El modelo de probabilidad se actualiza con cada símbolo brinda una mejor economía de tasa de bits/calidad, con la contraprestación de requerir más poder de cómputo comparado con CAVLC.

Page 64: H.264 Codec Multimedia
Page 65: H.264 Codec Multimedia

VIDEO DEMOSTRATIVO

Page 66: H.264 Codec Multimedia

CAMBIOS DE TOMA

Page 67: H.264 Codec Multimedia
Page 68: H.264 Codec Multimedia
Page 69: H.264 Codec Multimedia
Page 70: H.264 Codec Multimedia
Page 71: H.264 Codec Multimedia
Page 72: H.264 Codec Multimedia