Wiersz poleceń przekonwertować webp na jpg?

62

Używam Ubuntu 12.04. Zainstalowałem libwebp2ilibwebp-dev

Jak dotąd nie znaleziono żadnego przykładu konwersji sieci na jpg.

Niektóre pliki webp można łatwo przekonwertować za pomocą polecenia imagemagick

convert file.webp file.jpg

ale wielu plików webp nie można przekonwertować i powodować błędy:

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.

--------dodany

To jest plik: http://www.filedropper.com/file_144

apasajja
źródło
Czy możesz opublikować niektóre pliki, których nie można przekonwertować, abyśmy mogli spróbować?
terdon
Jakieś błędy, gdy ImageMagick nie konwertuje?
dartonw
@dartonw Błąd został zaktualizowany
apasajja
@terdon Nie mam pojęcia, że ​​webp obsługuje hosting obrazów
apasajja 30.03.2013
Dziwne, że wiadomości błyskawiczne konwertują niektóre pliki webp, a nie inne. Czy te, których nie można wyświetlić w przeglądarce lub edytorze obrazów (być może są uszkodzone)? Jak zainstalowałeś komunikator internetowy? AFAIK, musi być specjalnie skompilowany ze wsparciem webp po zainstalowaniu libwebp [-devel].
dartonw

Odpowiedzi:

85

Google już udostępniło narzędzie do dekodowania obrazów webp w libwebppakiecie, przesłany plik działa w Arch.

dwebp file.webp -o abc.png

W przypadku narzędzia do kodowania sprawdź cwebppolecenie.

W Ubuntu możesz zainstalować narzędzia za pomocą:

sudo apt install webp

W przypadku RHEL / CentOS:

 yum install libwebp libwebp-tools

I możesz rozważyć użycie tego narzędzia online .

stokrotka
źródło
7
Niestety dwebp konwertuje tylko webp do png, ale nie do jpg.
rumpel
2
@rumpel thx, nie udało się otworzyć pliku .jpg, ale po dodaniu .png działało!
Wodnik Moc
3
W 14.04 musiałem zainstalować pakiet webp, który nie był dostępny, dopóki go nie zainstalowałem. Byłem zdezorientowany, ponieważ zainstalowałem wszystkie pakiety libwebpi libweb-dev.
TryTryAgain
1
Użyj dwebpdla webp-> png, a następnie convertdla png-> jpg. Za pomocą rury. dwebp 1.webp -o - | convert - 1.jpg
steve
2
W systemie Windows użyj następującego polecenia dla% f w (* .webp) do dwebp.exe "% f" -o "% ~ nf.png"
Matija Grcic
29

ffmpeg może to zrobić. Przydatne, jeśli masz już ffmpeg. Nie ma potrzeby instalowania innych narzędzi.

Po prostu:

ffmpeg -i file.webp out.png
Riszaw
źródło
Działa, ale png jest 11 razy większy.
RonJohn
18

Konwertuj wszystkie pliki webp w katalogu

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

Uwaga: dwebp znajduje się w pakiecie libwebp

Jeff McHale
źródło
5
W przypadku Ubuntu 16.04 musiałem go zainstalować sudo apt-get install webp.
PhoneixS,
Nie wiem, czy jest to funkcja, czy błąd, ale wszystkie pliki zostaną zapisane jako file.webpg.pngzamiastfile.png
Felix Rosén
Jest to funkcja dla uproszczenia ... Mam algorytm mieszania obrazu, który automatycznie zmienia nazwy obrazów, więc zamierzałem zmienić nazwy plików przy użyciu tego.
Jeff McHale
3

Z katalogu zawierającego webppliki:

for x in *.webp; do ffmpeg -i $x $x.jpg; done
Byram Sewell
źródło
2
użyj ${x%.webp}.jpgzamiast, $x.jpgaby usunąć webp z docelowej nazwy pliku (skradziony ze stackoverflow.com/a/17844019/146745 )
andrej
1

Dostępne jest tutaj inne narzędzie online, które może ci w tym pomóc:

ale jeśli chcesz mieć narzędzie lokalne, możesz użyć tego:

i użyj tego w ten sposób:

1) chmod a+x webpconv

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

Ogólna struktura wygląda następująco:

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

Przykład) Aby przekonwertować plik .png na WebP o jakości 90, wpisz:

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

i przekonwertować plik WebP na plik PNG:

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

Hojat Taheri
źródło
1

Znalazłem tę metodę szybciej, jak potrzebuję 1 raz.

  1. Zrób zrzut ekranu z obrazem webp otwartym w chromie.
  2. Wklej do programu do malowania.
  3. Przytnij i zapisz.
PRS
źródło
6
Pytający szukał
1
Myślę, że można to zrobić jako wiersz poleceń, używając Shutter i wykonując zrzut ekranu okna bez dekoracji okna, wszystko w skrypcie; kodowanie może być zabawne :)
Aquarius Power
0

Aby przekonwertować wiele plików jpg na webp, użyj 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, przenoszenie obrazów webp do podfolderu:

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

Domyślne ustawienie jakości Cwebp to 75.

użytkownik8547
źródło
0

zainstaluj pakiet webpsudo apt install webp , po czym powinien on działać.

törzsmókus
źródło