Convert your animated png files to animated webp files.
usage: apng2webp [-h] [-l [LOOP]] [-bg [BGCOLOR]] [-tmp [TMPDIR]]
input [output]
Convert animated png files (apng) to animated webp files.
positional arguments:
input Input path. Must be a .png file.
output Output path. If output file already exist it will be
overwritten.
optional arguments:
-h, --help show this help message and exit
-l [LOOP], --loop [LOOP]
Passed to webpmux. The amount of times the animation
should loop. 0 to 65535. Zero indicates to loop
forever.
-bg [BGCOLOR], --bgcolor [BGCOLOR]
Passed to webpmux. The background color as a A,R,G,B
tuple. Example: 255,255,255,255
-tmp [TMPDIR], --tmpdir [TMPDIR]
A temp directory (it may already exist) to save the
temp files during converting, including the extracted
PNG images, the metadata and the converted WebP static
images for each frame. If not provided, it will use
the system temp path and remove temp images after
executing.
apng2webp ./input.png
apng2webp ./input.png ./output.webp
apng2webp -loop 3 -bgcolor 255,255,255,255 -tmpdir ./ ./input.png ./output.webp- python (python 2 or 3 can be used)
- cmake
- libpng
- zlib
- jsoncpp
- pip (a python package used during installation)
- The
cwebpprogram must be in your PATH - The
webpmuxprogram must be in your PATH
If you prefer to use the static linking precompiled binary but not build from source, go to the release page and download apng2webp_dependencies for your platform. Then add the extracted folder to your PATH.
You also need python and pip installed, make sure cwebp and webpmux from webp to be in your PATH. Then check the installation part to install.
- Use
easy_installto install pip. - Use Homebrew to install all the dependencies.
sudo easy_install pip
brew update
brew install cmake
brew install webp
brew install jsoncpp- Use webp to install cwebp and webpmux to your PATH.
- Use
apt-getto install all the dependencies.
sudo apt-get update
sudo apt-get install python
sudo apt-get install python-pip
sudo apt-get install cmake
sudo apt-get install libpng-dev
sudo apt-get install libjsoncpp-dev- Use python to install python and pip.
- Use cmake to install cmake.
- Use webp to install cwebp and webpmux to your PATH.
- Use Mysys2 and
MinGW-w64to install external dependencies. Remember to add your MinGW-w64 folder(e.g.C:\msys64\mingw64\binfor 64bit andC:\msys64\mingw32\binfor 32bit) to your PATH.
Run Mysys2 shell(but not PowerShell) to install external dependencies.
pacman -Sy
pacman -S mingw-w64-x86_64-gcc
pacman -S mingw-w64-x86_64-make
pacman -S mingw-w64-x86_64-libpng
pacman -S mingw-w64-x86_64-jsoncppIf you are using 32bit Windows, change all the command x86_64 to i686.
Additionally, current version mingw-w64-x86_64-make 4.2.1 has a dynamic link bug and can not run, if you are facing this issue, try pacman -S mingw-w64-x86_64-gettext to fix.
For macOS and Linux user, run terminal shell.
In apng2webp_dependencies/ execute:
mkdir build
cd build
cmake ..
make
(sudo) make installFor Windows user, run PowerShell as Administrator user.
In apng2webp_dependencies/ execute:
mkdir build
cd build
cmake .. -G "MinGW Makefiles"
mingw32-makeThen add the output apngdisraw.exe and apng2webp_apngopt.exe to your PATH.
In project root folder execute:
(sudo) python setup.py installIn project root folder execute:
(sudo) pip install pytest
python setup.py testAPNG Disassembler
APNG Optimizer
Not all software within this project uses the same license. The following licenses/legal terms are used:
- zlib license
- GNU LGPL 2.1 for some older versions of some parts of the software
- Public Domain (if explicitly stated. The .py scripts are public domain)
- BSD 3-Clause where no other license applies (this readme)