¿Por qué un archivo
comprimido ocupa menos?
Para hacer que un archivo
ocupe menos existen diversos formatos de compresión, así como programas. La
compresión lleva con nosotros casi 30 años, y permite que un archivo ocupe
hasta varias veces menos de su tamaño original. Gracias a esta compresión se ha
podido almacenar y transmitir más información en menor tiempo, sobre todo en
conexiones a Internet cuyas velocidades son incluso hoy en día lentas.
La compresión se utiliza en
todo tipo de archivos, y existen dos tipos: compresión sin pérdidas y
compresión con pérdidas, en función del formato y del tipo de compresión del
que estemos hablando. Vamos a ver en profundidad en qué consiste cada uno de
ellos.
Compresión
sin pérdida (lossless compression)
Este tipo de compresión
funciona básicamente eliminando la redundancia. Es decir, si tenemos BBBEEEEETTT, el programa compresor lo
que hará será interpretar B3E5T3,
reduciendo la repetición y el espacio que ocupa la misma cantidad de
información. De esta manera, la información que se repite se sustituye por
instrucciones que le dicen al ordenador cuántas veces los datos idénticos entre
sí se repiten. Esto en lenguaje de programación no se puede hacer como tal,
pero es una manera de representar el proceso que siguen estos programas, y
además existen otros procesos más complejos de reducción de tamaño.
Debido al funcionamiento que
tiene este sistema, es lógico que los ordenadores con procesadores más potentes
compriman los archivos más rápido, ya que procesan más instrucciones por
segundo, a la vez que es necesario tener unidades de alta velocidad. Un archivo
se comprimirá más rápido en un SSD que en un HDD.
Este tipo de compresión es
la que utilizan formatos como RAR o ZIP. Es por ello que el programa tiene la
llave para descomprimir y volver a restablecer el código tal y como estaba en
un inicio. Esta ‘reinterpretación’ es la causa por lo que no podemos abrir un
archivo comprimido directamente sin descomprimirlo antes.
La compresión sin pérdida se
utiliza también mucho en videojuegos. Cuando descargamos un juego de Steam,
este puede ocupar unos 30 GB, pero sólo se descargan entre 7 y 10 GB. O un
juego de 60 GB suele tener una descarga de 25 o 30 GB. Con los DVD las
instalaciones podían llegar a tardar horas por la lenta velocidad de lectura de
estas unidades junto con los largos procesos de descompresión.
Otro formato que se
beneficia mucho de este tipo de compresión es el PNG. Este formato de imagen no
tiene pérdidas, por lo que si lo utilizamos para una fotografía el espacio
final que éste ocupará será mayor. Sin embargo, si utilizamos imágenes con
muchas partes uniformes, podremos tener un archivo que ocuparía menos que en
formato JPG, gracias a que PNG utiliza la redundancia para reducir el tamaño de
los archivos, además de que las fotografías en PNG se pueden guardar sin fondo.
En las dos imágenes de abajo
tenemos a la izquierda una imagen en PNG que ocupa 6 KB. La segunda es JPEG al
100% de compresión y 35 KB de tamaño. La tercera es JPEG al 30% y 15 KB de
tamaño, y por último JPEG a un 1% de compresión con 11 KB, dando un ratio de
compresión 100:1.
imagen-1 imagen-2 imagen-3
imagen-4
Compresión con pérdida
(lossy compression)
A diferencia de la
compresión sin pérdida, la compresión con pérdida sí que deja información por
el camino, y no permite reconstruir el archivo original a partir del archivo
comprimido. Este formato de compresión se utiliza en todo tipo de formato
audiovisual, como películas, series, música, imágenes, etcétera.
En el caso de los archivos
MP3, lo que ocurre es que en el proceso de compresión se eliminan frecuencias
que están por encima o por debajo de lo que el oído humano puede oír, así como
la cantidad de información que contiene la canción. Por ello, cuando una
canción se comprime demasiado, empieza a sonar plana y con mala calidad.
En el caso del vídeo,
tenemos ejemplos muy claros con los vídeos de YouTube, que ocupan mucho menos
que los vídeos originales, sacrificando calidad en el camino para funcionar
acorde a la mayoría de conexiones más lentas. Para comprimir los vídeos, al
igual que en el caso de las fotografías con formatos JPEG, se asocian píxeles
cercanos unos a otros para aprovecharse de la redundancia en la medida de lo
posible.
La compresión de los
archivos multimedia es muy práctica, ya que hay factores de compresión que
pueden no generar diferencias perceptibles por los humanos. Por ejemplo, un
archivo FLAC de 50 MB puede comprimirse en un MP3 de 10 MB, y la diferencia es
prácticamente imperceptible, o un archivo de vídeo puede comprimirse hasta 50
veces sin notar pérdida. Lo mismo suele ocurrir con el JPEG si no se abusa
demasiado.
El caso de los JPEG
comprimidos en exceso lo tenemos en las fotos que circulan ad infinitum por
WhatsApp, las cuales se comprimen cada vez que se reenvían. En otras
plataformas como Telegram se puede mandar el archivo, el cual va asociado a su
link en la nube, por lo que éste no se recomprime.
Debido a que hay pérdida de
información, este tipo de compresión no funcionaría por ejemplo con un archivo
de texto, ya que no sería posible recuperar la información original.