2017-06-02 17 views
2

ich den folgenden Code verwendenSpracherkennung api „bing“ in Python ist sehr langsam

import speech_recognition as sr 

# obtain audio from the microphone 
r = sr.Recognizer() 
with sr.Microphone() as source: 
r.adjust_for_ambient_noise(source) 
print("Say something!") 
audio = r.listen(source) 
print(type(audio)) 


BING_KEY = 'KEY' # Microsoft Bing Voice Recognition API keys 32-character lowercase hexadecimal strings 
try: 
    print(type(r.recognize_bing(audio, key=BING_KEY))) 
except sr.UnknownValueError: 
    print("Microsoft Bing Voice Recognition could not understand audio") 
except sr.RequestError as e: 
    print("Could not request results from Microsoft Bing Voice Recognition service; {0}".format(e)) 

Spracherkennung in Python zu verwenden, aber es ist sehr langsam, es sogar für 20 Sekunden nacheilt! Was ist sehr langsam, können Sie jede ECHTZEIT Spracherkennung API in Python empfehlen? oder irgendwelche vorgeschlagenen Änderungen für diesen Code

Antwort

2

Ich benutze Bing Speech API, aber ich benutze keine Client-Bibliothek wie Sie. Ich benutze die REST API. Ich erhalte Audio live mit PyAudio und wenn ich feststelle, dass der Geräuschpegel gestiegen ist, fange ich an, den Sound in eine WAV-Datei aufzunehmen. Wenn er fertig ist, sende ich die Audiodaten an den Endpunkt, den dir die API-Dokumentation gibt. Es gibt mir eine Antwort ziemlich schnell, höchstens 3 Sekunden, aber es hängt irgendwie von Ihrer WLAN-Geschwindigkeit ab. Meine Methode ist komplizierter als deine, aber es ist es wert.

here ist ein Link zur Dokumentation. Sie verwenden C# in ihren Beispielen, aber da es eine Online-API ist, wenn Sie die richtigen Informationen in den Headern senden und so sollte es immer noch funktionieren.

+0

Ich benutze Python, wenn Sie also ein Codebeispiel für die REST API in Python haben, werde ich sehr dankbar sein –