convert webp to jpg error: "no decode delegate for this image format" and "missing an image filename"

I’m using ubuntu 12.04.
I’ve installed libwebp2 & libwebp-dev

So far, no example found on the net of converting webp to jpg.

Some webp files can easily converted by using imagemagick with command

convert file.webp file.jpg

but lots of webp files cannot be converted and give error:

convert: no decode delegate for this image format `file.webp' @ error/constitute.c/ReadImage/532.
convert: missing an image filename `file.jpg' @ error/convert.c/ConvertImageCommand/3011.


This is the file:

Asked By: apasajja


Google already provided the tool to decode webp images in the libwebp package, your uploaded file works on Arch.

dwebp file.webp -o abc.png

For the encoding tool, check the cwebp command.

In Ubuntu you can install the tools with:

sudo apt install webp


 yum install libwebp libwebp-tools

And you might consider using this online tool.

Answered By: daisy

There is another online tool available here which can help you on this:

but if you want a local tool, you can use this one:

and use it like this:

1) chmod a+x webpconv

2) ./webpconv -format PNG <YOUR_WEBP_FILE>.webp

The overall structure is like this:

webpconv [-output_dir dir] [-format format] [-quality quality] input_file(s)

Example) To convert a .png image to WebP with a quality of 90 you would enter:

webpconv -quality 90 /home/user/image_name.png

and to convert a WebP file to a PNG one:

webpconv -format PNG /home/user/image_name.webp

Answered By: Hojat Taheri

I found this method faster for my 1 time need.

  1. Take screenshot with webp image open in chrome.
  2. Paste into paint program.
  3. Crop and save.
Answered By: PRS

Convert all webp files within a directory

find ./ -name "*.webp" -exec dwebp {} -o {}.png ;

Note: dwebp is in the libwebp package

Answered By: Jeff McHale

To convert multiple jpg to webp, using cwebp:

find ./ -name "*.jpg" -exec cwebp -q 70 {} -o {}.webp

Thunar Custom Action:

for file in %F; do cwebp "$file" -o "${file%%.*}".webp; done

Thunar Custom Action, moving webp images to subfolder:

mkdir %d/webp && cd %d; for file in %N; do cwebp "$file" -o "webp/${file%%.*}".webp; done

Cwebp’s default quality setting is 75.

Answered By: whitewings

ffmpeg can do this. Useful if you already have ffmpeg. No need for installing other tools.


ffmpeg -i file.webp out.png
Answered By: xrisk

From the directory containing the webp files:

for x in *.webp; do ffmpeg -i "$x" "${x%.webp}.jpg"; done
Answered By: Byram Sewell

install the webp package with sudo apt install webp, after that it should work.

Answered By: törzsmókus

for x in ls *.webp; do ffmpeg -i $x ${x%.webp}.jpg; done which is solution stolen from Byram Sewell and Jeff Bowman

Answered By: andrej

Use dwebp for webp->png, and then convert for png->jpg. Using pipe.

dwebp 1.webp -o - | convert - 1.jpg
Answered By: steve