Webp is an open-source image format in Linux which supports lossless and lossy compression for images on the web. One of the best practices to optimize the website performance is using compressed images.
Here at LinuxAPT, as part of our Server Management Services, we regularly help our Customers to perform related Linux system performance queries.
In this context, we shall look into how to use webp image format for creating compressed and quality images for the website.
How to install webp on Ubuntu Linux system ?
The webp package is already available in the official ubuntu repositories. Run the command below to update the Ubuntu repository to the latest index and install webp package:
$ sudo apt-get update
$ sudo apt install webp
Also, you can install the webp package from Google’s repository as:
$ wget https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-0.6.1-linux-x86-32.tar.gz
Next, Extract the tar file and move to the extracted directory:
$ tar -xvzf libwebp-0.6.1-linux-x86-32.tar.gz
$ cd libwebp-0.6.1-linux-x86-32
$ cd bin
In the directory, you can see the precompiled binary files which are usable for various webp utilities such as:
- anim_diff : This tool can be used to find the difference between animation images
- anim_dump: This tool is usable to dump the difference between animation images
- cwebp : This tool can be used for webp encoding
- dwebp : This tool is used for webapp decoding
- vwebp : This tool is used to view webp files
- webpinfo : This tool is usable to view information about a webp image file
To find all the options provided by the webp utility tool, use the following command:
$ webp -longhelp
Now add the directory ~/libwebp-0.6.1-linux-x86-32/bin to the PATH environment variable in the ~/.bashrc file to run the webp utility tools without writing the absolute path:
$ sudo vi ~/.bashrc
Copy the following line at the end of the file:
Save the file and exit. Open a new terminal and use webp utility tools like other system commands.
How to convert image to webp format ?
Using the cwebp tool, an image can be converted into webp format. Run the cwebp command with option -q to define the quality of image and -o to define the output file. In this example, I have used image file linux.png and linux.jpeg file to convert in webp format. You can choose your image name accordingly:
$ cwebp -q 60 linux.png -o linux.webp
$ cwebp -q 60 linux.jpeg -o linux1.webp
In the output, you can see that the size of the image has been comparatively decreased.
Run the following command to open the webp format images. In this example, We have used a previously converted linux.webp file:
$ vwebp linux.webap
How to convert webp image to png and jpeg format ?
Previously, we converted jpeg and png images to webp using cwebp utility tool. Now we will use the dwebp tool to convert webp images into png and jpeg format.
Use the dwep command with the option -o to create png and jpeg image format from webp. Here, image.webp is used for the conversion:
$ dwep image.webp -o image.png
$ dwep image.webp -o image.jpeg
It can be seen that the size of the image has been comparatively increased after decoding the webp image format.
In this way, we can convert png and jpeg format images to webp format and vice versa.
[Need help in fixing Linux systems issues ? We can help you. ]