490 likes | 939 Views
EL ESTANDAR MPEG-4. PID. JOSE BAENA ROCA. El estándar MPEG-4. Introducción. Funcionalidades. Estructura y sintaxis. Codificación y decodificación. Escalabilidad. Manipulación y reutilización de objetos. La TV analógica. Ha sido el único sistema de comunicación de vídeo.
E N D
EL ESTANDAR MPEG-4 PID JOSE BAENA ROCA
El estándar MPEG-4 • Introducción. • Funcionalidades. • Estructura y sintaxis. • Codificación y decodificación. • Escalabilidad. • Manipulación y reutilización de objetos.
La TV analógica • Ha sido el único sistema de comunicación de vídeo. • No ha experimentado cambios sustanciales en cuarenta y tantos años. • Es el primer sistema de compresión. • Sistema de comunicación unidireccional. • El usuario es un simple espectador.
Hacia donde vamos • La TV está cambiando a digital. • Este cambio supone una nueva era en los sistemas de vídeo. • El usuario dejará de ser un mero espectador. • Se permite la interacción con el medio. • Puede incluso crear y trasmitir sus contenidos. • Existirán bases de datos con material para la composición de contenidos por parte del usuario.
1984 1986 1988 1990 1992 1994 1996 1998 H.261 H.263 MPEG-1 MPEG-4 MPEG-2 Estándares de codificación ITU ISO
TV analógica Evolución • Compresión de imagen y vídeo • Esquemas basados en el pixel • JPEG, H.26x, MPEG-1,2 MPEG-4 • Análisis de la imagen • Detección y seguimiento de objetos • Reconocimiento de objetos
Areas de aplicación • TV digital • Contenidos multimedia para móviles • Producción de TV (p.e. efectos especiales) • Juegos • Vídeo en la red
Compresión Interactividad basada en el contenido Acceso Universal ¿Qué nos ofrece MPEG-4?
Ámbito y características MPEG-4 permite: • Representar unidades de audio, vídeo y audiovisuales, que reciben el nombre de “media objects” • Describir la composición de estos objetos para crear media objects compuestos que formarán las escenas audiovisuales. • Multiplexar y sincronizar los datos asociados con los media objects. • Interactuar con la escena audiovisual generada en el receptor final.
Ámbito y características • MPEG-4 intenta satisfacer las necesidades de los autores, de los proveedores de servicio y de los usuarios. • Para los autores: • permite la reutilización de contenidos y una gran flexibilidad en su uso, dedicando una parte importante a los derechos de autor. • Para los proveedores de servicios: • permite un manejo de la información fácil para su uso en redes heterogéneas. • Para los usuarios finales: • ofrece altos niveles de interacción con el contenido
Texto y gráficos Imágenes estáticas p.e. Un fondo fijo Objetos de vídeo p.e. Una persona hablando Cabezas parlantes sintéticas y el texto asociado para el habla Objetos de audio p.e. La voz asociada a una persona Sonido sintético Representación codificada Media Objects Primitivos Naturales Sintéticos
Escena MPEG-4
Cadenas de datos • El descriptor del objeto identifica todas las cadenas asociadas a un media object, lo que permite el manejo jerárquico de los datos codificados. • Las cadenas de datos transportan marcas para su sincronización e identificación. • La capa de sincronización permite identificar el tipo de la unidad de acceso en cadenas elementales.
Interacción con los media objects • cambiar el punto de vista y/o recepción del sonido en la escena, p.e. navegando a través de ella; • mover objetos de la escena a una posición diferente; • programar una serie de eventos pinchando sobre un objeto específico, p.e. comienzo o parada de una secuencia de vídeo; • seleccionar el lenguaje deseado cuando esté habilitada la posibilidad de múltiples idiomas; • se pueden programas además clases de conducta más complejas, • p.e. un teléfono virtual suena, el usuario contesta y se establece un enlace de comunicación
Principales Funcionalidades • DMIF (Delivery Multimedia Integration Framework) • Sistemas • Audio • Visual
DMIF • Interface de aplicación transparente para el punto distante. • Control del establecimiento de los canales FlexMux. • Uso de redes heterogéneas para la comunicación.
Sistemas • BIFS (Binary Format for Scenes). • ODs (Object Descriptors). • Interactividad. • Herramienta FlexMux. • Interfaces para terminales y redes. (MPEG-J). • Capa de transporte independiente. • Representación de texto. • Control de los buffers de recepción. • Identificación temporal, sincronización y mecanismos de recuperación. • Encubrimiento de los datos de los Derechos de la Propiedad Intelectual.
Audio (1) • Escalabilidad de la velocidad de transmisión. • Escalabilidad del ancho de banda • Escalabilidad de la complejidad del codificador y del decodificador. • Escalabilidad de grano fino. • Codificación de Audio Paramétrico.
Audio (2) • Incremento de la robutez al error. • Codificación de audio que combina alta calidad y bajo retraso. • Espacialización ambiental. • Canal de retorno. • Compresión CELP Silence, para las bajas velocidades en la codificación del habla. • Bajo overhead.
Visual (1) • Soporte de formatos y velocidades diversas. • Eficiencia de la compresión. • Funcionalidades basadas en el contenido. • Escalabilidad de texturas, imágenes y video. • Codificación del contorno y del Alpha Channel.
Visual (2) • Seguridad en entornos propensos al error. • Animación de caras. • Animación de mallas 2D con Estructura implícita. • Video natural. • Animación de cuerpos. • Codificación de mallas poligonales 3D.
Derechos de Autor Scene Descriptor Graph Demux AVO Decode Composite and Render Object Descriptors MPEG-4 bitstream IPMPS Stream flow controller
VS2...VSN VS2 VS1 VS1 VideoSession (VS) VOL2 VO2...VON VS1 VS1 VO2 VideoObject (VO) VOL2...VOLN VideoObjectLayer (VOL) GOV2...GOVN GOV2 VS1 GroupOfVOP’s (GOV) VOP1 VideoObjectPlane (VOP) VOP1 VOPK+1 VOP1 VOP1 VOP1 VOP1 Estructura y sintaxis VS1 VO1 VOL1 GOV1 VOPK VOP1 VOP1...VOPK VOPK+1... VOPN VOP1... VOPN Capa 1 Capa 2
Secuencia de VO’s Escena final Secuencia de VO’s
Codificación y Decodificación • Una imagen es la suma de los objetos, el texto y el fondo que la conforman (VO’s). • La codificación de los objetos se hace por separado. • Los objetos son manipulables. + Texto + IMAGEN =
Codificación y Decodificación Codificación de VO0 Decodificación de VO0 Codificación de VO1 Decodificación de VO1 Formación de VO’s Composición de VO’s Información de Vídeo Codificación de VOn Decodificación de VOn D Salida de vídeo M M U U Interacción del usuario Interacción del usuario X X Cadena de datos
Codificación yDecodificación VOP 1 VOP 2 VOP 3 VOP n Codificación de contornos Secuencia de vídeo Codificación de textura Formación del VOP Codificación de movimiento
Codificación y Decodificación D E M U L T I P L E X O R Decodificación del movimiento Compensación del movimiento Decodificación de la textura Decodificación del contorno Compositor Memoria VOP Información del contorno VOP Reconstruido Salida de Vídeo Cadena de bits EJEMPLO DE DECODIFICACIÓN DE UN VOP
Codificación de contornos • Codificación de contornos binaria. Se trabaja con una matriz binaria que representa el contorno del VOP (máscara binaria), si contiene el pixel contiene al VOP valdrá 255, y 0 en caso contrario. • Codificación de contornos en escala de grises. Cada elemento de la matriz puede tomar un valor dentro de un rango. Normalmente el rango suele ser de 0 a 255.
Codificación de contornos Cada VOP se divide en bloques más pequeños, llamados macro bloques. Ventana Rectangular que engloba el VOP Binary Alpha Block, BAB (16x16 pixeles) Tamaño múltiplo de 16 VOP
Codificación de contornos Cada BAB se codifica separadamente, y pueden ser codificados dentro de uno de los siguientes modos: • El bloque se considera Transparente. • El bloque se considera Opaco. • Usando IntraCAE. • Usando InterCAE. • La MVD(*) es cero pero el bloque no se actualiza. • La MVD no es cero, pero el bloque no se codifica. • La MVD no es cero, pero el bloque se codifica. (*) Motion Vector Difference
Estimación del movimiento y herramientas de compensación P-VOP B-VOP I-VOP Tiempo
Codificación de textura crominancia crominancia luminancia 8 luminancia luminancia 8 8 8 luminancia
Textura VOP Cadena de bits Proceso de codificación de textura de un VOP DCT Cuantificación Coeficiente de predicción Coeficiente de escaneo Codificación de longitud variable
Codificación de textura + + trama I Predicción hacia delante vector de movimiento resultado compensación del error de la predicción
Error resilience • Resincronización • Particionado de datos • Código de extensión de la cabecera • VLC’s reversibles
Codificación sprite • Consiste esencialmente en una imagen estática que podría ser transmitida una vez solamente. • Usualmente se emplea con objetos sintéticos. • El contorno y la textura se codifican como un I-VOP.
Escalabilidad MPEG-4 Enhancement Layer Encoder MPEG-4 Enhancement Layer Decoder M u l t i p l e x e r D e m u l t i p l e x e r MPEG-4 Base Layer Encoder MPEG-4 Base Layer Decoder Preprocesador de escalabilidad Midprocessor Midprocessor Postprocesador de escalabilidad
Escalabilidad Permite decodificar solo una parte de una cadena de bits y reconstruir imágenes o secuencias de imágenes con: • la complejidad del decodificador reducida y por tanto de calidad reducida • resolución espacial reducida • resolución temporal reducida • con igual resolución temporal y espacial pero con la calidad reducida
Manipulación de objetos Los objetos de una escena son manipulados por separado
Manipulación de objetos Permite jugar con los sprites +
Reutilización de contenido BD BD VO 1 Demultiplexor Multiplexor Compositor Decodificador Codificador VO n ...