kivy - 调试后 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.
我需要帮助!
解决方案
当您编译应用程序时,buildozer 找不到要编译的 pyaudio 配方,因此默默地失败并跳过它。因此,实际上 pyaudio 甚至没有捆绑到您的 apk 中,以及为什么您会收到该错误。到目前为止,pyadio 还没有食谱,据我所知,没有人正在努力制作。您可以尝试制作自己的食谱,我建议您更改语音识别库。如何制作食谱:https ://python-for-android.readthedocs.io/en/latest/recipes/
在 android 上工作的速度识别的其他替代方法:https ://plyer.readthedocs.io/en/latest/#plyer.facades.STT
推荐阅读
- nestjs - 在 TypeORM 查询中有不必要的 leftJoin
- python - 在 iOS 设备上运行时,如何允许我的 Kivy 应用程序访问文本文件?
- reactjs - 键盘日期选择器和图标丢失上可见的向上和向下箭头
- graphviz - Graphviz 边缘标签位置 - 当没有为边缘定义控制点时,graphviz 忽略标签位置
- python - 如何在python中正确创建和导入模块
- shader - 有没有一种特定的方法可以将数组作为常量缓冲区传递给着色器?
- python - Tweepy:无法使用 Tweepy Python 转推,给出 AttributeError
- python - 从列表中排除特定的第 n 个元素后,如何从列表中获取“最后一个”?
- javascript - 未捕获的 SyntaxError:意外的令牌“导出”火力库
- java - 调用Android中第一个活动相机的函数