BaşlayınÜcretsiz Başlayın

PyDub ile stereo sesi mono kanallara ayırma

Telefon görüşmelerini yazıya dökmeye çalışıyorsan, kayıtların her kanalda bir konuşmacı olacak şekilde stereo formatta yapılmış olma ihtimali var.

Gördüğün gibi, birden fazla konuşmacının olduğu bir ses dosyasını yazıya dökmek zordur. Çözümlerden biri, birden çok konuşmacı içeren ses dosyasını, her biri tek bir konuşmacı içeren ayrı dosyalara ayırmaktır.

PyDub'un split_to_mono() işlevi bu konuda yardımcı olabilir. Stereo olarak kaydedilmiş bir AudioSegment üzerinde çağrıldığında, her kanal için bir tane olmak üzere, mono formatta iki ayrı AudioSegment'ten oluşan bir liste döndürür.

Bu egzersizde, bu stereo telefon görüşmesi (stereo_phone_call.wav) kaydını kanal 1 ve kanal 2 olarak ayırarak bunu uygulayacaksın. Bu sayede iki konuşmacı birbirinden ayrılır ve yazıya dökme işlemi kolaylaşır.

Bu egzersiz

Python ile Konuşma Dili İşleme

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • pydub içinden AudioSegment'i içe aktar.
  • stereo_phone_call.wav ile stereo_phone_call adlı bir AudioSegment örneği oluştur.
  • stereo_phone_callsplit_to_mono() kullanarak channels değişkenine ayır ve ortaya çıkan kanalları kontrol et.
  • Her kanalı yeni değişkenlere kaydet: phone_call_channel_1 ve phone_call_channel_2.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# Import AudioSegment
from ____ import ____

# Import stereo audio file and check channels
stereo_phone_call = AudioSegment.from_file(____)
print(f"Stereo number channels: {stereo_phone_call.channels}")

# Split stereo phone call and check channels
channels = stereo_phone_call.____
print(f"Split number channels: {channels[0].____}, {channels[1].____}")

# Save new channels separately
phone_call_channel_1 = channels[0]
phone_call_channel_2 = ____
Kodu Düzenle ve Çalıştır