Normalizing an audio file with PyDub
Sometimes you'll have audio files where the speech is loud in some portions and quiet in others. Having this variance in volume can hinder transcription.
Luckily, PyDub
's effects module has a function called normalize()
which finds the maximum volume of an AudioSegment
, then adjusts the rest of the AudioSegment
to be in proportion. This means the quiet parts will get a volume boost.
You can listen to an example of an audio file which starts as loud then goes quiet, loud_then_quiet.wav
, here.
In this exercise, you'll use normalize()
to normalize the volume of our file, making it sound more like this.
This exercise is part of the course
Spoken Language Processing in Python
Exercise instructions
- Import
AudioSegment
fromPyDub
andnormalize
from thePyDub
's effects module. - Import the target audio file,
loud_then_quiet.wav
and save it toloud_then_quiet
. - Normalize the imported audio file using the
normalize()
function and save it tonormalized_loud_then_quiet
.
Hands-on interactive exercise
Have a go at this exercise by completing this sample code.
# Import AudioSegment and normalize
from pydub import ____
from pydub.effects import ____
# Import target audio file
loud_then_quiet = AudioSegment.from_file(____)
# Normalize target audio file
normalized_loud_then_quiet = ____(____)