imager-io / imager Goto Github PK
View Code? Open in Web Editor NEWAutomated image compression for efficiently distributing images on the web.
Home Page: https://imager.io
License: Mozilla Public License 2.0
Automated image compression for efficiently distributing images on the web.
Home Page: https://imager.io
License: Mozilla Public License 2.0
Sometimes I get the following error message when batch compressing jpg files:
thread 'main' panicked at 'assertion failed: picture.uv_stride as u32 == width / 2', ~/.cargo/registry/src/github.com-1ecc6299db9ec823/imager-0.3.2/src/data.rs:276:9
How does imager compare to compress-or-die in terms of compression ratio?
Thanks for imager! It's great!
BTW, I followed instructions in https://github.com/imager-io/imager/blob/master/docs/imager/install.md
It mentions imager v0.3.3, but it seems to be an auto release of v0.3.4.
Should the documentation be updated?
Sometimes I get the following error message when batch compressing files:
thread 'main' panicked at 'open input file path: ()', ~/.cargo/registry/src/github.com-1ecc6299db9ec823/imager-0.3.2/src/main.rs:150:73
I assume it's due to a wrong file type or something.
It'll be good to have AVIF format as possible output using a library like https://crates.io/crates/ravif
Optimized images should never be given to imager again. Trying to re-optimize the output again may lead to noticeable compression artifacts.
I came across your imager project on GitHub while looking at various image compression software. I was able to download and run it on Ubuntu, and it does a fantastic job on compression. Well done on developing this awesome utility!
I am now trying to compile it for a Raspberry Pi but am running into some errors.
I followed the steps in the 'install.md' file in the project:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
apt-get install -y build-essential llvm-dev libclang-dev clang openssl pkg-config libssl-dev xz-utils
git clone https://github.com/imager-io/imager.git && cd imager
cargo install --path imager --force
If I run the compile with the --verbose option I get the following output:
Running `rustc --crate-name webp_dev --edition=2018 /home/pi/.cargo/registry/src/github.com-1285ae84e5963aae/webp-dev-0.4.1/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -Cembed-bitcode=no --cfg 'feature="default"' -C metadata=0d370911ed82618f -C extra-filename=-0d370911ed82618f --out-dir /tmp/cargo-installKBNy5i/release/deps -L dependency=/tmp/cargo-installKBNy5i/release/deps --extern image=/tmp/cargo-installKBNy5i/release/deps/libimage-a4bacbab917eac6b.rmeta --extern libc=/tmp/cargo-installKBNy5i/release/deps/liblibc-5103d3a8c700d90d.rmeta --cap-lints allow -L native=/tmp/cargo-installKBNy5i/release/build/webp-dev-cd4262d980e28f83/out/webmproject-libwebp-8bac456/src -L native=/tmp/cargo-installKBNy5i/release/build/webp-dev-cd4262d980e28f83/out/webmproject-libwebp-8bac456/src/demux -L native=/tmp/cargo-installKBNy5i/release/build/webp-dev-cd4262d980e28f83/out -l static=webp -l static=webpdemux -l static=cbits`
error: could not find native static library `webp`, perhaps an -L flag is missing?
error: aborting due to previous error
error: could not compile `webp-dev`.
Caused by:
process didn't exit successfully: `rustc --crate-name webp_dev --edition=2018 /home/pi/.cargo/registry/src/github.com-1285ae84e5963aae/webp-dev-0.4.1/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -Cembed-bitcode=no --cfg 'feature="default"' -C metadata=0d370911ed82618f -C extra-filename=-0d370911ed82618f --out-dir /tmp/cargo-installKBNy5i/release/deps -L dependency=/tmp/cargo-installKBNy5i/release/deps --extern image=/tmp/cargo-installKBNy5i/release/deps/libimage-a4bacbab917eac6b.rmeta --extern libc=/tmp/cargo-installKBNy5i/release/deps/liblibc-5103d3a8c700d90d.rmeta --cap-lints allow -L native=/tmp/cargo-installKBNy5i/release/build/webp-dev-cd4262d980e28f83/out/webmproject-libwebp-8bac456/src -L native=/tmp/cargo-installKBNy5i/release/build/webp-dev-cd4262d980e28f83/out/webmproject-libwebp-8bac456/src/demux -L native=/tmp/cargo-installKBNy5i/release/build/webp-dev-cd4262d980e28f83/out -l static=webp -l static=webpdemux -l static=cbits` (exit code: 1)
Some system information
pi@raspberrypi:~ $ lsb_release -a
No LSB modules are available.
Distributor ID: Raspbian
Description: Raspbian GNU/Linux 10 (buster)
Release: 10
Codename: buster
pi@raspberrypi:~ $ uname -a
Linux raspberrypi 4.19.93-v7+ #1290 SMP Fri Jan 10 16:39:50 GMT 2020 armv7l GNU/Linux
Any advice on how to fix this?
Hey, great library!, is there an option to maintain alpha channel when converting PNG to webp, also, when I try to compress PNG, I only get a very small silluete of the image
I came across your imager project on GitHub while looking at various image compression software. I was able to download and run it on Ubuntu, and it does a fantastic job on compression. Well done on developing this awesome utility!
I am now trying to compile it for a Raspberry Pi but am running into some errors.
I followed the steps in the 'install.md' file in the project:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
apt-get install -y build-essential llvm-dev libclang-dev clang openssl pkg-config libssl-dev xz-utils
git clone https://github.com/imager-io/imager.git && cd imager
cargo install --path imager --force
If I run the compile with the --verbose option I get the following output:
Running `rustc --crate-name webp_dev --edition=2018 /home/pi/.cargo/registry/src/github.com-1285ae84e5963aae/webp-dev-0.4.1/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -Cembed-bitcode=no --cfg 'feature="default"' -C metadata=0d370911ed82618f -C extra-filename=-0d370911ed82618f --out-dir /tmp/cargo-installKBNy5i/release/deps -L dependency=/tmp/cargo-installKBNy5i/release/deps --extern image=/tmp/cargo-installKBNy5i/release/deps/libimage-a4bacbab917eac6b.rmeta --extern libc=/tmp/cargo-installKBNy5i/release/deps/liblibc-5103d3a8c700d90d.rmeta --cap-lints allow -L native=/tmp/cargo-installKBNy5i/release/build/webp-dev-cd4262d980e28f83/out/webmproject-libwebp-8bac456/src -L native=/tmp/cargo-installKBNy5i/release/build/webp-dev-cd4262d980e28f83/out/webmproject-libwebp-8bac456/src/demux -L native=/tmp/cargo-installKBNy5i/release/build/webp-dev-cd4262d980e28f83/out -l static=webp -l static=webpdemux -l static=cbits`
error: could not find native static library `webp`, perhaps an -L flag is missing?
error: aborting due to previous error
error: could not compile `webp-dev`.
Caused by:
process didn't exit successfully: `rustc --crate-name webp_dev --edition=2018 /home/pi/.cargo/registry/src/github.com-1285ae84e5963aae/webp-dev-0.4.1/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -Cembed-bitcode=no --cfg 'feature="default"' -C metadata=0d370911ed82618f -C extra-filename=-0d370911ed82618f --out-dir /tmp/cargo-installKBNy5i/release/deps -L dependency=/tmp/cargo-installKBNy5i/release/deps --extern image=/tmp/cargo-installKBNy5i/release/deps/libimage-a4bacbab917eac6b.rmeta --extern libc=/tmp/cargo-installKBNy5i/release/deps/liblibc-5103d3a8c700d90d.rmeta --cap-lints allow -L native=/tmp/cargo-installKBNy5i/release/build/webp-dev-cd4262d980e28f83/out/webmproject-libwebp-8bac456/src -L native=/tmp/cargo-installKBNy5i/release/build/webp-dev-cd4262d980e28f83/out/webmproject-libwebp-8bac456/src/demux -L native=/tmp/cargo-installKBNy5i/release/build/webp-dev-cd4262d980e28f83/out -l static=webp -l static=webpdemux -l static=cbits` (exit code: 1)
This error happens on the Raspberry Pi and Ubuntu (WSL)
Some system information for the PI
pi@raspberrypi:~ $ lsb_release -a
No LSB modules are available.
Distributor ID: Raspbian
Description: Raspbian GNU/Linux 10 (buster)
Release: 10
Codename: buster
pi@raspberrypi:~ $ uname -a
Linux raspberrypi 4.19.93-v7+ #1290 SMP Fri Jan 10 16:39:50 GMT 2020 armv7l GNU/Linux
Some system information for Ubuntu (WSL)
user@laptop:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 20.04.1 LTS
Release: 20.04
Codename: focal
user@laptop:~$ uname -a
Linux laptop 4.19.104-microsoft-standard #1 SMP Wed Feb 19 06:37:35 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Any advice on how to fix this?
This appears to require the nightly rust compiler for successful compilation, along with a C++ compiler, llvm development extras, and clang tooling.
Hi! First of all, I would like to really thank you for writing such a software, I've found it incredibly useful for image resizing, obtaining perceptible resolution losses only at 3x zoom at 1/8th of the original size!
That made me curious about what kind of compression algorithm the software uses, how generic it is (I have seen that you are trying to apply it to videos too, can't wait!), and what are your current thoughts on the development of the software.
Thanks again.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.