Sesion 9 Codificacion Multimedia II - jesusgpa/2023-2024-CSAAI GitHub Wiki

Sesión 9: Codificación Multimedia II

  • Tiempo: 2h (50 + 50min)
  • Fecha: Martes 16 de Abril de 2024
  • Objetivos de la sesión:
    • Entender el proceso de codificación del Audio
    • Entender el proceso de codificación del Vídeo

Contenido

Introducción

En esta sesión veremos de manera general el proceso de codificación del audio y el vídeo a números.

El paso del mundo analógico al digital.

Esos números hay que tratarlos antes de inyectarlos en una red digital para su transmisión.

Veremos qué es lo que ocurre desde la señal física hasta su entrada en Internet.

Codificación multimedia

La codificación multimedia se refiere al proceso de convertir datos de medios, como audio, video o imágenes, en un formato digital comprimido para su almacenamiento o transmisión eficiente.

Esta codificación se utiliza ampliamente en una variedad de aplicaciones, desde la transmisión de video online hasta la grabación de música en dispositivos móviles.

En la codificación de video y audio, se utilizan algoritmos de compresión para reducir el tamaño del archivo sin perder demasiada calidad perceptible.

Los formatos de codificación comunes incluyen MPEG para video y MP3 para audio, aunque hay muchos otros estándares y codecs disponibles.

La codificación multimedia también implica la compresión de imágenes, como JPEG para fotografías digitales.

Los algoritmos de compresión en este caso eliminan información redundante o poco importante para reducir el tamaño del archivo.

La eficiencia en la codificación multimedia es clave para la transmisión de datos a través de redes de banda limitada, como Internet, así como para el almacenamiento eficiente en dispositivos de almacenamiento físico, como discos duros y tarjetas de memoria.

La evolución de la tecnología de codificación multimedia continúa permitiendo la transmisión y almacenamiento de medios digitales de alta calidad con tamaños de archivo cada vez más pequeños.

Audio

Partimos del esquema general que vimos en la clase pasada.

Este es nuestro escenario.

Si pulsamos en el botón derecho del ratón y le dais a Ver imagen la podréis ver con mayor resolución.

En esta sesión nos vamos a centrar en lo que ocurre desde que se recibe la señal analógica de audio hasta que inyectamos la señal digital en Internet, para transmitirla a otra parte del mundo.

Hay tres etapas:

  • Conversión A/D: Esta es la fase de la captura. La señal analógica se transforma a números, que se llaman muestras. En este proceso hay degradación de la señal.
  • Codificación: Se reduce la cantidad de muestras, para que haya menor cantidad de datos que transmitir. Puede haber también degradación o pérdida de calidad.
  • Encapsulado: Las muestras se divide en paquetes que se pueden enviar por Internet.

Conversión Analógico-Digital

El audio digital se obtiene a partir de la digitalización de la señal analógica eléctrica, usando un conversor analógico/digital.

El proceso tiene dos fases: Muestreo y cuantificación.

Muestreo

Durante el muestreo se dejan pasar solo el voltaje de la señal durante ciertos instantes de tiempo, permaneciendo el resto a 0v.

Lo que se obtiene es una señal eléctrica con picos muy estrechos, que se representa mediante puntos sobre líneas verticales.

Se trata de una señal discreta.

Cada punto es una muestra.

La frecuencia a la que se obtienen las muestras se denomina frecuencia de muestreo (o periodo de muestreo) y se mide en muestras/segundos.

En este proceso de discretización, NO SE PIERDE CALIDAD.

El segundo teorema de Nyquist nos garantiza que la señal se podrá reconstruir TOTALMENTE siempre y cuando la frecuencia de muestreo sea al menos del doble de su ancho de banda.

Así, una señal de audio de 1Khz, hay que tomar muestras al menos a la frecuencia de 2Khz, para garantizar su reconstrucción total.

¿Qué significa reconstrucción total? Que la señal analógica reconstruida a partir de las muestras es INDISTINGUIBLE de la original.

Ejercicio

Se tiene una señal de audio de ancho de banda de 8Khz que se muestrea a las frecuencias de 20Khz y a 40Khz.

¿Cuál de las dos señales digitales tendrá más calidad?

¿La de 20Khz o la de 40Khz?

(suponiendo que no hay cuantificación)

Cuantificación

A la salida del conversor analógico digital se obtienen números en binarios, con un número fijo de bits.

Esto hace que la precisión para medir el voltaje de cada muestra sea finita y que sólo se dispongan de N niveles para representar ese voltaje.

Así, si representamos cada muestra con 8 bits, tendremos 256 niveles diferentes de voltaje.

Si el voltaje de una muestra recae entre dos niveles, se aproxima al más cercano.

Debido a ello, al realizar la conversión a digital se está introduciendo un error.

Y por ello, la señal analógica reconstruida, NO será exactamente igual a la original.

A la salida del conversor A/D tenemos un chorro de bits, el bitrate, que se mide en bits por segundo(bits/s ó bps)

Ejemplo

Una señal de audio se muestrea a una frecuencia de 1Khz y se usa un conversor A/D de 8 bits.

¿Cual es el bitrate del audio digital?

Se están tomando 1000 muestras por segundo, y como cada muestra es de 8 bits, se tendrá un bitrate de 8000 bits por segundo (8Kbps)

Formatos PCM y LPCM

El primer formato de audio digital fue el PCM: Modulación por impulsos codificados (MIC en español)

  • Aplicación: telefonía
  • Frecuencia de muestreo: 8000 muestras por segundo
  • 8 bits por muestra (256 niveles)
  • Bitrate de 64Kbps
  • Paso de cuantización variable. En la voz humana hay más cantidad de amplitudes pequeñas que grandes. Se usan más bits para las amplitudes pequeñas

El primer formato elegido por la industria multimedia fue una variante del PCM, el LPCM

  • Cuantificación Lineal
  • Primer formato elegido para la distribución multimedia
    • CDs: Muestreo a 44.1KHz con 16 bits por muestra
    • DVDs: Muestreo a 192KHz con 24 bits por muestra

CODECS

Del conversor A/D salen las muestras en bruto, con una cierta velocidad (bps).

La misión de los codecs es reducir la cantidad de bits.

Producen un chorro de bits a su salida que es menor que el de la entrada, de forma que la calidad de la señal no se degrade o lo haga lo menos posible.

Se basan en las propiedades de los números y en la redundancia que existe en la propia señal.

Para entender conceptualmente sus principios de funcionamiento haremos el siguiente ejemplo:

Imaginemos una señal digital que sale de un conversor A/D.

Se utilizan 6 bits para las muestras, por lo que se pueden representar números entre 0 - 63.

En un momento determinado llega un grupo de 4 muestras que son múltiplos de 5.

Como cada muestra son 6 bits, tenemos un grupo de 6x4 = 24 bits.

El códec detecta que son múltiplos de 5 y los divide entre 5, obteniendo los números 10, 2, 3 y 4, que ahora al ser más pequeños, se pueden representar mediante 4 bits (0 - 15).

Además hay que añadir el número 5 para que el receptor realice la operación inversa: multiplicar por 5 para obtener la señal digital original.

Así que el códec saca por su salida 5 números de 4 bits: En total 20 bits.

Ha comprimido 24 bits en 20 bits, sin pérdida de calidad de la señal digital.

Por contra, el precio a pagar es un aumento de la complejidad.

Ahora, tanto el codificador del emisor, como el decodificador del receptor tiene que realizar las operacione de dividir entre 5 y multiplicar entre 5 respectivamente.

Conseguimos reducir el tamaño a costa de necesitar más recursos de procesamiento

Códecs de audio más comunes

  • PCM. Sin compresión. Binario natural
  • AMR. Usado en Telefonía (GSM). Frames de 20ms con 160 muestras a 8Khz (8 bits). Baja calidad
  • SPEEX. Códec libre, para voz. Frames de 20ms con 160 muestras a 8Khz (8 bits) (Obsoleto--> Opus)
  • Opus. Códec Libre. Formato contenidos del Ogg. Las notas de voz de WhatsApp usan Opus
  • AAC. Sucesor del MP3. Alta calidad. Servicios de streaming

Encapsulado del Audio

Para poder enviar el audio por internet lo tenemos que convertir en un paquete: hay que dividir el chorro de bits en frames, que típicamente contienen un fragmento de audio de longitud fija

Este paquete estará formado por las propias muestras y una información adicional en la cabecera:

  • Tipo de frame
  • Indicador de calidad
  • CRC
  • etc...

Y luego se envía por internet usando el protocolo de nivel inferior requerido: UDP, TCP, HTTP, etc...

WooClap Time

Vídeo

Estudiaremos los procesos involucrados en la captura y tratamiento básico de las señales de Vídeo

Luz

La luz está compuesta por ondas electromagnéticas.

Al comportarse como una onda, tienen una intensidad (su amplitud) y una frecuencia, que al igual que con el sonido, sólo depende de la fuente y NO cambia al pasar de un medio a otro.

Esta frecuencia es una magnitud objetiva, que se puede medir.

A bajas frecuencias tenemos las ondas de radio que al incidir sobre materiales metálicos, hacen que los electrones se muevan.

A frecuencias más altas, tenemos las microondas, que hacen vibrar las moléculas (y por eso lo podemos usar para calentar).

Si seguimos subiendo tenemos la el espectro de luz visible, que es la porción de todo el espectro visible que el ser humano es capaz de ver.

En concreto la franja comprendida entre los 380 nm y los 780 nm.

Mediante los fotorreceptores situados en el ojo humano, somos capaces de percibir las diferentes longitudes de onda como un color diferente, lo veremos más adelante, la descomposición de la luz blanca en todas sus longitudes de onda mediante un prisma nos permite ver los colores que la componen.

Propiedades: reflexión y refracción

Cuando una onda electromagnética pasa de un medio a otro, la onda se divide en dos: una parte se refleja y otra parte entra en el medio.

En ambos casos, la frecuencia NO varía.

Sin embargo, el ángulo de la onda refractada depende de la longitud de onda, que sí que cambia con el medio.

Esta propiedad es la que le sirvió a Newton para demostrar que la luz blanca está formada por componentes más fundamentales, que percibimos como colores.

Es el famoso experimento del prisma.

Y también logró reconstruir luz blanca a partir de estas componentes fundamentales.

Otro experimento que nos permite reconstruir el color blanco, es el Disco de Newton.

Si hacemos girar un disco con los colores del arco iris, veremos cómo aparece el color blanco.

Colores primarios: Rojo-Verde-Azul

El ojo humano tiene fotoreceptores que son sensibles a ondas electromagnéticas de tres frecuencias: las correspondientes a rojo, verde y azul (En inglés RBG).

A partir de la información recibida por estos receptores, nuestro cerebro crea los colores.

Por tanto, los colores que "vemos" en realidad son interpretaciones de estos tres colores primarios.

Esta característica hace que usando combinaciones de estos tres colores podamos representar todos los demás colores, donde el negro es la ausencia de color y el blanco los tres con la misma intensidad.

Es lo que se denomina la Síntesis aditiva

Por tanto, para obtener imágenes de vídeo, sólo hay que capturar estos tres colores primarios

Vídeo analógico

La intensidad de luz de las componentes primarias, tendrán una forma de onda.

Estas ondas inciden sobre la cámara y se convierten en señales eléctricas análogas a las físicas.

Ahora los electrones se moverán siguiendo la intensidad de luz recibida.

Para poder transmitir las imágenes, hay que hacer ese proceso con las 3 intensidades de los colores primarios: Rojo, verde y Azúl.

Esto será necesario realizarlo para cada Pixel.

En el dibujo se muestra el esquema para un único pixel.

Son señales analógicas independientes, cada una irá por su propio canal: el canal de rojo, del verde y del azul.

En el dibujo sólo se muestra para la componente verde.

Estas señales eléctricas se pueden manipular, almacenar, transportar y volver a convertir en ondas electromagnéticas para que las podamos ver.

Igual que pasaba con el audio, la información de la intensidad de luz del pixel está asociada a la forma de la onda.

La degradación de estas señales implica pérdida de información.

Por ello pasamos al mundo digital.

Vídeo digital

Al igual que sucedía con el audio digital, el vídeo digital son NÚMEROS.

Y por tanto se usan los mismos circuitos digitales para su manipulación, transporte, almacenamiento y transmisión por internet.

Los circuitos digitales manejan números, y da igual de dónde proceden esos números, si representan señales de audio, de vídeo o datos.

El esquema de un sistema digital de vídeo aplicado a un único píxel, es el siguiente:

Para cada píxel tenemos tres señales analógicas que se corresponden con las intensidades de los tres colores primarios.

Estas señales se convierten a números usando los conversores A/D y los tres canales se combinan en uno único mediante un multiplexor.

Es esta la señal digital que se manipula, almacena y transporta.

En la recepción el canal de datos se demultiplexa obteniéndose de nuevo los canales correspondientes a cada uno de los colores primarios.

Se convierte a una señal analógica y se muestra en la pantalla.

Transmisión de vídeo digital

El esquema de transmisión del vídeo digital es similar al del audio:

Primero se captura el vídeo, y se pasa a digital.

Es decir, se convierte a números.

La información de vídeo cruda es enorme, por lo que los CODECs son indispensables para reducir su tamaño.

Finalmente se encapsula en frames que van en los paquetes que se envían por Internet (PDUs).

Captura de vídeo

  • La magia está en el transductor CCD
  • Sensor con células fotoeléctricas, cada una capta la intensidad de un color
  • Muestreo en tiempo y en espacio
  • ¡Muchísima información!

Compresión de vídeo

  • Hay muchísima información:
    • Una señal PAL de televisión requeriría un bitrate de 216Mbps
    • Un DVD sólo podría almacenar 21 segundos de señal PAL
  • Usamos Códecs: Codificador + decodificador
  • Hay mucha redundancia, tanto temporal como espacial. El objetivo de los codecs es eliminar esta redundancia (sacar factor común)
  • Tipos de compresión:
    • Compresión sin pérdidas: Compresión reversible con el que se obtiene la imagen original. Factores de compresión de un orden de magnitud: 1M --> 100K
    • Compresión con pérdidas: La señal codificada NO es idéntica a la original. Mayor ratio de compresión a coste de pérdida en la calidad de la imagen

Encapsulado de vídeo

  • El vídeo se encapsula en frames (PDU)
  • En estos frames encontramos información como:
    • Inicio y fin de la imagen
    • Referencia temporal
    • Formato del vídeo: tamaño pantalla
    • Tipo de fotograma
    • Vídeo codificado
    • ....

Códecs de vídeo más comunes

  • MPEG2 (1996). Se usa en TDT
  • H.263 (1995). Muy fácil de codificar. Móviles
  • H.264/MPEG-4 (2001). Alta calidad. Alta compresión
  • Spark Sorenson. Codec usado en Flash (FLV)
  • Theora: Libre. Calidad un poco inferior a MPEG4
  • VP8. De google, pero libre. Calidad algo inferior a H264

FourCC

Contenedores Multimedia

  • Permiten encapsular y organizar flujos de media
  • Multiplexación: vídeo, audio, subtítulos
  • Organización: Divisiones o capítulos. Menús
  • Identificación: Información precisa sobre los CODECs y parámetros
  • Indexación. Permite hacer saltos (SEEK)
  • Incorporación de meta-información: autor, título, etc....
  • Contenedores más comunes:
    • AVI (1992). Microsoft
    • MP4
    • VOB. CDs y DVDs
    • 3GP. Móviles
    • FLV. Contenedores de Adobe
    • MKV. Matroska. Libre
    • WebM. Libre. Extensión de Matroska. Diseñado para streaming

WooClap Time!

Descargas

Autor

Jesús Parrado Alameda (jesusgpa)

Creditos

Licencia

Enlaces