首页 > 解决方案 > 调试后 SpeechRecognition 不起作用

问题描述

我尝试将 SpeechRecognition 与以下功能一起使用:

def on_listen():
r  = sr.Recognizer()
with sr.Microphone() as source:
    try:
        print("Dites quelques choses...")
        audio = r.listen(source, timeout = 4)
    except:
        print('Rien dit')
        return
try:
    text = r.recognize_google(audio, language = 'fr')
    print(" Vous avez dit: " + text)
    text = text
except sr.UnknownValueError:
    print("On est mal à comprendre ce que vous avez dit !")
    text = ''
except sr.RequestError as e:
    text = ''
    print("Besoin de connexion internet !")
return textenter code here

项目清单

在我的电脑上它工作正常,但调试后它不起作用


要求 = kivy==2.0.0,kivymd==0.104.2,python3,pyjnius,PyAudio,****

android.permissions = CAMERA,INTERNET,ACCESS_NETWORK_STATE,RECORD_AUDIO


在我的日志中:09-24 16:46:11.453 23801 23836 I python:文件

"/home/gence/Bureau/Python_to_apk/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/agenda/kivy/app.py", line 950, in run
09-24 16:46:11.455 23801 23836 I python  :    File "/home/gence/Bureau/Python_to_apk/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/agenda/kivy/base.py", line 582, in runTouchApp
09-24 16:46:11.456 23801 23836 I python  :    File "/home/gence/Bureau/Python_to_apk/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/agenda/kivy/base.py", line 347, in mainloop
09-24 16:46:11.457 23801 23836 I python  :    File "/home/gence/Bureau/Python_to_apk/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/agenda/kivy/base.py", line 387, in idle
09-24 16:46:11.459 23801 23836 I python  :    File "/home/gence/Bureau/Python_to_apk/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/agenda/kivy/clock.py", line 733, in tick
09-24 16:46:11.460 23801 23836 I python  :    File "/home/gence/Bureau/Python_to_apk/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/agenda/kivy/clock.py", line 776, in post_idle
09-24 16:46:11.461 23801 23836 I python  :    File "kivy/_clock.pyx", line 616, in kivy._clock.CyClockBase._process_events
09-24 16:46:11.463 23801 23836 I python  :    File "kivy/_clock.pyx", line 649, in kivy._clock.CyClockBase._process_events
09-24 16:46:11.464 23801 23836 I python  :    File "kivy/_clock.pyx", line 645, in kivy._clock.CyClockBase._process_events
09-24 16:46:11.465 23801 23836 I python  :    File "kivy/_clock.pyx", line 218, in kivy._clock.ClockEvent.tick
09-24 16:46:11.466 23801 23836 I python  :    File "/home/gence/Bureau/Python_to_apk/.buildozer/android/app/main.py", line 91, in to_listen
09-24 16:46:11.467 23801 23836 I python  :    File "/home/gence/Bureau/Python_to_apk/.buildozer/android/app/Methode.py", line 118, in on_listen
09-24 16:46:11.468 23801 23836 I python  :    File "/home/gence/Bureau/Python_to_apk/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/agenda/speech_recognition/__init__.py", line 79, in __init__
09-24 16:46:11.470 23801 23836 I python  :    File "/home/gence/Bureau/Python_to_apk/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/agenda/speech_recognition/__init__.py", line 110, in get_pyaudio
09-24 16:46:11.471 23801 23836 I python  :  AttributeError: Could not find PyAudio; check installation
09-24 16:46:11.471 23801 23836 I python  : Python for android ended.

我需要帮助!

标签: kivy

解决方案


当您编译应用程序时,buildozer 找不到要编译的 pyaudio 配方,因此默默地失败并跳过它。因此,实际上 pyaudio 甚至没有捆绑到您的 apk 中,以及为什么您会收到该错误。到目前为止,pyadio 还没有食谱,据我所知,没有人正在努力制作。您可以尝试制作自己的食谱,我建议您更改语音识别库。如何制作食谱:https ://python-for-android.readthedocs.io/en/latest/recipes/

在 android 上工作的速度识别的其他替代方法:https ://plyer.readthedocs.io/en/latest/#plyer.facades.STT


推荐阅读