2016-07-29 20 views
0

[] [1] Ich versuche eine Siri-ähnliche Anwendung in Vala Sprache zu machen. Ich finde jedoch keine Spracherkennung oder Text-zu-Sprache-Bibliotheken für Vala, die für diesen Zweck notwendig sind. Also, gibt es eine Spracherkennung und eine Text-to-Speech für Vala? Und wenn ja, könnten Sie sie dann benennen?
BTW, ich bin neu in der vala Programmierung, also bitte auch ein paar Beispiele ...Spracherkennung und Text-zu-Sprache für Vala

Danke !!!

Antwort

1

Text-zu-Sprache ist nicht sehr schwer, man kann nur Rohr einen Text zu einem der TTS-Engine Binärdateien like:

echo "Just what do you think you're doing, Dave?" | festival --tts 

oder:

espeak -ven+f3 -k5 -s150 "I've just picked up a fault in the AE35 unit" 

Wenn Sie ein nicht finden API können Sie wahrscheinlich nur spawn a process (siehe auch BasiSamples).

Spracherkennung ist ein ganz anderes Biest. Sie können versuchen, pocketsphinx (basierend auf CMU Sphinx), aber ich bezweifle es gibt eine Vala-Bindung für diese leicht verfügbar (so dass Sie eine Vapi-Datei selbst schreiben müssen).

Andere Spracherkennungs-Engines sind verfügbar, suchen Sie einfach nach "Linux-Spracherkennung" mit Ihrer bevorzugten Websuche. Ein anderer Ansatz wäre, tatsächlich einige Web-API aufzurufen, die die schwere Arbeit für Sie erledigt, aber dann müssten Sie Ihren Benutzern sagen, dass ihre Daten an das Internet gesendet werden (Datenschutzbelange kommen hier ins Spiel).

PS: Auf stackoverflow Fragen über Bibliotheken werden abgeraten (so möchten Sie vielleicht wieder vorsichtig read the tour). Normalerweise habe ich dafür gestimmt, Ihre Frage zu beenden (die für eine genaue Antwort auch zu weit gefasst ist). Auf der anderen Seite wollte ich Ihnen ein paar Hinweise geben.

+0

Danke, aber die Befehle in den Codeexemplaren sind in bash. Wie kann ich sie in mein Projekt integrieren? – user258456

+0

Sie können etwas wie 'Process.spawn_command_line_sync (" Ihr Bash-Befehl ");' ausführen, um Befehlszeilen-Strings über Ihre Vala-App auszuführen. –

+0

Die Verwendung einer VAPI-Datei für libespeak oder ähnliches wäre direkter (ohne das Erzeugen von Unterprozessen), aber ich bezweifle, dass es eine fertige VAPI-Datei zu verwenden gibt, so dass Sie diese selbst erstellen müssen. –