Fast, efficient, lossless compression of fastq files
Clone or download
Latest commit a65a243 Apr 3, 2018
Permalink
Failed to load latest commit information.
samples Handle oversized records Jan 15, 2014
tools More preparations Oct 9, 2013
.gitignore Snapshot: Commit before converting recs to gap/same/pag module Nov 15, 2013
Makefile eliminate utest Apr 3, 2018
README.md README & Usage grammer correction Jul 7, 2014
base2_ranger.hpp usr.cpp: increase sanity limit of records # from 1G to 3G Apr 3, 2018
bfiler.cpp Add bfiler.?pp Dec 12, 2013
bfiler.hpp usr.cpp: increase sanity limit of records # from 1G to 3G Apr 3, 2018
coder.hpp Add README.md Dec 15, 2013
common.hpp usr.cpp: increase sanity limit of records # from 1G to 3G Apr 3, 2018
config.cpp usr.cpp: increase sanity limit of records # from 1G to 3G Apr 3, 2018
config.hpp Handle oversized records Jan 15, 2014
filer.cpp usr.cpp: increase sanity limit of records # from 1G to 3G Apr 3, 2018
filer.hpp usr.cpp: increase sanity limit of records # from 1G to 3G Apr 3, 2018
filer.tst.cpp Buf fix (recent)- compressed files over 4G Jun 27, 2014
gens.cpp usr.cpp: increase sanity limit of records # from 1G to 3G Apr 3, 2018
gens.hpp usr.cpp: increase sanity limit of records # from 1G to 3G Apr 3, 2018
log64_ranger.hpp Add bfiler.?pp Dec 12, 2013
main.cpp usr.cpp: increase sanity limit of records # from 1G to 3G Apr 3, 2018
power_ranger.hpp usr.cpp: increase sanity limit of records # from 1G to 3G Apr 3, 2018
qlts.cpp Check size of compressed file before decode Jun 27, 2014
qlts.hpp Handle oversized records Jan 15, 2014
recs.cpp By user request, adjust to Darwin Kernel Dec 22, 2014
recs.hpp Handle oversized records Jan 15, 2014
usrs.cpp usr.cpp: increase sanity limit of records # from 1G to 3G Apr 3, 2018
usrs.hpp usr.cpp: increase sanity limit of records # from 1G to 3G Apr 3, 2018
utest.cpp Align log64_ranger object to 8 bytes. Dec 2, 2013
xfile.cpp REC, GEN, QLT: Increased max line to 600 Dec 17, 2013
xfile.hpp USR: Add deliminator of x_file Dec 17, 2013

README.md

slimfastq

slimfastq is a cli application that compresses/decompresses fastq files. It features:

  • High compression ratio
  • Relatively low cpu, memory usage
  • Truly lossless compression/decompression

Usage

% slimfastq *file.fastq* *new-file.sfq*   : compress *file.fastq* to *new-file.sfq* 
% slimfastq -1 *file.fastq* *new-file.sfq*: compress *file.fastq* to *new-file.sfq*, using little cpu/memory resources
                                           (-1 to -4 are levels of compression/resources tradeoffs, -3 is default)

% slimfastq *file.sfq*                    : decompress *file.sfq* to stdout (format is determined by stamp, not name)
% slimfastq *file.sfq* *file.fastq        : decompress *file.sfq* to *file.fastq*

% slimfastq -h                            : get help

% gzip -dc *file.fastq.gz* | slimfastq -f *file.sfq* : convert from gzip to sfq format (and save a lot of disk space)

Install

Compile via 'make', copy the executable "slimfastq" to any location. (If the compilation fails, please let me know)

License

The BSD 3-Clause

Platform

slimfastq was developed and optimized for x86_64 GNU/Linux. For other system's support requests, please contact Josef Ezra.

Contact

Josef Ezra (jezra at infinidat.com), (jezra at cpan.org)