{"id":17724773,"url":"https://github.com/jibsen/blz4","last_synced_at":"2025-10-05T08:12:56.392Z","repository":{"id":72894950,"uuid":"156395638","full_name":"jibsen/blz4","owner":"jibsen","description":"Example of LZ4 compression with optimal parsing using BriefLZ algorithms","archived":false,"fork":false,"pushed_at":"2023-11-01T08:07:06.000Z","size":32,"stargazers_count":26,"open_issues_count":1,"forks_count":2,"subscribers_count":5,"default_branch":"master","last_synced_at":"2023-11-01T09:25:17.967Z","etag":null,"topics":["c","compression","compression-algorithm","lz4"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"zlib","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jibsen.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-11-06T14:25:44.000Z","updated_at":"2023-11-01T08:07:10.000Z","dependencies_parsed_at":null,"dependency_job_id":"2473c6d3-78ae-4044-ae2a-c7ede453aec3","html_url":"https://github.com/jibsen/blz4","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jibsen%2Fblz4","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jibsen%2Fblz4/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jibsen%2Fblz4/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jibsen%2Fblz4/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jibsen","download_url":"https://codeload.github.com/jibsen/blz4/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253746844,"owners_count":21957647,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","compression","compression-algorithm","lz4"],"created_at":"2024-10-25T15:48:44.039Z","updated_at":"2025-10-05T08:12:51.331Z","avatar_url":"https://github.com/jibsen.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"\nblz4\n====\n\n[![Meson CI](https://github.com/jibsen/blz4/workflows/Meson%20CI/badge.svg)](https://github.com/jibsen/blz4/actions)\n\nAbout\n-----\n\nThis is an example using some of the compression algorithms from [BriefLZ][]\nto produce output in the format of [LZ4][].\n\n**Please note:** this is just a quick experiment to see how it would work, it\nis not production quality, and has not been properly tested.\n\n[BriefLZ]: https://github.com/jibsen/brieflz\n[LZ4]: https://github.com/lz4/lz4\n\n\nBenchmark\n---------\n\nHere are some results on the [Silesia compression corpus][silesia]:\n\n| File    |   Original | `blz4 --optimal` | `lz4 -12 -l` |  `lz4x -9` |\n| :------ | ---------: | ---------------: | -----------: | ---------: |\n| dickens | 10.192.446 |        4.380.430 |    4.380.430 |  4.380.430 |\n| mozilla | 51.220.480 |       22.025.940 |   22.025.988 | 22.025.940 |\n| mr      |  9.970.564 |        4.190.675 |    4.190.774 |  4.190.675 |\n| nci     | 33.553.445 |        3.621.482 |    3.621.567 |  3.621.482 |\n| ooffice |  6.152.192 |        3.535.258 |    3.535.258 |  3.535.258 |\n| osdb    | 10.085.684 |        3.951.474 |    3.951.474 |  3.951.474 |\n| reymont |  6.627.202 |        2.063.060 |    2.063.060 |  2.063.060 |\n| samba   | 21.606.400 |        6.100.521 |    6.100.539 |  6.100.521 |\n| sao     |  7.251.944 |        5.668.742 |    5.668.742 |  5.668.742 |\n| webster | 41.458.703 |       13.835.336 |   13.835.336 | 13.835.336 |\n| xml     |  5.345.280 |          759.868 |      759.901 |    759.868 |\n| x-ray   |  8.474.240 |        7.177.203 |    7.177.203 |  7.177.203 |\n\nI did not include smallz4 because it does not create output in the legacy\nformat, so the results are not directly comparable on files larger than\n4MiB.\n\n[silesia]: http://sun.aei.polsl.pl/~sdeor/index.php?page=silesia\n\n\nUsage\n-----\n\nblz4 uses [Meson][] to generate build systems. To create one for the tools on\nyour platform, and build blz4, use something along the lines of:\n\n~~~sh\nmkdir build\ncd build\nmeson ..\nninja\n~~~\n\nYou can also simply compile and link the source files.\n\nblz4 includes the leparse and btparse algorithms from BriefLZ, which gives\ncompression levels `-5` to `-9` and the **very** slow `--optimal`.\n\n[Meson]: https://mesonbuild.com/\n\n\nNotes\n-----\n\n  - LZ4 appears to do flexible parsing, is very close to optimal, and much\n    faster.\n\n\nRelated Projects\n----------------\n\n  - [LZ4X](https://github.com/encode84/lz4x)\n  - [smallz4](https://create.stephan-brumme.com/smallz4/)\n\n\nLicense\n-------\n\nThis projected is licensed under the [zlib License](LICENSE) (Zlib).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjibsen%2Fblz4","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjibsen%2Fblz4","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjibsen%2Fblz4/lists"}