Код: Выделить всё
import asyncio
import soundfile
import sounddevice
audio_device = 'Audio Device'
async def play_audio(file):
data,fs = soundfile.read(file)
sounddevice.play(data,fs,device=audio_device)
#sounddevice.wait()
async def main():
while True:
user_input = input('>')
await play_audio(user_input)
asyncio.run(main())
Я пробовал добавить строку sounddevice.wait(), но это не позволяет мне добавлять user_inputs во время воспроизведения звука. играется. В реальной программе я использую преобразование текста в речь для создания аудиофайлов и хочу, чтобы программа генерировала следующий ввод во время воспроизведения звука, чтобы сэкономить время, но я хочу, чтобы звук завершил воспроизведение перед воспроизведением следующего аудиофайла.
Подробнее здесь: https://stackoverflow.com/questions/788 ... -in-python