Qué es formato FLAC

ree Lossless Audio Codec (FLAC) es un códec de audio que permite que el audio digital sea comprimido sin pérdidas de tal manera que el tamaño del archivo de audio se reduce sin que se pierda ningún tipo de información. El audio digital comprimido por el algoritmo de FLAC típicamente se puede reducir de 50 a 60% de su tamaño original,3 y se descomprime en una copia idéntica de los datos de audio originales. La desventaja es que el archivo ocupa mucho más espacio del que se obtendría al aplicar un algoritmo de compresión con pérdida.
FLAC es un formato abierto con licencia libre de regalías y una implementación de referencia la cual es software libre. FLAC cuenta con soporte para etiquetado de metadatos, inclusión de la portada del álbum, y la búsqueda rápida.
Aunque FLAC no puede almacenar datos de punto flotante y el soporte de reproducción en dispositivos portátiles de audio y sistemas de audio de alta calidad es limitado en comparación con formatos con pérdida como MP3 o PCM sin comprimir, FLAC cuenta con el apoyo de más dispositivos de hardware que formatos comprimidos de la competencia como WavPack.

El proyecto fue iniciado y desarrollado por el programador Josh Colson.1 El formato de flujo de bits se congeló cuando FLAC entró en fase beta con el lanzamiento de la versión 0.5 de la implementación de referencia el 15 de enero de 2001. La versión 1.0 fue lanzada el 20 de julio de 2001.1
El 29 de enero de 2003, la Fundación Xiph.Org y el proyecto FLAC anunciaron la incorporación de este codec bajo la bandera de Xiph.org. Xiph.org está detrás de otros formatos de compresión libres tales como Icecast, Vorbis, Theora y Speex.1 4
La Versión 1.3.0 de FLAC fue lanzada el 26 de mayo de 2013. El desarrollo fue trasladado al repositorio de Xiph.org

El proyecto FLAC incluye:
  • El códec con el cual deberá ser codificada la información de audio.
  • El formato contenedor propiamente dicho
  • La biblioteca libFLAC, que permite programar compresores y reproductores, además incluye los metadatos de los archivos.
  • LibFLAC++
  • Flac, Permite codificar y decodificar los FLAC streams por medio de la línea de comandos usando la biblioteca libFLAC
  • Metaflac, editor de metadatos para ficheros flac por medio de línea de comandos.
  • Plugins para diferentes reproductores de audio como Winamp y Foobar2000, entre otros.
FLAC no soporta muestras en coma flotante, sino en coma fija. Admite cualquier resolución PCM de 4 a 32 bits por muestra y cualquier tasa de muestreo desde 1 hasta 655350 Hz, en incrementos de 1 Hz,6 y cualquier número de canales de audio, desde 1 hasta 8.7
Los canales pueden ser agrupados en casos como en estéreo y 5.1 canales de surround para aprovechar las correlaciones entre canales e incrementar la compresión. FLAC utiliza sumas de comprobación de redundancia cíclica para identificar tramas de datos corruptas cuando es usado en un protocolo de flujo de audio, y además tiene un cálculo hash de MD5 del audio raw PCM almacenado en la cabecera de metadatos STREAMINFO.
FLAC usa la predicción lineal para convertir las muestras de audio en una serie de números pequeños sin correlación (conocidos como números de residuo), los cuales son almacenados eficientemente mediante el uso de la Codificación Golomb-Rice. También usa codificación RLE para bloques de muestras idénticas, como en los momentos de silencio del audio. Para el etiquetado de los archivos FLAC usa el mismo sistema Vorbis comments.6 La API libFLAC está organizada en flujos, flujos de búsqueda y archivos, que figuran en orden creciente de abstracción del flujo de bits base de FLAC. La mayoría de las aplicaciones FLAC se suelen ceñir a la codificación/decodificación usando libFLAC en la interfaz de nivel de archivo.


Comentarios