staging.inyokaproject.org

ffmpeg: Dateiname nach Konvertierung

Status: Gelöst | Ubuntu-Version: Kubuntu 18.04 (Bionic Beaver)
Antworten |

Chip88

Anmeldungsdatum:
16. Juni 2008

Beiträge: Zähle...

Hey zusammen,

ich steh grad etwas auf dem Schlauch & bräuchte mal bitte wieder einen entscheidenden Hinweis von Euch.

Hab ein kleines Servicemenü programmiert, um webp in png zu konvertieren:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
[Desktop Entry]
Type=Service
ServiceTypes=KonqPopupMenu/Plugin
MimeType=image/webp;
Icon=image-png
Actions=convert
X-KDE-Priority=TopLevel
X-KDE-StartupNotify=false
X-KDE-Submenu=Image
X-KDE-Submenu[de]=Bild bearbeiten

[Desktop Action convert]
Name[de]=zu png konvertieren
Icon=image-png
Exec=ffmpeg -i %f %f.png

Das funktioniert soweit auch richtig. Allerdings bewirkt das einen Output der Form: Dateiname.webp.png.

Ich weiß, dass man das .webp im Dateinamen des Outputs entfernen kann. Leider funktioniert die mir bekannte Variante nicht. Wenn ich Zeile 15 um

&& "`echo "%f" | sed s/.webp/_converted/`"

ergänze zu

Exec=ffmpeg -i %f %f.png && "`echo "%f" | sed s/.webp/_converted/`"

läuft die Konvertierung ins Leere.

Vielen Dank im Voraus für Eure Unterstützung!

Chipy

merlin1987

Anmeldungsdatum:
27. Juli 2009

Beiträge: 363

Verwende

ffmpeg -i %f $(echo %f | sed s/webp/png/)

Nebenbei glaube ich aber, dass 'convert' aus dem imagemagick-Paket bessere Ergebnisse liefert.

Chip88

(Themenstarter)

Anmeldungsdatum:
16. Juni 2008

Beiträge: Zähle...

merlin1987 schrieb:

Verwende

ffmpeg -i %f $(echo %f | sed s/webp/png/)

Nebenbei glaube ich aber, dass 'convert' aus dem imagemagick-Paket bessere Ergebnisse liefert.

Sehr elegant! Vielen Dank!

'convert' hab ich als allererstes versucht. Da kommt aber eine Fehlermeldung:

chip@chip:~$ convert img019.webp 019.png
convert-im6.q16: delegate failed `'dwebp' -pam '%i' -o '%o'' @ error/delegate.c/InvokeDelegate/1919.
convert-im6.q16: unable to open file `/tmp/magick-21218r_J3R1BAH4px': Datei oder Verzeichnis nicht gefunden @ error/constitute.c/ReadImage/544.
convert-im6.q16: no images defined `019.png' @ error/convert.c/ConvertImageCommand/3258.

Hab auch noch weiter experimentiert & bin auf das hier gekommen:

#Exec=ffmpeg -i %f %f.png && rename s/.webp.png/.png/ *.*

Funktioniert, aber Deins ist eleganter.

merlin1987

Anmeldungsdatum:
27. Juli 2009

Beiträge: 363

Chip88 schrieb:

'convert' hab ich als allererstes versucht. Da kommt aber eine Fehlermeldung:

Ist bei dir das Paket 'libwebp6' installiert? Dann braucht es kein delegate (cwebp, dwebp) mehr. Ich bin allerdings schon auf 20.10.

Chip88

(Themenstarter)

Anmeldungsdatum:
16. Juni 2008

Beiträge: Zähle...

merlin1987 schrieb:

Chip88 schrieb:

'convert' hab ich als allererstes versucht. Da kommt aber eine Fehlermeldung:

Ist bei dir das Paket 'libwebp6' installiert? Dann braucht es kein delegate (cwebp, dwebp) mehr. Ich bin allerdings schon auf 20.10.

EDIT:

N̶e̶i̶n̶,̶ ̶u̶n̶t̶e̶r̶ ̶1̶8̶.̶1̶0̶ ̶i̶s̶t̶ ̶n̶o̶c̶h̶ ̶k̶e̶i̶n̶ ̶'̶l̶i̶b̶w̶e̶b̶p̶6̶'̶ ̶d̶a̶b̶e̶i̶.̶.̶.̶

Hab es nochmal geprüft:

Doch, das Paket libwebp6 ist ordnungsgemäß installiert.

Chip88

(Themenstarter)

Anmeldungsdatum:
16. Juni 2008

Beiträge: 568

merlin1987 schrieb:

Chip88 schrieb:

'convert' hab ich als allererstes versucht. Da kommt aber eine Fehlermeldung:

Ist bei dir das Paket 'libwebp6' installiert? Dann braucht es kein delegate (cwebp, dwebp) mehr. Ich bin allerdings schon auf 20.10.

Bei mir musste das Paket webp musste nachinstalliert werden.

Quelle - auch für den Workaround mit ffmpeg.

Antworten |