como-convertir-imagenes-a-avif

Cómo convertir imágenes a formato AVIF usando avif-cli

Avif-cli es una herramienta de línea de comandos que nos permite convertir imágenes a formato AVIF de manera rápida y y sencilla.

El formato de imagen AVIF (AV1 Image File Format) es cada vez más popular debido alta capacidad de compresión y calidad superior en comparación con otros formatos como JPEG y PNG, e incluso Webp.

Avif-cli está basada en sharp, una biblioteca de procesamiento de imágenes, capaz de manejar imágenes grandes y conversiones en lote.

Aunque AVIF está ganando soporte, aún no es compatible con todos los navegadores y dispositivos. Asegúrate de proporcionar alternativas como JPEG o PNG o incluso WEBP en tu sitio web

Instalación de avif-cli

Para utilizar Avif-cli, primero necesitas instalarlo globalmente usando NPM (el gestor de paquetes de Node.js):

npm install -g avif

Este comando instalará Avif-cli y la hará accesible desde cualquier lugar.

O tambien puedes ejecutarlo directamente con NPX

npx avif

Uso de Avif-cli

Conversión básica

Para convertir una sola imagen, utiliza el siguiente comando:

npx avif input.jpg -o output.avif

Aquí, input.jpg es la imagen que deseas convertir, y output.avif es el nombre del archivo convertido.

Opciones avanzadas

Avif-cli ofrece una gran cantidad amplia gama de opciones que te permiten controlar aspectos específicos de la conversión.

ParámetroDescripciónValor Predeterminado
--inputNombre(s) de archivo(s) de entrada*.{jpg,jpeg,tif,tiff,webp,png,gif,svg}
--outputDirectorio de salida, por defecto es el mismo directorio que el de entrada""
--qualityCalidad vs tamaño de archivo, de 1 (mínima) a 100 (máxima)50
--effortEsfuerzo de CPU vs tamaño de archivo, de 0 (más rápido/más grande) a 9 (más lento/más pequeño)4
--losslessUsar compresión sin pérdidafalse
--chroma-subsamplingSubmuestreo de croma, opciones: ‘4:2:0’ (submuestreo) o ‘4:4:4’ (sin submuestreo)4:4:4
--keep-metadataMantener todos los metadatosfalse
--overwritePermitir sobrescribir archivos de salida existentesfalse
--append-extAñadir .avif al nombre del archivo en lugar de reemplazar la extensión actualfalse
--verboseEscribir progreso en stdoutfalse
-h, --helpMostrar ayudafalse
--versionMostrar número de versiónfalse

Conversión de un directorio completo

Para convertir todas las imágenes en un directorio, puedes usar el siguiente comando:

npx avif /ruta/a/directorio/* -o /ruta/a/salida/

Esto convertirá todas las imágenes del directorio especificado a formato AVIF y las guardará en la carpeta de salida indicada.

Convertir múltiples imágenes en lote

Si tienes varias imágenes que deseas convertir, puedes hacerlo en lote usando el siguiente comando:

npx avif *.jpg -o output/

Este comando convierte todas las imágenes con extensión .jpg en el directorio actual a formato AVIF y guarda los archivos convertidos en un directorio llamado output.

Ajustar la calidad de la compresión

Puedes controlar la calidad de la imagen AVIF resultante ajustando el parámetro de calidad. El valor de calidad puede variar de 0 (peor calidad y mayor compresión) a 100 (mejor calidad y menor compresión).

npx avif input.jpg -o output.avif -q 40

En este ejemplo, la calidad de la imagen se ha ajustado al 40%.