Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

LZW-based lightweight encoder/decoder

License

NotificationsYou must be signed in to change notification settings

Mototroller/ax.lzw

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Header-only librarylzw.hpp contains implementation of originalLZW compression/decompression algorithms.

Features:

  • Input andPacking dictionaries are fully customizable by symbol ranges, can be piecewise.

    Predefined:BINARY_256_common,ASCII_128_common,UTF16_pack (output),URI_pack (output). Seelzw.hpp tail for definitions examples.

  • Specific codec can be instantiated from template:lzw_codec<InputDict, PackDict>.

    Predefined:string_to_string,binary_to_binary,string_to_UTF16,string_to_URI. Seelzw.hpp tail for definitions examples.

  • Encoding with fixed bit depth (choses by maximum used code).

  • Dense bit packing (library uses as many bits as possible).

  • Header-only and STL-only open source.

  • STL-compatible codec interface: same asstd::copy(first, last, d_first).

  • Tests with usage examples and simple performance measurements are included.

  • RELEASE typical performance:

    encode = ~200 us/Ksymbol

    decode = ~30 us/Ksymbol

    zip_ratio < ~0.3 (dst.length/src.length)

WASM

Library initially was designed as native LZW extension to be used withWASM andEmscripten Embind.

To be continued

Releases

No releases published

Packages

No packages published

[8]ページ先頭

©2009-2025 Movatter.jp