FFmpeg: modificare la risoluzione di tutte le immagini contenute in una cartella - Versione stampabile +- Forum Informatica Libera (https://www.ergosumracalmuto.org/informaticalibera/forum) +-- Forum: Sistemi Operativi (https://www.ergosumracalmuto.org/informaticalibera/forum/forumdisplay.php?fid=5) +--- Forum: Windows (https://www.ergosumracalmuto.org/informaticalibera/forum/forumdisplay.php?fid=7) +--- Discussione: FFmpeg: modificare la risoluzione di tutte le immagini contenute in una cartella (/showthread.php?tid=321) |
FFmpeg: modificare la risoluzione di tutte le immagini contenute in una cartella - Sargon6 - 19/02/2020 Ciao a tutti. La mia prima domanda, riguarda in questo forum, riguarda l'utilizzo di FFmpeg con Windows. Su Linux, se apro un terminale in una cartella contenente immagini in formato .JPG ed impartisco il comando Codice: for i in *.JPG; do ffmpeg -i "$i" -vf scale=900:-1 "${i%.*}lr.jpg"; done # Modifica la risoluzione di tutte le immagini contenute nella cartella in modo che il lato maggiore sia di 900 pixels Come faccio ad ottenere il medesimo effetto quando il Sistema Operativo in uso è Windows 10? Ringrazio sin d'ora per la risposta. RE: FFmpeg: modificare la risoluzione di tutte le immagini contenute in una cartella - BAT - 19/02/2020 Cerca con Google con chiave "batch image converter" trovi molte utiliy che ti fanno il lavoro (XNConvert, Fastone ecc) RE: FFmpeg: modificare la risoluzione di tutte le immagini contenute in una cartella - dxgiusti - 20/02/2020 sul web dicono ( mai provato ) che ffmpeg funziona anche con windows 10. dovrebbe essere la stessa cosa. RE: FFmpeg: modificare la risoluzione di tutte le immagini contenute in una cartella - Sargon6 - 20/02/2020 (20/02/2020, 12:19)dxgiusti Ha scritto: sul web dicono ( mai provato ) che ffmpeg funziona anche con windows 10. dovrebbe essere la stessa cosa.Non nego che i comandi della versione .exe di FFmpeg siano identici ai comandi di FFmpeg per Linux, ma, a quanto pare, i comandi del terminale DOS sono diversi dai comandi della shell BASH. ne consegue che il comando Codice: M:\W10_ffmpeg\FFmpeg\bin\ffmpeg -i M:\W10_ffmpeg\P03.JPG -an -vf scale=900:-1 M:\W10_ffmpeg\P03_900.JPG funziona perfettamente sia dal terminale DOS di Windows, sia dal terminale BASH di Linux. Purtroppo il comando Codice: for i in *.JPG; do ffmpeg -i "$i" -vf scale=900:-1 "${i%.*}lr.jpg"; done # Modifica la risoluzione di tutte le immagini contenute nella cartella in modo che il lato maggiore sia di 900 pixels contiene comandi che il DOS non interpreta come li interpreta la shell BASH, quindi mi serve l'aiuto di chi conosce il terminale DOS meglio di me. (19/02/2020, 19:15)BAT Ha scritto: Cerca con Google con chiave "batch image converter" trovi molte utiliy che ti fanno il lavoro (XNConvert, Fastone ecc)Devo poter operare la conversione senza installare nulla. Non posso installare nessuno dei tools che ho trovato, e devo poter effettuare la conversione anche senza l'ausilio di una connessione a Internet. RE: FFmpeg: modificare la risoluzione di tutte le immagini contenute in una cartella - BAT - 20/02/2020 La conversione con un tool non richiede la connessione ad internet. Ad ogni modo, nei file batch DOS le variabili devono essere precedute dal simbolo % quando un comando è eseguito dal prompt, mentre da %% quando usate in un file batch. I gruppi di file si mettono tra parentesi tonde In pratica il tuo FOR messo in un file .bat si trasforma in Codice: for %%i in (*.jpg) do <il-resto-del-comando> se non è proprio questo, prova a mettere il gruppo di file tra parentesi graffe e/o ad inserire il percorso completo di directory se il batch non è nella stessa directory dei file da convertire. Trovi la sintassi completa qui: http://www.informaticando.net/page/Comando-cmd-FOR.aspx P.S. Se usi Windows 10, sappi che è possibile usare le shell di vari ambienti Linux ed usarle nell'identico modo in cui le usi ora. |