Estoy buscando una manera de normalizar el sonido en MUCHOS archivos MP3 que tengo. Algunos tienen un sonido bajo, mientras que otros son más fuertes, así que tengo que subir o bajar el volumen según la canción. ¿Qué formas hay de hacer esto para todos los archivos? Especialmente me gustaría hacerlo a través del terminal, pero también se aceptan formas GUI.
39
Respuestas:
Audacia
Con Audacity podemos procesar fácilmente archivos por lotes para aplicar conversiones o efectos a muchos archivos en una lista. Para hacerlo, primero tenemos que definir una "Cadena" que contenga los efectos que queremos aplicar.
Esto se hace con "Archivo -> Editar cadenas ..." . En la ventana que se abre ahora, presione el botón Agregar en la parte inferior izquierda para insertar una nueva cadena (asígnele un nombre razonable):
Luego, elija el efecto y sus parámetros para insertar en la cadena (aquí se muestran los valores predeterminados y el efecto Normalizar).
Cuando termine, deje esta ventana con Aceptar para abrir "Archivo -> Aplicar cadena ..." . Seleccione la Cadena que acabamos de crear y cargue todos los archivos que necesite con "Aplicar a archivos ..." . Se pueden seleccionar varios archivos del selector de archivos que se abre.
Los archivos procesados se guardarán en un nuevo subdirectorio "limpiado" en la ruta del original.
SoX
Desde la versión> 14.3 podemos usar el filtro sox
--norm
para normalizar el audio en la línea de comando o para el procesamiento por lotes:El soporte de MP3 se agrega a Sox con libsox-fmt-all:
fuente
for f in *.mp3; do sox --norm "$f" /tmp/sox.mp3; mv -v /tmp/sox.mp3 "$f"; done
Echa un vistazo @ mp3gain, que para mí es incluso mejor que normalizar audio
otra versión útil podría ser la -c que evita preguntar si desea hacer los cambios para muchos archivos:
como se dice en la página del manual:
mp3gain no solo hace la normalización máxima, como lo hacen muchos normalizadores. En cambio, realiza un análisis estadístico para determinar qué tan alto suena realmente el archivo para el oído humano. Además, los cambios que realiza mp3gain son completamente sin pérdidas. No se pierde calidad en el cambio porque el programa ajusta el archivo mp3 directamente, sin decodificar y volver a codificar.
Nota : Ese paquete se eliminó a propósito en ubuntu 15.04.
Debian propone el
python-rgain
paquete como reemplazo (la ventaja es que 'replaygain' admite varios formatos de archivo, a saber, Ogg Vorbis, Flac, WavPack y MP3. Además, le permite ver la información existente de Replay Gain en cualquiera de esos tipos de archivos). Después de instalarlo, ejecutereplaygain
.Para instalar python-rgain desde la terminal, ejecute el comando
Alternativamente, obtenga el
.deb
archivo para 14.04 (la última) desde aquí . Instalar como de costumbre. Después de eso, debe ejecutarsudo apt-get -f install
para corregir algunos problemas de dependencias.fuente
mkdir mp3gain; cd mp3gain; wget https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/mp3gain/1.5.2-r2-6/mp3gain_1.5.2-r2.orig.tar.gz; tar -xvzf mp3gain_1.5.2-r2.orig.tar.gz; make; sudo make install
Usaría este proyecto Normalizar , es una herramienta de línea de comandos para normalizar archivos de audio. Parece ser exactamente lo que necesitas. Puede hacer procesamiento por lotes y no requiere remuestreo a formatos intermedios.
Es en los repositorios de paquetes como normalizar audio,
sudo apt-get install normalize-audio
. Esta es una compilación mantenida corriente arriba por Debian, por lo que debería estar en cualquier versión LTS o más reciente y está construida con compatibilidad mp3 (probada). Hay una buena página de manualman normalize-audio
para explorar las opciones, pero los valores predeterminados de los comandos parecen funcionar bien. Para el procesamiento por lotes (normalice el volumen en varios archivos)normalize-audio -b *.mp3
o especifique nombres de archivos individuales en lugar de usar comodines.fuente
libsox-fmt-mp3
,libavcodec-extra
.-b *.mp3
hacer algo con solo un archivo (¿aleatorio?).volver a ganar
Más rápido y fácil
replaygain
:Instalar:
sudo apt install python-rgain
.-f, --force
Vuelva a calcular la ganancia de reproducción incluso si el archivo ya contiene información de ganancia.Dado que solo calcular / cambiar el valor de recuperación, también es más rápido: con una PC promedio (Intel i7-6500U, 8GB de RAM) la velocidad fue de ~ 20 archivos / minuto.
Referencia
fuente
Por el bien, arrojaré mis 2 centavos. Estaba buscando exactamente lo mismo (solo para archivos ogg) y comencé un hilo en Crunchbang Forum. Puede verlo aquí: Normalize-audio no puede encontrar el decodificador de mp3
Básicamente mi solución fue el script en la publicación # 8. Funciona para archivos de entrada mp3, flac y ogg, posiblemente otros, pero definitivamente no wav.
Simplemente cree un archivo (asígnele el nombre que desee, llamé el mío db_adjust_mp3), chmod + x, y péguelo en su carpeta ~ / bin. También completa los datos de códec que faltan. Ejemplo:
Archivo original:
16._This_Protector.mp3: Audio file with ID3 version 2.3.0, contains:
vs.
Archivo normalizado:
16._This_Protector.mp3: Audio file with ID3 version 2.3.0, contains: MPEG ADTS, layer III, v1, 192 kbps, 44.1 kHz, JntStereo
He modificado el script para usar normalize-mp3 aquí para que pueda usarlo si lo desea:
Este script calcula la diferencia entre el nivel de db actual y -12db, luego aplica un ajuste de ganancia para poner la ganancia exactamente en -12db, que es lo que he encontrado que funciona mejor para mí. También es recursivo, lo que lo hace ideal para hacer colecciones completas de música o archivos en muchas subcarpetas. Si desea establecer un nivel de base de datos diferente, simplemente cambie las dos instancias del número "12" a cualquier nivel de base de datos que le gustaría usar. Como publiqué en mi hilo Crunchbang, el uso es el siguiente:
Sin embargo, cuando solía mantener mi biblioteca de música en formato mp3, también solía usar mp3gain, tal como sugirió Philippe. La simplicidad muerta es genial y realmente me gustó. Sin embargo, el problema con normalizar audio es que decodifica y vuelve a codificar los archivos, por lo que hay una degradación del sonido. Pero a menos que sea un audiófilo y sus mp3 estén codificados a una tasa de bits alta, no debería notar mucha diferencia.
Sin embargo, lo que noté con mp3gain fue que, sin importar las opciones que probé, no podía hacer que todo en mi colección tuviera exactamente el mismo nivel de db, que es lo que quiero para que nunca tenga que ajustar el volumen de una pista a el siguiente. Este script hace exactamente eso. Perdón por estar tanto tiempo sin aliento. Espero que esto ayude.
fuente
La respuesta de Neil me gustó más, porque no introduce correlación entre los archivos de audio: solo elija un nivel de ganancia y ajuste todo a él.
Sin embargo, tuve algunos problemas al analizar la salida de
normalize-ogg
algunos archivos que tengo. También hay un problema desagradable conbc
: no hace un redondeo real, solo se trunca.Así que finalmente renuncié a las secuencias de comandos de shell y me mudé a Python.
Nota 1: la parte exiftool podría ser exagerada, pero quería estar 100% seguro de que se conservaría la tasa de bits original.
Nota 2: esto sobrescribirá los originales, si desea conservarlos, use --backup en la última llamada para normalizar-ogg. Pero me pareció más práctico mantener una copia en un directorio separado y más seguro.
Nota 3: esta solución trata con archivos ogg, pero es trivial adaptarlo a mp3, simplemente reemplace las ocurrencias de "ogg" con "mp3".
Aquí está mi opinión sobre el problema. La última versión se puede encontrar aquí: regain.py
fuente