All Projects → lucastheis → rangecoder

lucastheis / rangecoder

Licence: other
a fast range coder in C++, using SSE

Programming Languages

C++
36643 projects - #6 most used programming language
python
139335 projects - #7 most used programming language
perl
6916 projects

Projects that are alternatives of or similar to rangecoder

Digital video introduction
A hands-on introduction to video technology: image, video, codec (av1, vp9, h265) and more (ffmpeg encoding).
Stars: ✭ 12,184 (+24268%)
Mutual labels:  compression, arithmetic-coding
TinyJPG
images jpg or jpeg compressed and watcher fsnotify
Stars: ✭ 73 (+46%)
Mutual labels:  compression
GI
Sequitur and RePair grammar induction algorithms implementation
Stars: ✭ 20 (-60%)
Mutual labels:  compression
BrotliSharpLib
Full C# port of Brotli compression algorithm
Stars: ✭ 77 (+54%)
Mutual labels:  compression
SSD-Pruning-and-quantization
Pruning and quantization for SSD. Model compression.
Stars: ✭ 19 (-62%)
Mutual labels:  compression
packtag
A JSP Taglib for delivering minified, combined and gzip-compressed resources (JavaScript and CSS).
Stars: ✭ 22 (-56%)
Mutual labels:  compression
QmapCompression
Official implementation of "Variable-Rate Deep Image Compression through Spatially-Adaptive Feature Transform", ICCV 2021
Stars: ✭ 27 (-46%)
Mutual labels:  compression
pakkero
Pakkero is a binary packer written in Go made for fun and educational purpose. Its main goal is to take in input a program file (elf binary, script, even appimage) and compress it, protect it from tampering and intrusion.
Stars: ✭ 143 (+186%)
Mutual labels:  compression
DAR
DAR - Disk ARchive
Stars: ✭ 58 (+16%)
Mutual labels:  compression
lepcc
Point Cloud Compression used in i3s Scene Layer Format
Stars: ✭ 22 (-56%)
Mutual labels:  compression
huffman
Using huffman coding to compress-decompress real-world files
Stars: ✭ 27 (-46%)
Mutual labels:  compression
ratarmount
Random Access Read-Only Tar Mount
Stars: ✭ 217 (+334%)
Mutual labels:  compression
rc-zip
Pure rust zip & zip64 reading and writing
Stars: ✭ 93 (+86%)
Mutual labels:  compression
zip-bucket
zips files in a Google Cloud Storage [tm] bucket
Stars: ✭ 32 (-36%)
Mutual labels:  compression
pyrus-cramjam
Thin Python wrapper to de/compression algorithms in Rust - lightweight & no dependencies
Stars: ✭ 40 (-20%)
Mutual labels:  compression
acid-store
A library for secure, deduplicated, transactional, and verifiable data storage
Stars: ✭ 48 (-4%)
Mutual labels:  compression
exhal
Compression and decompression tools for NES, SNES, and Game Boy games by HAL Laboratory
Stars: ✭ 54 (+8%)
Mutual labels:  compression
SevenZipSharp
Fork of SevenZipSharp on CodePlex
Stars: ✭ 171 (+242%)
Mutual labels:  compression
lz4-napi
Fastest lz4 compression library in Node.js, powered by napi-rs and lz4-flex.
Stars: ✭ 29 (-42%)
Mutual labels:  compression
zopflipy
A Python bindings for Zopfli
Stars: ✭ 17 (-66%)
Mutual labels:  compression

Installation

pip install range-coder

Example

from range_coder import RangeEncoder, RangeDecoder, prob_to_cum_freq

data = [2, 0, 1, 0, 0, 0, 1, 2, 2]
prob = [0.5, 0.2, 0.3]

# convert probabilities to cumulative integer frequency table
cumFreq = prob_to_cum_freq(prob, resolution=128)

# encode data
encoder = RangeEncoder(filepath)
encoder.encode(data, cumFreq)
encoder.close()

# decode data
decoder = RangeDecoder(filepath)
dataRec = decoder.decode(len(data), cumFreq)
decoder.close()
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].