PyDub ile ses dosyalarını işleme

Python ile Konuşma Dili İşleme

Daniel Bourke

Machine Learning Engineer/YouTube Creator

Sesi kısmak

# Ses dosyasını içe aktar
wav_file = AudioSegment.from_file("wav_file.wav")
# 60 dB azalt
quiet_wav_file = wav_file - 60
# Kısık sesi tanımayı dene
recognizer.recognize_google(quiet_wav_file)
UnknownValueError:
Python ile Konuşma Dili İşleme

Sesi artırma

# Sesi 10 dB artır
louder_wav_file = wav_file + 10
# Tanımayı dene
recognizer.recognize_google(louder_wav_file)
bu bir wav dosyasıdır
Python ile Konuşma Dili İşleme

Hepsi aynı düzeyde geliyor

# AudioSegment'i içe aktar ve normalize et
from pydub import AudioSegment
from pydub.effects import normalize
from pydub.playback import play
# Düzensiz ses düzeyli dosyayı içe aktar
loud_quiet = AudioSegment.from_file("loud_quiet.wav")
# Ses düzeylerini normalize et
normalized_loud_quiet = normalize(loud_quiet)
# Sesi kontrol et
play(normalized_loud_quiet)
Python ile Konuşma Dili İşleme

Ses dosyalarınızı remiksleme

# Başında parazit olan sesi içe aktar
static_at_start = AudioSegment.from_file("static_at_start.wav")
# Dilimleme ile paraziti kaldır
no_static_at_start = static_at_start[5000:]

# Yeni sesi kontrol et
play(no_static_at_start)
Python ile Konuşma Dili İşleme

Ses dosyalarınızı remiksleme

# İki ses dosyasını içe aktar
wav_file_1 = AudioSegment.from_file("wav_file_1.wav")
wav_file_2 = AudioSegment.from_file("wav_file_2.wav")
# İki ses dosyasını birleştir
wav_file_3 = wav_file_1 + wav_file_2

# Sesi kontrol et
play(wav_file_3)
# İki wav dosyasını birleştir ve daha yüksek yap
louder_wav_file_3 = wav_file_1 + wav_file_2 + 10
Python ile Konuşma Dili İşleme

Sesinizi ayırma

# Telefon görüşmesi sesini içe aktar
phone_call = AudioSegment.from_file("phone_call.wav")
# Kanal sayısını bul
phone_call.channels
2
# Stereo'yu mono'ya ayır
phone_call_channels = phone_call.split_to_mono()
phone_call_channels
[<pydub.audio_segment.AudioSegment, <pydub.audio_segment.AudioSegment>]
Python ile Konuşma Dili İşleme

Sesinizi ayırma

# İlk listedeki öğenin kanal sayısını bul
phone_call_channels[0].channels
1
# İlk kanalı tanı
recognizer.recognize_google(phone_call_channel_1)
pydub kütüphanesi gerçekten kullanışlıdır
Python ile Konuşma Dili İşleme

Hadi kodlayalım!

Python ile Konuşma Dili İşleme

Preparing Video For Download...