¿Cómo normalizar una colección de audio?
6 febrero 2008
Siempre que escucho las canciones en mi equipo o en mi reproductor mp3 acabo hasta las narices de ir ajustando el sonido cada vez que cambio de canción. Unas caciones están “a todo volumen” mientras que otras ni se oyen.
Hoy he intentado buscar una solución, ya que últimamente casi me quedo sordo y gracias al post anterior a este sobre cómo utilizar find lo he conseguido utilizando mp3gain.
Para distribuciones derivadas de debian, basta con un:
$ sudo apt-get install mp3gain
Mi colección de audio está organizada en carpetas, en el primer nivel tengo las carpetas correspondiente a autores y en un segundo nivel tengo una carpeta por cada album. Sé que probablemente esta no sea la mejor organización, pero os ayudará a entender por qué uso find tal como lo uso.
Como tengo los álbumes en distintas carpetas y generalmente cuando escucho mi música lo hago de álbum en álbum, lo que me interesa es que los ficheros de audio de cada directorio estén normalizados entre sí, pero no necesariamente entre distintos directorios (álbumes). Bien, pues vamos con la receta:
$ find . -type d -exec sh -c "cd \"{}\" && mp3gain -p -a -k *" \;
Atomic cat - Trance Time
01 - Atomic cat - Song of peace.mp3
02 - Atomic cat - Show me the way.mp3
03 - Atomic cat - House wave.mp3
04 - Atomic cat - Pulsation.mp3
05 - Atomic cat - Let me take it on a ride.mp3
06 - Atomic cat - Fly with me.mp3
07 - Atomic cat - From Bombay to Calcutta.mp3
08 - Atomic cat - Believe.mp3
09 - Atomic cat - La mort du Loup.mp3
10 - Atomic cat - Les larmes de la Lune.mp3
11 - Atomic cat - Sensation.mp3
12 - Atomic cat - Angel Fly.mp3
[cover] Atomic cat - Trance Time.jpg
Can't find any valid MP3 frames in file [cover] Atomic cat - Trance Time.jpg
Applying mp3 gain change of -7 to 01 - Atomic cat - Song of peace.mp3...
Applying mp3 gain change of -7 to 02 - Atomic cat - Show me the way.mp3...
Applying mp3 gain change of -7 to 03 - Atomic cat - House wave.mp3...
Applying mp3 gain change of -7 to 04 - Atomic cat - Pulsation.mp3...
Applying mp3 gain change of -7 to 05 - Atomic cat - Let me take it on a ride.mp3...
Applying mp3 gain change of -7 to 06 - Atomic cat - Fly with me.mp3...
Applying mp3 gain change of -7 to 07 - Atomic cat - From Bombay to Calcutta.mp3...
Applying mp3 gain change of -7 to 08 - Atomic cat - Believe.mp3...
Applying mp3 gain change of -7 to 09 - Atomic cat - La mort du Loup.mp3...
Applying mp3 gain change of -7 to 10 - Atomic cat - Les larmes de la Lune.mp3...
Applying mp3 gain change of -7 to 11 - Atomic cat - Sensation.mp3...
Applying mp3 gain change of -7 to 12 - Atomic cat - Angel Fly.mp3...
Al lanzar el comando, comenzará es realizar una análisis estadístico de los ficheros de cada directorio para ajustarlos entre ellos. No os preocupéis ni por los ficheros que no sean mp3 (ya que los detecta automáticamente y los ignora) ni por que los mp3 pierdan calidad (no los recodifica, trabaja directamente con los mp3).
Si queremos deshacer los cambios que se han hecho en los mp3, simplemente tenemos que hacer:
$ find . -type d -exec sh -c "cd \"{}\" && mp3gain -p -a -k -u *.mp3" \;
No undo information in *.mp3
Undoing mp3gain changes (7,7) to 01 - Atomic cat - Song of peace.mp3...
Undoing mp3gain changes (7,7) to 02 - Atomic cat - Show me the way.mp3...
Undoing mp3gain changes (7,7) to 03 - Atomic cat - House wave.mp3...
Undoing mp3gain changes (7,7) to 04 - Atomic cat - Pulsation.mp3...
Undoing mp3gain changes (7,7) to 05 - Atomic cat - Let me take it on a ride.mp3...
Undoing mp3gain changes (7,7) to 06 - Atomic cat - Fly with me.mp3...
Undoing mp3gain changes (7,7) to 07 - Atomic cat - From Bombay to Calcutta.mp3...
Undoing mp3gain changes (7,7) to 08 - Atomic cat - Believe.mp3...
Undoing mp3gain changes (7,7) to 09 - Atomic cat - La mort du Loup.mp3...
Undoing mp3gain changes (7,7) to 10 - Atomic cat - Les larmes de la Lune.mp3...
Undoing mp3gain changes (7,7) to 11 - Atomic cat - Sensation.mp3...
Undoing mp3gain changes (7,7) to 12 - Atomic cat - Angel Fly.mp3...
¡Qué bien que mp3gain guarda información de cómo deshacer la información dentro de los tags del propio mp3!
Bien, y si lo que queremos es que nos “informe” de qué se va a hacer con los mp3, pues podemos utilizar:
$ find . -type d -exec sh -c "cd \"{}\" && mp3gain -s s -k *" \;
Con lo que tendremos una lista (es bastante larga, por eso no la he incluido en el post) de los cambios “recomendados” que se efectuarían automáticamente.
Bien, ahora os dejo a vosotros proponer la manera de conseguir lo mismo pero no a nivel de directorio, sino a nivel “global” de la colección.


Al habla