Sorry, this repository is no longer maintained due to the retirement of the main maintainer. After some time, this repository will be archived.
Ther source is currently maitained on avif-community by the maintaier. It's not a official community of AVIF codec. We take no resposibility the name of the community.
This repository will be removed after 2023-01-31 to resolve the confusing situation.
Status | |
---|---|
Linux | |
Linux(.deb) | |
macOS | |
Windows |
avif decoder, using dav1d directly.
avif (AV1 Image File Format) is a still picture format uses a keyframe of AV1.
AVIF(AV1 Image File Format)は、動画フォーマットであるAV1のキーフレームを流用して圧縮する静止画フォーマットです。
davifは、ラッパーを介さずdav1dを直接叩くavifのデコード・コマンドです。
# pre-requirements
# If your system cmake is lower than 3.13, please install latest version:
# https://apt.kitware.com/
# cloning this repository with dependencies.
git clone --recurse-submodules --recursive git@github.com:link-u/davif.git
cd davif
# Apply workarounds
bash scripts/apply-patches.sh
# Build dependencies not managed by CMake.
bash scripts/build-deps.sh
# System gcc is 8.0 or higher:
cmake ..
# If not, please install gcc-8 (or higher) and tell them to CMake.
CXX=g++-8 CC=gcc-8 cmake ..
# build davif binary.
make davif
# decode an avif image.
./davif -i input.avif -o output.png
% davif
[2022/03/29 18:01:20 INFO ] davif
[2022/03/29 18:01:20 INFO ] - dav1d ver: 1.0.0-0-g99172b1
[2022/03/29 18:01:20 INFO ] - libpng ver: 1.6.38.git
SYNOPSIS
davif -i <input.avif> -o <output.png> [--extract-alpha <output-alpha.png>] [--extract-depth
<output-depth.png>] [--threads <Num of threads to use>]
davif -h
OPTIONS
-h, --help Show help and exit.
Example avif files are available in AOMediaCodec/av1-avif or link-u/avif-sample-images.
(Currently, detailed documentation is only in Japanese)
- Add more and more command-line flags.
- link-u/cavif - avif encoder, using libaom directly.
- link-u/libavif-container - a library to parse avif container.
- link-u/avif-sample-images - sample images from us.