Python 语音识别不说话就无法启动

标签 python speech-recognition pyaudio pyttsx3

我正在使用Python的语音识别、pyaudio和Python文本转语音模块创建一个Python个人助理,所以我想要的是在启动程序后我希望它说一些东西并对其进行相同的编码,但是当我运行时该程序,它首先开始监听,直到并且除非我向它提供任何随机单词,否则它不会继续前进。这是主要功能的代码。

import speech_recognition as sr 
import random
import functions.Response as speech
import functions.custom_input
import functions.device_stats
import num2words
import sys,os
import functions.check_user
from functions.Response import say,listen

def check():
    say("Starting Program")
    say("Initializing modules")
    say("Modules Intialized")
    say("Performing System Checks")
    say("Sytem Checks Done")
    say("Starting happy protocol")
    
check()


有什么想法吗?该怎么办?

最佳答案

您的程序缺少很多信息。这不是问题,因为我也曾经历过你所在的地方。您缺少一些代码行。这里有一个可行且更简单的替代方案,而不是导入 say 函数或响应之类的东西。

import pyttsx3
import speech_recognition as sr


engine = pyttsx3.init('sapi5')
voices = engine.getProperty('voices')
engine.setProperty('voice', voices[1].id)

def say(audio):
    engine.say(audio)
    engine.runAndWait()

def check():
    say("Starting Program")
    say("Initializing modules")
    say("Modules Intialized")
    say("Performing System Checks")
    say("Sytem Checks Done")
    say("Starting happy protocol")

check()

您稍后可以为虚拟助手添加命令......

关于Python 语音识别不说话就无法启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66497054/

相关文章:

python - Matplotlib ytick的绝对值

python - 将多声道 PyAudio 转换为 NumPy 数组

python - Pyaudio 如何仅在一个扬声器上播放声音

android - 如何摆脱 Android 中的 'Service not registered: android.speech.SpeechRecognizer' 错误

ios - SpeechKit 所需条件为 false : IsFormatSampleRateAndChannelCountValid(format)

android - PhoneGap 安卓语音识别

Python 读取麦克风而不使用 PyAudio

python - 使用 *args 和 **kwargs 在 Python 中初始化类 Object() 的正确方法

Python:如何在运行时获取实例的名称?

python - Numpy:如何在数组数组中滚动 1 "row"