MathisRosenhauer / libaec

libaec - Adaptive Entropy Coding library
https://gitlab.dkrz.de/k202009/libaec
BSD 2-Clause "Simplified" License
12 stars 9 forks source link

Any relationship with libszip ? #38

Open yurivict opened 1 week ago

yurivict commented 1 week ago

libszip is distributed with the HDF5 file format library: https://support.hdfgroup.org/ftp/lib-external/szip/2.1.1/src/szip-2.1.1.tar.gz

It implements the "extended-Rice lossless compression algorithm", and you implement "extended Golomb-Rice coding".

Further, both libraries install the header file include/szlib.h

Even further, libaec can be used to compile HDF5 in place of libszip.

How are two libraries related?

MathisRosenhauer commented 1 week ago

Both libraries implement the same compression scheme. libaec was developed from scratch because people in the weather and climate community needed an open source implementation of the CCSDS standard. With libaec as a free reference implementation, we could get this compression scheme into the GRIB standard. The compatibility layer in szip.h allows libaec to also be used with HDF5 and netCDF. That was just a byproduct, though.