Qué es TGS, el nuevo formato de animaciones de Telegram que ocupan mucho menos que los gifs

Telegram estrena nueva versión y lo hace con una peculiar característica: los stickers animados. No es la primera aplicación en incluirlos, aunque posiblemente sea la que mejor lo hace, pues son animaciones extremadamente suaves -de hasta 60 fotogramas por segundo- y que ocupan muy poco espacio.

Detrás de estos stickers se encuentra el formato TGS, capaz de generar animaciones más fluidas que un GIF pero ocupando mucho menos tamaño, en lo que Telegram denomina una mezcla de gráficos vectoriales, métodos de empaquetado y magia prohibida.

Vectores en lugar de píxeles

Los stickers animados se basan en la librería opensource Lottie, creada por AirBnB

Para los stickers animados, Telegram ha optado por no reinventar la rueda, sino reusar tecnología ya presente y usada en vada vez más aplicaciones y páginas web. Los stickers de Telegram se basan en Lottie, una librería de animaciones creada por el departamento de diseño de AirBnB que genera archivos JSON que se pueden integrar y reproducir en páginas web y aplicaciones Android y iOS.

Los archivos GIF se basan en mapas de bits por lo que necesitan guardar toda la información de cada fotograma que los componen y, aunque usan distintas técnicas para ahorrar espacio al hacer cálculos para reusar información- el resultado puede ser un archivo de considerable tamaño. Y, cuantos más fotogramas y más calidad tenga la animación, más ocupará.

Las animaciones de Lottie por su parte son vectoriales. A groso modo, en lugar de guardar una informacion de cada pixel, se guarda la información para generar la forma y su animación. Si es un diseño sencillo -y generalmente los stickers suelen serlo- el resultado es un archivo de mucho menor tamaño que un archivo GIF.

Ejemplo de imagen vectorial (un SVG con el logotipo de Twitter)

Lottie es una librería que permite exportar animaciones creadas en Adobe After Effects mediante un plugin propio: Bodymovin. Este plugin genera un archivo JSON, que es básicamente un documento de texto que contiene toda la información para generar la imagen y su animación. Como documento de texto que es, su tamaño puede incrementarse rápidamente si es una animación compleja, larga o con muchos elementos, ocupando en torno a los 100 KB.

Un vistazo a…
25 TRUCOS de TELEGRAM para APROVECHARLO AL MÁXIMO

TGS = animación Lottie comprimida en ZIP

Lottie y sus animaciones JSON tienen muy buen aspecto de por sí, pero Telegram ha ido un paso más allá. Como comentábamos antes, los archivos JSON de Lottie tienen toda la información en texto plano, un tipo de documentos que generalmente reciben una muy buena compresión. ¿Por qué conformarte con 80 Kilobytes cuando pueden ser 10?

Así, el equipo de Telegram ha creado un fork para el plugin de Lottie Bodymovin, que recibe el nombre de Bodymovin-TG. Básicamente es casi lo mismo, pero lo que genera es un archivo ZIP que contiene en su interior el archivo JSON con la animación.

El resultado es un archivo mucho menor con la única penalización de que debe descomprimirse antes de usarse, lo cual no es un problema para la potencia de los móviles de hoy en día (y, además, son archivos muy pequeños de todos modos).

Un archivo TGS en verdad es un ZIP con la animación vectorial en su interior

Así pues, realmente no hay mucha magia prohibida detrás de los stickers animados de Telegram, sino librerías de código abierto, con una pequeña vuelta de tuerca para adaptarlas mejor a la aplicación. No es magia, es ciencia.

Ver todos los comentarios en https://www.xatakandroid.com

VER 3 Comentarios

Portada de Xataka Android