Generador de videos
Script en Python que arma automáticamente el video de un álbum completo a partir de portada, fondo y pistas de audio.
Para subir los álbumes completos al canal siempre tuve que armar el video a mano: abrir el editor, importar cada pista, acomodar los tiempos, agregar el texto con el nombre de la canción… un proceso que se volvía bastante tedioso dependiendo de la cantidad de temas.
Así que escribí un script en Python que hace todo eso solo. Le das la portada, el fondo y los archivos de audio, y él genera el video.
Toma las canciones de una carpeta (o de un archivo .cue si el álbum viene en un solo archivo de audio), lee los metadatos para saber el nombre y el orden de cada pista, arma una imagen por canción con el título y las junta con el audio en un único video sin silencios entre pistas. Al final también genera un archivo de texto con los timestamps listos para pegar en la descripción de YouTube.
El resultado es un .mp4 donde el audio corre de forma continua, exactamente como escucharías el disco.
Necesitas tener Python instalado, luego las dependencias del script:
pip install Pillow mutagen
Y ffmpeg disponible en el sistema, que es quien finalmente ensambla el video.
python3 album_video.py \
--cover portada.jpg \
--background fondo.jpg \
--audio-dir ./pistas \
--output ./salida
Si el álbum tiene imagen de CD:
python3 album_video.py \
--cover portada.jpg \
--background fondo.jpg \
--cd cd.png \
--audio-dir ./pistas \
--output ./salida
Y si viene en un solo archivo con .cue:
python3 album_video.py \
--cover portada.jpg \
--background fondo.jpg \
--cue album.cue \
--output ./salida
Antes de generar el video muestra una previsualización con el aspecto final de la imagen, así puedes ajustar colores o posiciones si algo no convence.
Todo lo editable (tamaños, posiciones, fuente, colores del texto) está agrupado al inicio del archivo bajo una sección llamada CONFIGURACION, sin necesidad de tocar el resto del código.
Tener en cuenta que todavía está en creación, puede que alguna funcionalidad tenga errores o no esté optimizada. Con el paso del tiempo se mejorará.
Como es tan largo, el código se puede ver y descargar acá.
Eso.