Migrate from lz4net to K4oS.Compressison.LZ4

Merged
#600 · Created  · Last updated

Description

What is the purpose of this Pull Request?

This migrates NINA from lz4net to K4oS.Compression.LZ4, the successor to lz4net and is fully interoperable with the LZ4 frame format. A side effect of this is an apparently improvement in compression times for the same data set compared to lz4net

How were the changes tested?

  • All tests pass, especially the ones related to XISF compression

  • NINA was able to open LZ4 and LZ4HC-compressed files generated by PixInsight

  • PixInsight was able to open the same files that were generated by NINA

Notes

Performance comparison between NINA 1.10 (lz4net) and 1.11:

NINA 1.10: QHY600 1s dark frame LZ4 compressed 122342976 bytes to 61642405 bytes (49.62%), Elapsed: 00:00:00.0815302 LZ4HC compressed 122342976 bytes to 60044310 bytes (50.92%), Elapsed: 00:00:03.4472693 Random data 9600x6422 16bit / Mean=5000 StdDev=100 LZ4 compressed 123302400 bytes to 91733451 bytes (25.6%), Elapsed: 00:00:00.3290920 LZ4HC compressed 123302400 bytes to 76169985 bytes (38.23%), Elapsed: 00:00:13.4873290 NINA 1.11: QHY600 1s dark frame LZ4 compressed 122342976 bytes to 61664717 bytes (49.6%), Elapsed: 00:00:00.1883917 LZ4HC compressed 122342976 bytes to 60046225 bytes (50.92%), Elapsed: 00:00:02.2559479 Random data 9600x6422 16bit / Mean=5000 StdDev=100 LZ4 compressed 123302400 bytes to 87801204 bytes (28.79%), Elapsed: 00:00:00.2891444 LZ4HC compressed 123302400 bytes to 78165372 bytes (36.61%), Elapsed: 00:00:04.7418472

 

0 attachments

0 comments

Loading commits...