Я делаю свой проект, который записывает и воспроизводит звук с помощью raspberrypi.
Нет проблем с записью или воспроизведением. Но я хочу контролировать тон или высоту голоса пользователя. Но я не могу найти способ. Есть ли библиотека, чтобы использовать этот случай?
Я использовал pyaudo для записи и pygame для игры. Я тоже публикую свой код. Спасибо
А вот и мои настройки для записи
"""setting for recording"""
CHUNK = 1 #1024 buffer/1 frame
FORMAT = pyaudio.paInt16
CHANNELS = 1
RATE = 48000 #48Khz
RECORD_SECONDS =15 #time to record
WAVE_OUTPUT_FILENAME = "output.wav"
"""setting for recording"""
def recording():
p = pyaudio.PyAudio()
stream = p.open(format=FORMAT,
channels=CHANNELS,
rate=RATE,
input=True,
frames_per_buffer=CHUNK)
print("Start to record the audio.")
frames = []
for i in range(0, int(RATE / CHUNK * RECORD_SECONDS)):
GPIO.output(22,True)
data = stream.read(CHUNK, exception_on_overflow = False)
frames.append(data)
print("Recording is finished.")
stream.stop_stream()
stream.close()
p.terminate()
waveFile = wave.open(WAVE_OUTPUT_FILENAME, 'wb')
waveFile .setnchannels(CHANNELS)
waveFile.setsampwidth(p.get_sample_size(FORMAT))
waveFile.setframerate(RATE)
waveFile.writeframes(b''.join(frames))
waveFile.close()