Командная строка конвертировать WebP в JPG?


62

Я использую Ubuntu 12.04. Я установил libwebp2&libwebp-dev

Пока что в сети не найдено ни одного примера преобразования webp в jpg.

Некоторые файлы webp могут быть легко преобразованы с помощью imagemagick с командой

convert file.webp file.jpg

но многие файлы webp не могут быть преобразованы и выдают ошибку:

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.

-------- добавил

Это файл: http://www.filedropper.com/file_144


Не могли бы вы опубликовать некоторые файлы, которые не могут быть преобразованы, чтобы мы могли попробовать?
Terdon

Любые ошибки, когда ImageMagick не удается конвертировать?
Дартонв

@dartonw Ошибка была обновлена
apasajja

@terdon Я понятия не имею, какой веб-хостинг поддержки изображений
apasajja

Странно, что IM конвертирует некоторые файлы webp, а не другие. Можно ли просмотреть те, которые не удалось, в браузере или графическом редакторе (возможно, они повреждены)? Как вы установили IM? AFAIK, он должен быть специально скомпилирован с поддержкой webp после установки libwebp [-devel].
Дартонв

Ответы:


85

Google уже предоставил инструмент для декодирования изображений webp в libwebpпакете, ваш загруженный файл работает на Arch.

dwebp file.webp -o abc.png

Для инструмента кодирования, проверьте cwebpкоманду.

В Ubuntu вы можете установить инструменты с:

sudo apt install webp

На RHEL / CentOS:

 yum install libwebp libwebp-tools

И вы можете рассмотреть возможность использования этого онлайн-инструмента .


7
К сожалению, dwebp только конвертирует webp в png, но не в jpg.
Румпель

2
@rumpel thx, он не смог открыть .jpg, но когда я поставил .png, это сработало!
Водолей Сила

3
В 14.04 мне нужно было установить пакет, webpон был недоступен, пока я его не установил. Я был смущен , потому что я установить все libwebpи libweb-devпакеты.
TryTryAgain

1
Используйте dwebpдля webp-> png, а затем convertдля png-> jpg. Используя трубу. dwebp 1.webp -o - | convert - 1.jpg
Стив

2
Для окон используйте следующую команду для% f в (* .webp): dwebp.exe "% f" -o "% ~ nf.png"
Матия Грчич

29

ffmpeg может это сделать. Полезно, если у вас уже есть ffmpeg. Нет необходимости устанавливать другие инструменты.

Просто:

ffmpeg -i file.webp out.png

Это работает, но PNG в 11 раз больше.
РонДжон

18

Конвертировать все файлы WebP в каталоге

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

Примечание: dwebp находится в пакете libwebp


5
Для Ubuntu 16.04 мне нужно было установить его с sudo apt-get install webp.
PhoneixS

Не знаю, является ли это функцией или ошибкой, но все файлы будут сохранены, а file.webpg.pngне простоfile.png
Феликс Розен

Это функция для простоты ... У меня есть алгоритм хеширования изображений, который автоматически переименовывает изображения, поэтому я намеревался переименовать файлы, используя это.
Джефф Макхейл


1

Здесь есть еще один онлайн-инструмент, который может помочь вам в этом:

но если вам нужен локальный инструмент, вы можете использовать этот:

и используйте это так:

1) chmod a+x webpconv

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

Общая структура выглядит следующим образом:

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

Пример) Чтобы преобразовать изображение .png в WebP с качеством 90, введите:

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

и преобразовать файл WebP в файл PNG:

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


1

Я нашел этот метод быстрее для моей необходимости 1 раз.

  1. Сделайте снимок экрана с открытым веб-изображением в Chrome.
  2. Вставить в программу рисования.
  3. Обрезать и сохранить.

6
Спрашивающий искал решение для командной строки ...
jasonwryan

1
Я думаю, что это можно сделать в виде командной строки с помощью Shutter и создания снимка экрана без оконных декораций, все в сценарии; может быть весело кодировать :)
Водолей Power

0

Чтобы конвертировать несколько jpg в webp, используйте 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, перемещение веб-изображений в подпапку:

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

По умолчанию для Cwebp установлено значение качества 75.


0

установите пакет webp с sudo apt install webp, после этого он должен работать.


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.