Как сделать пользовательский ввод с помощью голосовых GTTS - PullRequest
0 голосов
/ 21 февраля 2019

Я создаю простое приложение для пиццы с голосовым вводом.Перед созданием этого поста я много искал и не нашел ничего полезного.

Это полный код

Скрипка не выполняет код соответствующим образом, поэтомуне запускайте его там.

Проблема:

Когда я пытаюсь использовать "command" в моем "вводе« ( например

count = 0

def talkToMe(audio):

    global count
    print(audio)
    text_to_speech = gTTS(text=audio, lang='en-us')
    text_to_speech.save(f'speech{count%2}.mp3')
    mixer.init()
    mixer.music.load(f'speech{count%2}.mp3')
    mixer.music.play()
    count += 1

def myCommand():


    r = sr.Recognizer()

    with sr.Microphone() as source:
        print('Ready...')
        r.pause_threshold = 1
        r.adjust_for_ambient_noise(source, duration=1)
        audio = r.listen(source)

    try:
        command = r.recognize_google(audio).lower()
        print('You said: ' + command + '\n')

    #loop back to continue to listen for commands if unrecognizable speech is received
    except sr.UnknownValueError:
        print('Your last command couldn\'t be heard')
        command = myCommand();

    return command

def assistant(command):

    def pick_or_deli():
        global delivery
        global customer_name 
        global customer_telephone

        delivery = input("pickup - pick up / delivery - delivery:" + command)
        delivery = delivery.upper()
        if delivery == "DELIVERY":
             while running == True:
        ..............................

я просто получаю:

this

Не обращайте внимания на строчные буквы»". Даже если я изменю эту строку:

if delivery == "DELIVERY": 

на эту:

if delivery == "delivery":

Это не сработает. Даже если я нажму клавишу ввода. Система не распознает ее каквход.

Любые решения / предложения по этому вопросу было бы здорово.

...