La aspiración de obtener mejores experiencias visuales –ya sea a través de resoluciones cada vez más elevadas o de metraje inmersivo en 360º– provoca un incremento de la tasa de transferencia de datos en las estructuras de producción a una velocidad superior a la que las infraestructuras disponibles actualmente son capaces de sostener. Este dilema es válido tanto para redes broadcast tradicionales –cuyo reemplazo por tecnologías de nueva generación supone un coste muy alto– como para redes IP –que precisan enrutar múltiples flujos de vídeo de manera simultánea–.

Dispositivo de control para transmisión de vídeoI por IP.
Dispositivo de control para transmisión de vídeo por IP.

Aunque se podría pensar que los protocolos de compresión de vídeo ya estandarizados resultan adecuados para resolver estos problemas, en la práctica los estándares como el JPEG, el JPEG 2000 o el HEVC no cumplen con los requisitos necesarios para las estructuras de producción cinematográficas y televisivas. No están diseñados para alcanzar una compresión sin pérdida visualmente apreciable, manteniendo una latencia ultra baja y una mínima complejidad al mismo tiempo. Como consecuencia, los costes de desarrollo en los que habría que incurrir para adaptarlos a dichas necesidades son demasiado altos como para justificar su aplicación. Para superar esta encrucijada el comité JPEG –denominado formalmente ISO/IEC SC29 WG1– inició hace unos años la estandarización de un codec de compresión novedoso llamado JPEG XS.

Ejemplos de uso y mercados objetivos

A pesar de que el JPEG XS se puede utilizar –en general– en cualquier aplicación que precise baja complejidad y compresión de baja latencia, su diseño responde específicamente a los requisitos de las producciones en directo, los flujos de trabajo de la cinematografía digital y de emisión de televisión, los mercados audiovisuales profesionales, las aplicaciones de extensión de KVM y los juegos de realidad virtual.

Transmisión de vídeo en directo (streaming)

Para reducir el coste de este tipo de transmisiones, el JPEG XS aspira a ser de aplicación en todos los escenarios en los que transmitimos imágenes sin compresión –sobre infraestructuras tradicionales o sobre redes de producción IP– hoy en día. Para conseguirlo, es tan importante la calidad de compresión –sin pérdida visualmente apreciable– como la robustez de múltiples ciclos de codificación y decodificación –de modo que se puedan encadenar varios dispositivos que compriman y descompriman la señal por sí solos–.

Massimo y Hoffmann recomiendan que los codecs mantengan la calidad de imagen durante al menos siete ciclos de compresión-descompresión. Además –tal y como indican Cronk y Meyer– la latencia adicional que introduzca en el sistema cada ciclo de codificación y decodificación debería mantenerse por debajo de un par de líneas. De este modo se evitaría cualquier retardo –perceptible por el ser humano– entre señales que se procesen en cadenas diferentes.

Tabla de proporciones de compresión para streaming.
Tabla de proporciones de compresión para streaming.

Las tasas de compresión que soporta el codec pueden derivar de las resoluciones, las velocidades de grabación y las infraestructuras ya disponibles.

Flujos de trabajo basados en archivos comprimidos

Los flujos de trabajo basados en archivos se pueden beneficiar de la compresión de baja complejidad de manera similar a como lo hacen las transmisiones de vídeo en directo –evitando que la trasferencia de datos dentro de la red se transforme en un cuello de botella–. En los casos en los que la cámara ya haya generado imágenes comprimidas, el tiempo de ingesta se puede reducir de forma significativa. Resulta imperativo contar con un software veloz de codificación y decodificación para que sea efectivo. Los ciclos múltiples de codificación deben proporcionar la misma calidad que una única operación de compresión y descompresión.

Otras aplicaciones

Además de en los supuestos mencionados, el codec JPEG XS está diseñado para aplicarse en la transmisión de señales entre los visores de realidad virtual y los ordenadores que generan la imagen fuente –lo que precisa de latencias muy bajas–.

Visor de realidad virtual.
Visor de realidad virtual.

La compresión de baja complejidad de fotogramas –en la memoria intermedia de dispositivos de visualización o en los codificadores de vídeo– permite reducir los costes del sistema. Además, disminuye el consumo de energía de los dispositivos incrustados.

Plataformas objetivo

Para soportar todos los supuestos que hemos descrito, el codec JPEG XS necesita permitir su desarrollo en tiempo real y en muchas plataformas diferentes –como en las FPGA, las CPU, las GPU y los ASIC–. Dado que todas estas plataformas tienen propiedades bastante diferentes, se imponen restricciones estrictas al algoritmo de compresión que se utiliza.

Por ejemplo, los desarrollos para CPU de un sólo núcleo apenas ofrecen un paralelismo de grano fino restringido por SIMD. Por otra parte, los desarrollos de núcleos múltiples sufren de retrasos en la sincronización cuando la granularidad del paralelismo es muy pequeña. Las FPGA sobresalen por su gran cantidad de paralelismo de grano fino y, en consecuencia, pueden superar a las CPU. No obstante, las frecuencias de reloj que se pueden alcanzar están limitadas y sólo se puede almacenar una fracción de una imagen en un momento dado para evitar el uso de memorias externas. Por último, las GPU pueden ser extremadamente rápidas, pero necesitan una cantidad masiva de paralelismo para ser eficientes.

Representación gráfica de la ley de Amdahl. La mejora en la velocidad de ejecución de un programa como resultado de la paralelización está limitada por la porción del programa que no se puede paralelizar. Por ejemplo, si el 10% del programa no puede paralelizarse, el máximo teórico de aceleración utilizando la computación en paralelo sería de 10x no importa cuántos procesadores se utilicen.
Representación gráfica de la ley de Amdahl. La mejora en la velocidad de ejecución de un programa como resultado de la paralelización está limitada por la porción del programa que no se puede paralelizar. Por ejemplo, si el 10% del programa no puede paralelizarse, el máximo teórico de aceleración utilizando la computación en paralelo sería de 10x no importa cuántos procesadores se utilicen.

Por lo tanto, para soportar de manera óptima las diferentes plataformas objetivo, el JPEG XS tiene que proporcionar paralelismo de grano fino y de grano grueso. Todavía más importante es que pueda codificar y decodificar en tiempo real, en FPGA, GPU, GPU y ASIC y en el mismo flujo de datos –a pesar de que los ASIC tienen propiedades muy distintas–.

Propiedades clave del codec JPEG XS

Basándonos en todo lo descrito hasta ahora, se pueden definir las siguientes propiedades clave para el codec JPEG XS:

La televisión pública japonesa (NHK) ya ha comenzado sus emisiones regulares en 8K, -destinadas a ser masivas en las olimpiadas de 2020– empleando el codec propietario TICO RDD35 (basado en JPEG XS) lanzado por la firma intoPIX en diciembre de 2018.
La televisión pública japonesa (NHK) ya ha comenzado sus emisiones regulares en 8K, -destinadas a ser masivas en las olimpiadas de 2020– empleando el codec propietario TICO RDD35 (basado en JPEG XS) lanzado por la firma intoPIX en diciembre de 2018.
  • Imagen –sin pérdida de calidad visualmente apreciable– para proporciones de compresión de hasta 6:1, tanto para contenidos naturales como de pantalla y para –al menos– siete ciclos de codificación y decodificación.
  • Desarrollos de baja complejidad en CPU, GPU, FPGA y ASIC, evitando cualquier cuello de botella en serie durante el proceso de codificación y decodificación.
  • Latencia que no exceda de 32 líneas en un ciclo de codificación y decodificación.
  • Los desarrollos para FPGA no deben requerir memoria externa y no pueden  ocupar más de un 50% de una Artix-7 XC7A200T o más de un 25% de una Cyclone V 5CEA9 –cuando se apliquen a contenido de vídeo en 4K a 60 fps, con frecuencia de muestreo 4:4:4 y con profundidad de color de 8 bits–.
  • Un procesador Intel Core i7 debería ser capaz de manejar un desarrollo de software en tiempo real –con contenido de vídeo en 4K a 60 fps y con frecuencia de muestreo 4:4:4–.

Dejar una respuesta

¡Por favor, introduce tu comentario!
Por favor, introduce aquí tu nombre

       

Los comentarios en esta página pueden ser moderados; en tal caso no aparecerán inmediatamente al ser enviados. Las descalificaciones personales, los comentarios inapropiados, de extensión desmesurada o con demasiados errores ortográficos podrán ser eliminados. Asimismo, en caso de errores considerados tipográficos, el editor se reserva el derecho de corregirlos antes de su publicación con el fin de mejorar la comprensión de los mismos. Recordamos a los lectores que el propósito final de este medio es informar. Para recibir soporte sobre dispositivos o problemas particulares les invitamos a contactar con el correspondiente servicio de atención al cliente.