Manipulando arquivos de áudio com PyDub

Processamento de Linguagem Falada em Python

Daniel Bourke

Machine Learning Engineer/YouTube Creator

Diminuindo para 11

# Importar arquivo de áudio
wav_file = AudioSegment.from_file("wav_file.wav")
# Menos 60 dB
quiet_wav_file = wav_file - 60
# Tentar reconhecer áudio baixo
recognizer.recognize_google(quiet_wav_file)
UnknownValueError:
Processamento de Linguagem Falada em Python

Aumentando o volume

# Aumentar o volume em 10 dB
louder_wav_file = wav_file + 10
# Tentar reconhecer
recognizer.recognize_google(louder_wav_file)
this is a wav file
Processamento de Linguagem Falada em Python

Tudo soa igual

# Importar AudioSegment e normalizar
from pydub import AudioSegment
from pydub.effects import normalize
from pydub.playback import play
# Importar áudio com volume irregular
loud_quiet = AudioSegment.from_file("loud_quiet.wav")
# Normalizar os níveis
normalized_loud_quiet = normalize(loud_quiet)
# Verificar o som
play(normalized_loud_quiet)
Processamento de Linguagem Falada em Python

Fazendo remix dos seus áudios

# Importar áudio com estática no início
static_at_start = AudioSegment.from_file("static_at_start.wav")
# Remover a estática via fatiamento
no_static_at_start = static_at_start[5000:]

# Verificar o novo som
play(no_static_at_start)
Processamento de Linguagem Falada em Python

Fazendo remix dos seus áudios

# Importar dois arquivos de áudio
wav_file_1 = AudioSegment.from_file("wav_file_1.wav")
wav_file_2 = AudioSegment.from_file("wav_file_2.wav")
# Combinar os dois arquivos
wav_file_3 = wav_file_1 + wav_file_2

# Verificar o som
play(wav_file_3)
# Combinar dois arquivos e deixar a combinação mais alta
louder_wav_file_3 = wav_file_1 + wav_file_2 + 10
Processamento de Linguagem Falada em Python

Dividindo seu áudio

# Importar áudio de ligação telefônica
phone_call = AudioSegment.from_file("phone_call.wav")
# Ver número de canais
phone_call.channels
2
# Dividir estéreo em mono
phone_call_channels = phone_call.split_to_mono()
phone_call_channels
[<pydub.audio_segment.AudioSegment, <pydub.audio_segment.AudioSegment>]
Processamento de Linguagem Falada em Python

Dividindo seu áudio

# Ver número de canais do primeiro item da lista
phone_call_channels[0].channels
1
# Reconhecer o primeiro canal
recognizer.recognize_google(phone_call_channel_1)
the pydub library is really useful
Processamento de Linguagem Falada em Python

Vamos codar!

Processamento de Linguagem Falada em Python

Preparing Video For Download...