bash

Convertir imágenes o vídeos en batch

Posted on

Uno de los problemas mas comunes que he tenido al momento de hacer o modificar páginas es el de convertir imágenes o vídeos cuando son gran cantidad por lo que investigue como hacerlo en la consola usando herramientas como ffmpeg, ImageMagick o netpbm en el entorno de bash sobre cualquier sistema operativo donde estas herramientas pueden correr.

Es muy sencillo, lo único que hay que hacer es teclear el siguiente comando :

for i in *.jpg; do nname=${i/jpg/png}; convert $i $nname; done;

la primera parte es un ciclo for donde leemos los archivos jpg del directorio actual, después hacemos la variable nname igual a la sustitución del nombre del archivo original, pero en lugar de que sea jpg sera png y en seguida le pasamos esos parámetros a la herramienta ImageMagick.

Esta obviamente es la forma mas sencilla de lo que estoy diciendo, se puede hacer mas compleja de acuerdo a lo que queramos hacer por ejemplo cambiar la resolución y otras cosas