Saltar al contenido

Cómo normalizar el volumen de un archivo de audio en python: ¿algún paquete disponible actualmente?

Indagamos en el mundo on line y así brindarte la respuesta a tu inquietud, si tienes dudas deja la pregunta y te contestaremos porque estamos para ayudarte.

Solución:

Puede usar el módulo pydub para lograr la normalización del volumen máximo con la menor cantidad de código. Instalar pydub usando

pip install pydub

Inspiración desde aquí

Puede medir rms en pydub que es una medida de amplitud promedio, que pydub proporciona como audio_segment.rms. También proporciona un método conveniente para convertir valores a dBFS (audio_segment.dBFS)

Si desea que un archivo de audio tenga la misma amplitud promedio, básicamente elige una amplitud promedio (en dBFS, -20 en el ejemplo a continuación) y ajusta según sea necesario:

from pydub import AudioSegment

def match_target_amplitude(sound, target_dBFS):
    change_in_dBFS = target_dBFS - sound.dBFS
    return sound.apply_gain(change_in_dBFS)

sound = AudioSegment.from_file("yourAudio.m4a", "m4a")
normalized_sound = match_target_amplitude(sound, -20.0)
normalized_sound.export("nomrmalizedAudio.m4a", format="mp4")

from pydub import AudioSegment, effects  

rawsound = AudioSegment.from_file("./input.m4a", "m4a")  
normalizedsound = effects.normalize(rawsound)  
normalizedsound.export("./output.wav", format="wav")

Antes:

Antes de la imagen

Después:

Después de la imagen

Si te gusta el proyecto, tienes el poder dejar un artículo acerca de qué le añadirías a esta reseña.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *