Técnicas Avanzadas en Codificación Multimedia: Tasa, Errores y Escalabilidad
Clasificado en Informática
Escrito el en
español con un tamaño de 6,63 KB
Codificación de Canal
Protección Desigual de Errores (VEP)
La codificación de canal basada en la Protección Desigual de Errores (Unequal Error Protection, VEP) es una técnica donde los bits que codifican cada parámetro de la síntesis se clasifican en función de su repercusión en la señal decodificada. A las clases de bits más importantes se les asigna una mayor protección contra errores.
En este esquema, se suelen establecer tres clases de sensibilidad:
- Clase Ia (muy sensible): Incluye casi todos los bits que codifican los parámetros del filtro de síntesis y algunos del filtro de predicción a largo plazo.
- Clase Ib (sensibilidad media): Contiene el resto de los bits del filtro de predicción a largo plazo y los más significativos de los parámetros de excitación.
- Clase Ic (sensibilidad baja): Agrupa el resto de los bits de la excitación.
Control de Tasa
El codificador utiliza el control de tasa para ajustar el ancho de banda (bandwidth) a unas limitaciones concretas, maximizando la calidad de la señal. Los algoritmos de control de tasa ajustan dinámicamente los parámetros de cuantificación, como ocurre en la codificación de voz AMR (Adaptive Multi-Rate) o en vídeo con modos CBR (Constant Bitrate) y VBR (Variable Bitrate).
Desafíos del Control de Tasa en Vídeo
El control de tasa en vídeo presenta varios problemas específicos:
- El ancho de banda requerido puede ser muy variable e impredecible.
- Es necesario situar un buffer en el destino para amortiguar las fluctuaciones de la tasa de bits.
- Este buffer puede saturarse (overflow) o vaciarse (underflow), causando interrupciones en la reproducción.
- Se debe establecer un control de tasa a distintos niveles (trama, grupo de imágenes, etc.) para gestionar la complejidad.
Modos de Tasa: VBR vs. CBR
Tasa de Bits Variable (VBR)
En el modo VBR (Variable Bitrate), el objetivo principal es proporcionar una calidad constante. Esto se logra ajustando la tasa de bits en función de la complejidad de la escena, a menudo manteniendo un parámetro de cuantificación (QP) fijo o dentro de un rango estrecho.
Tasa de Bits Constante (CBR)
Por otro lado, en el modo CBR (Constant Bitrate), el objetivo es mantener una tasa de bits constante. Para ello, se realiza una estimación de la complejidad de la fuente para hacer una asignación de bits adecuada, lo que puede implicar variar la calidad de la codificación.
Esquema Básico de CBR
- Limitador de QP: Para evitar variaciones bruscas de calidad que producen efectos visuales perniciosos, se limitan las variaciones del parámetro de cuantificación (QP) a un máximo de ±2 unidades entre dos tramas consecutivas.
- Buffer virtual: Se sitúa en el codificador para simular el comportamiento del buffer en el decodificador. El nivel de llenado del buffer virtual se calcula utilizando la diferencia entre el número total de bits generados y una tasa constante equivalente al ancho de banda del canal. Es necesario especificar la capacidad del buffer y su nivel de llenado inicial.
Escalabilidad en la Codificación Multimedia
La escalabilidad es la capacidad de un flujo de bits codificado de ser adaptado mediante la eliminación de partes de la secuencia. Esto permite ajustar la tasa de bits a las necesidades de los usuarios finales, que pueden tener distintos terminales y condiciones de red.
Escalabilidad en Voz y Audio
Los codificadores de voz y audio están fuertemente ligados a los modelos de producción (voz) y percepción (audio) humanos. Generalmente, para cada tasa de bits se diseñan modelos específicos que minimizan la distorsión. Esto dificulta la adaptación a un rango amplio de tasas, aunque existen soluciones escalables para audio multicanal y codificación de voz en banda ancha.
Escalabilidad en Imagen y Vídeo
Existen diferentes aproximaciones para lograr la escalabilidad en vídeo:
- Conmutación entre flujos de vídeo (Simulcast): Se transmiten simultáneamente varias secuencias con distintos requerimientos (ej. diferentes resoluciones o tasas de bits). El receptor puede conmutar entre ellas en puntos específicos. No es una solución óptima desde el punto de vista de la eficiencia de codificación.
- Codificación escalable: Se genera un único flujo de bits estructurado en capas. Se pueden utilizar técnicas como el uso de planos (capa base y capas de mejora), tramas I, B, P como en MPEG-2, imágenes sin referencia o el uso de tramas B o P jerárquicas.
Modos de Escalabilidad en Vídeo
La escalabilidad en vídeo se puede manifestar de varias formas:
- Reducción de fidelidad (Escalabilidad SNR): Se reduce la calidad o relación señal-ruido.
- Reducción de tamaño de imagen (Escalabilidad espacial): Se reduce la resolución del vídeo.
- Reducción de tasa de trama (Escalabilidad temporal): Se reduce el número de fotogramas por segundo.
- Reducción de definición: Combinación de las anteriores.
- Selección de contenidos: Se transmiten solo las partes de interés de la escena.
Tipos de Escalabilidad de Calidad (SNR)
- Escalabilidad de Grano Grueso (Coarse-Grained Scalability, CGS): Es un caso especial de escalabilidad espacial donde los tamaños de la capa básica y la de mejora son iguales. Se aplican escalones de cuantificación más finos en las capas de mejora sobre la señal residual. La conmutación solo puede realizarse en puntos específicos de la relación señal-ruido (SNR).
- Escalabilidad de Grano Medio (Medium-Grained Scalability, MGS): Añade más capas y utiliza tramas clave, permitiendo la conmutación entre capas en cualquier momento para una mayor flexibilidad.
- Control del Deslizamiento (Drift): Es crucial gestionar el efecto de drift, un error que se propaga y es causado por la falta de sincronización en la estimación de movimiento entre el codificador y el decodificador cuando se descartan capas de mejora.