aspose.info
ES

LZ4 - Formato de archivo comprimido LZ4

Actualizado

¿Qué es un archivo LZ4?

Un archivo con la extensión .lz4 es un archivo comprimido creado con aplicaciones/utilidades que admiten la compresión LZ4. El algoritmo LZ4 se centra en el equilibrio entre la velocidad y la relación de compresión. Los archivos LZ4 comprimidos se pueden crear usando la utilidad de línea de comandos LZ4 y se pueden descomprimir usando la misma.

Formato de archivo LZ4

El formato de archivo LZ4, basado en el algoritmo de compresión LZ4, es independiente del tipo de CPU, el sistema operativo, el sistema de archivos y el conjunto de caracteres. Es adecuado para la compresión de archivos y la compresión de transmisión mediante el algoritmo LZ4. Yann Collet llevó a cabo la implementación inicial del formato LZ4 en lenguaje C en 2011 y está disponible para referencia del desarrollador en Github .

Formato de cuadro LZ4

La estructura general del formato de archivo LZ4 se muestra a continuación.

MagicNbF. DescriptorBloque(…)Marca finalC. Suma de comprobación
4 bytes3-15 bytes4 bytes0-4 bytes

Número mágico

4 Bytes, formato Little Endian. Valor: 0x184D2204

Descriptor de trama

El descriptor de trama consta de 3 a 15 bytes y es la parte más importante de las especificaciones. Juntos, los campos Magic_Number y Frame_Descriptor se denominan encabezado de trama LZ4 y su tamaño varía entre 7 y 19 bytes. Es como se muestra a continuación.

FLGBD(Tamaño del contenido)(Identificación del diccionario)HC
1 byte1 byte0 - 8 bytes0 - 4 bytes1 byte

Bloques de datos

Cada bloque de datos sigue el siguiente orden.

Tamaño de bloquedatos(Bloque de suma de comprobación)
4 bytes0 - 4 bytes

Marca final

El flujo de bloques finaliza cuando el último bloque de datos va seguido del valor de 32 bits 0x00000000.

Suma de comprobación de contenido

Content_Checksum verifica la validez del contenido que se decodifica correctamente y se lleva a cabo utilizando el resultado del algoritmo xxHash-32. Valida los resultados de la transmisión exitosa de todos los bloques en el orden correcto y sin ningún error.

Referencias

Véase también