
Varias páginas en Internet hablan sobre cómo usarlo ffmpeg
para unir MP3 y copiar las etiquetas, pero parece que no logro que funcione correctamente. Idealmente, lo que sucedería es que uniría todos los MP3, luego tomaría los metadatos del primer MP3, como álbum, pista, autor, etc., y los copiaría al archivo final.
He elaborado el siguiente guión. Si bien une los archivos, no copia los metadatos. Pensé que los -map_metadata 0 -id3v2_version 3 -write_id3v1 1
parámetros ffmpeg
lo harían, pero no es así. ¿Qué me estoy perdiendo?
#!/usr/bin/env bash
set -e
if [[ $# -eq 0 ]] ; then
echo "Usage: $0 <output_file> <mp3_file> <mp3_file> ..."
exit 1
fi
output_file="$1"
shift
queue_file=$(mktemp "${PWD}/queue.XXXXXX")
for m in "$@" ; do
echo "file '$m'" >> "${queue_file}"
done
cat "${queue_file}"
ffmpeg -f concat -safe 0 -i "${queue_file}" -c copy -map_metadata 0 -id3v2_version 3 -write_id3v1 1 "${output_file}"
rm "${queue_file}"