๐ฆ gifmeta
gifmeta is a small, fast, and sacred tool for inspecting and editing GIF metadata.
Use it to extract loop counts, view frame delays, and set precise timing โ all from the command line or via Rust.
โค๏ธ Built with love and clarity. No unnecessary bloat.
โจ Features
- ๐ Inspect frame count, size, and duration
- ๐ View and modify loop counts
- ๐ฐ๏ธ Show per-frame delays (preview timing)
- ๐ฏ Set a fixed delay across all frames
- ๐ฏ Prepare for per-frame delay editing (coming in v0.3.0)
๐ฆ Installation
Install via crates.io!:
Or use directly with:
Install via GitHub
๐ ๏ธ Usage
Show metadata
Get loop count
Set loop count
Show all frame delays
Set delay for all frames
Set frame specific delays
๐ Commands
| Command | Description |
|---|---|
info |
Show basic metadata (frames, size, delay) |
get-loop |
Get the loop count from a GIF |
set-loop |
Set the loop count (use 0 for infinite) |
show-frame-delays |
Display the delay of every frame |
set-delay |
Apply a fixed delay to all frames |
set-frame-delay |
Set custom delays for specific frames |
๐ง Why This Exists
GIFs are still everywhere โ especially in messaging, memes, and UI loaders. But modifying timing or loop behavior often requires heavy tools.
gifmeta lets you do it instantly, with:
- ๐ฆ Native Rust speed
- ๐งผ Zero bloat
- ๐ฅ๏ธ CLI-first ergonomics
๐ค๏ธ Roadmap
- Set loop count (v0.2.0)
- CLI structure with
clap v4 - Set per-frame delays (v0.3.0)
- Frame editing with duration visuals (experimental)
- GUI Companion (Tauri, optional)
โ ๏ธ Batch processing and WASM are intentionally skipped.
These are best handled externally with scripting or shell tooling.
๐ฉโ๐ป Contributing
Wanna help? Fork, clone, and PRs welcome. You can also suggest Codex tasks or open issues ๐
๐ Links
๐๏ธ License
MIT โ do good things with it.
๐ Author
Built by Mads Paaskesen with Rust and a soft spot for retro formats.