Sounddevice kütüphanesi ile, mikrofonumuzdan sesi alarak bir NumPy dizisi olarak kaydedebilir ve bu ses verisini WAV formatına dönüştürülebiliriz.
Program için aşağıda bilgileri ve sanal ortamda kurulum komutları verilen kütüphaneleri kullanacağız:
1. Sounddevice kütüphanesi
PortAudio kütüphanesi bağlantıları ve fonksiyonlarla ses sinyalleri içeren NumPy dizilerini oynatır ve kaydeder.
pip install sounddevice
Bu kütüphane ile birlikte, cffi ve pycparser kütüphaneleri otomatik olarak yüklenir.
2. Scipy kütüphanesi
NumPy kütüphanesine bağlı olarak çalışan bu kütüphane sesleri ses dosyalarına kaydetmek için kullanılır.
pip install scipy
Bu kütüphane ile birlikte, Numpy kütüphanesi otomatik olarak yüklenir.
Aşağıdaki program ile, belirlenen bir süre boyunca ses kaydı yapılarak bir dosyaya kaydedilir.
import sounddevice as sd
from scipy.io.wavfile import write
fs = 44100 # Saniyedeki örnekleme sayısı
saniye = 5 # Kayıt süresi
kayit = sd.rec(int(saniye * fs), samplerate=fs, channels=2)
sd.wait() # Kayıt bitene kadar bekleme
write('kayit.wav', fs, kayit) # wav dosyası olarak kaydetme
Programı çalıştırdığımızda, 5 saniye süre ile ses kaydetmeye başlar. Süre sona erdiğinde, ses kaydı sona erer ve kaydedilen ses verileri bir dosyaya kaydedilir.