import sounddevice as sd | |
import numpy as np | |
import wave | |
# Nastavení parametrů nahrávání | |
CHANNELS = 1 # Počet kanálů (mono) | |
RATE = 44100 # Vzorkovací frekvence (Hz) | |
DTYPE = np.int16 # Datový typ zvuku | |
RECORD_SECONDS = 5 # Délka nahrávky (v sekundách) | |
WAVE_OUTPUT_FILENAME = "sample1.wav" # Název výstupního zvukového souboru | |
# Nahrávání zvuku z mikrofonu | |
print("Nahrávám...") | |
audio_data = sd.rec(int(RATE * RECORD_SECONDS), samplerate=RATE, channels=CHANNELS, dtype=DTYPE) | |
sd.wait() # Čeká na dokončení nahrávání | |
# Uložení nahrávky do WAV souboru | |
with wave.open(WAVE_OUTPUT_FILENAME, 'wb') as wf: | |
wf.setnchannels(CHANNELS) | |
wf.setsampwidth(audio_data.dtype.itemsize) | |
wf.setframerate(RATE) | |
wf.writeframes(audio_data.tobytes()) | |
print("Nahrávání dokončeno") | |