9 releases (1 stable)
|1.0.0||Mar 24, 2021|
|0.6.6||Jan 29, 2021|
|0.6.2||Sep 14, 2020|
|0.5.1||Sep 9, 2020|
|0.1.0||Aug 26, 2020|
#68 in Images
91 downloads per month
The pre-built zip includes a portable static executable, with no dependencies, that runs on any Linux distro. It also includes executables for macOS and Windows.
- Chrome 85 desktop and libavif: full support. Support for
--premultiplied-alphaoption is coming soon.
- Chrome on Android 12: full support.
- Firefox 86: not compatible with images with alpha channel yet.
Run in a terminal (hint: you don't need to type the path, terminals accept file drag'n'drop)
image.avif. You can adjust quality (it's in 1-100 scale):
cavif --quality 60 image.png
You can also specify multiple images (encoding is multi-threaded, so the more, the better!).
cavif [OPTIONS] IMAGES...
--quality=n— Quality from 1 (worst) to 100 (best), the default value is 80. The numbers have different meaning than JPEG's quality scale. Beware when comparing codecs. There is no lossless compression support.
--speed=n— Encoding speed between 1 (best, but slowest) and 10 (fastest, but a blurry mess), the default value is 1. Encoding of AVIF is pretty slow, so you need either a) beefy multicore machine b) avoid large images c) patience.
--overwrite— Replace files if there's .avif already. By default existing files are left untouched.
-o path— Write output to this path instead of samefile.avif. If multiple input files are specified, it's interpreted as a directory.
--quiet— Don't print anything during conversion.
--premultiplied-alpha— May improve compression of transparent images by lowering quality of semi-transparent colors. Warning: new feature, may not be compatible with all decoders yet.
--dirty-alpha— Don't change RGB values of transparent pixels. By default irrelevant color of transparent pixels is cleared to avoid wasting space.
--color=rgb— encode using RGB color space instead of YCbCr color space. Makes color closer to lossless, but makes files larger.
To build it from source you need:
Then run in a terminal:
cargo install cavif