использовать gTTS, чтобы говорить, а не сохранять как mp3? - PullRequest
0 голосов
/ 23 июня 2019

Я пытаюсь создать голосового помощника, используя gtts (Google text to speech).

Я попытался сделать это, но для вывода звука он смог написать что-то, что сначала сохраняет файл, а затем воспроизводит его с помощью аудиоплеера (в Ubuntu), как сделать так, чтобы он просто говорил, а несохраняя его так же, как с помощью engine.say () в pyttsx3

def speak(temp):
voice = gTTS(text=temp, lang="en")
voice.save("/home/vikrant/temp.mp3")
opener ="open" if sys.platform == "darwin" else "xdg-open"
subprocess.call([opener, "/home/vikrant/temp.mp3"])

. Сохраняет файл и воспроизводит его с помощью аудиоплеера. Я просто хочу воспроизвести его напрямую, потому что это не имеет смысла дляПомощник, чтобы открыть игрока каждый раз, чтобы что-то говорить.

1 Ответ

0 голосов
/ 23 июня 2019

Ну, я вроде решил это сам

"""This function will take a string as input
convert it into voice and save it as a file temp.mp3
play it and delete it"""
def speak(temp):
    voice = gTTS(text=temp, lang="en")
    voice.save("/home/vikrant/temp.mp3")
    opener ="open" if sys.platform == "darwin" else "xdg-open"
    subprocess.call([opener, "/home/vikrant/temp.mp3"])
    print("Speaking.....")
    time.sleep(1)
    os.remove("/home/vikrant/temp.mp3")

это работает

...