A CLI tool that coverts basically any file into ✨grayscaled gif mess✨ and vice-versa
PLEASE NOTE: all file content will be placed in RAM
Run pixel_fuse encode Cargo.toml Cargo.toml.gif
to get something like that:
Or run it against random file* to get that:
*Random file generated by the command: head -c 64M /dev/urandom > random
Run pixel_fuse decode Cargo.toml.gif Cargo.toml.decoded
During GIF creation, the first frame contains metadata such as file name (not used), frame hash (no meta frame), remaining pixels used to fill the last frame, PixelFuse version and number of frames for the progress bar during decoding
After decoding a hash will be calculated to check the integrity of the file, so if the hash matches you can be sure that everything is the same as it was before encoding.
Encode and decode runs at ~900 frames per second, the size of the GIF increased by ~0.4 GiB (1.1 GiB > 1.5 GiB)
*Ran on:
- OS: NixOS 23.11.20240229.068d4db (Tapir) x86_64
- Host: HP 81F0
- Kernel: 6.1.79
- CPU: Intel i3-5005U (4) @ 1.900GHz
- File:
head -c 1G /dev/urandom > random
- Output GIF: 100x100 px