Kommandozeile webp in jpg konvertieren?

62

Ich benutze Ubuntu 12.04. Ich habe libwebp2& installiertlibwebp-dev

Bisher wurde kein Beispiel für die Konvertierung von webp in jpg im Netz gefunden.

Einige Webp-Dateien können einfach mit dem Befehl imagemagick with konvertiert werden

convert file.webp file.jpg

Viele Webp-Dateien können jedoch nicht konvertiert werden und führen zu Fehlern:

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.

--------hinzugefügt

Dies ist die Datei: http://www.filedropper.com/file_144

apasajja
quelle
Könnten Sie einige der Dateien posten, die nicht konvertiert werden können, damit wir es versuchen können?
terdon
Irgendwelche Fehler, wenn ImageMagick nicht konvertiert?
Dartonw
@ Dartonw Fehler wurde aktualisiert
Apasajja
@terdon Ich habe keine Ahnung, ein Bild-Hosting-Unterstützung webp
apasajja
Seltsam, dass IM einige Webp-Dateien konvertiert und andere nicht. Können diejenigen, die nicht funktionieren, in einem Browser oder Bildeditor angezeigt werden (möglicherweise sind sie beschädigt)? Wie haben Sie IM installiert? AFAIK, nach der Installation von libwebp [-devel] muss es speziell mit Webp-Unterstützung kompiliert werden.
Dartonw

Antworten:

85

Google hat bereits das Tool zum Dekodieren von Webp-Bildern im libwebpPaket bereitgestellt. Ihre hochgeladene Datei funktioniert mit Arch.

dwebp file.webp -o abc.png

Überprüfen Sie für das Codierungstool den cwebpBefehl.

In Ubuntu können Sie die Tools installieren mit:

sudo apt install webp

Auf RHEL / CentOS:

 yum install libwebp libwebp-tools

Und Sie könnten erwägen , dieses Online-Tool zu verwenden .

Gänseblümchen
quelle
7
Leider konvertiert dwebp nur webp nach png, nicht aber nach jpg.
Rumpel
2
@rumpel thx, das .jpg konnte nicht geöffnet werden, aber als ich .png hinzufügte, funktionierte es!
Aquarius Power
3
In 14.04 musste ich das Paket installieren, webpes war nicht verfügbar, bis ich das installierte. Ich war verwirrt, weil ich alle Pakete libwebpund installiert hatte libweb-dev.
TryTryAgain
1
Verwenden Sie dwebpfür webp-> png und dann convertfür png-> jpg. Pipe verwenden. dwebp 1.webp -o - | convert - 1.jpg
Steve
2
Verwenden Sie für Windows den folgenden Befehl für% f in (* .webp) do dwebp.exe "% f" -o "% ~ nf.png"
Matija Grcic
29

ffmpeg kann das. Nützlich, wenn Sie bereits ffmpeg haben. Es müssen keine weiteren Tools installiert werden.

Einfach:

ffmpeg -i file.webp out.png
Rishav
quelle
Es funktioniert, aber das PNG ist 11x größer.
RonJohn
18

Konvertieren Sie alle Webp-Dateien innerhalb eines Verzeichnisses

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

Hinweis: dwebp ist im libwebp-Paket enthalten

Jeff McHale
quelle
5
Für Ubuntu 16.04 musste ich es mit installieren sudo apt-get install webp.
PhoneixS
Weiß nicht , ob als Feature oder ein Bug ment, aber alle Dateien wie gespeichert werden , file.webpg.pnganstatt einfachfile.png
Felix Rosén
Es ist eine Funktion der Einfachheit halber ... Ich habe einen Bild-Hashing-Algorithmus, der Bilder automatisch umbenennt, also wollte ich die Dateien damit umbenennen.
Jeff McHale
3

Aus dem Verzeichnis mit den webpDateien:

for x in *.webp; do ffmpeg -i $x $x.jpg; done
Byram Sewell
quelle
2
Verwenden Sie ${x%.webp}.jpgstattdessen $x.jpg, um webp im Zieldateinamen zu entfernen (gestohlen von stackoverflow.com/a/17844019/146745 )
andrej
1

Hier gibt es ein weiteres Online-Tool, das Ihnen dabei helfen kann:

Wenn Sie jedoch ein lokales Tool benötigen, können Sie dieses verwenden:

und benutze es so:

1) chmod a+x webpconv

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

Die Gesamtstruktur ist wie folgt:

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

Beispiel: Um ein PNG-Bild in WebP mit einer Qualität von 90 zu konvertieren, geben Sie Folgendes ein:

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

und um eine WebP-Datei in eine PNG-Datei umzuwandeln:

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

Hojat Taheri
quelle
1

Ich fand diese Methode schneller für meinen 1-maligen Bedarf.

  1. Machen Sie einen Screenshot mit einem in Chrom geöffneten Webbild.
  2. In Malprogramm einfügen.
  3. Zuschneiden und speichern.
PRS
quelle
6
Der Fragesteller suchte nach einer Kommandozeilenlösung ...
jasonwryan
1
Ich denke, es könnte als Befehlszeile erstellt werden, indem Sie Shutter verwenden und einen Screenshot eines Fensters ohne Fensterdekorationen in einem Skript erstellen. könnte Spaß machen, Code :)
Aquarius Power
0

So konvertieren Sie mehrere jpg-Dateien mit cwebp in webp :

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

Thunar benutzerdefinierte Aktion:

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

Thunar Custom Action, Verschieben von Webp-Bildern in einen Unterordner:

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

Die Standardqualitätseinstellung von Cwebp ist 75.

user8547
quelle
0

installiere das webp paket mit sudo apt install webp, danach sollte es funktionieren.

törzsmókus
quelle