Temps réel de la reconnaissance vocale à l'aide de WebRTC, Node.js et le moteur de reconnaissance vocale
A. Ce que je suis en train de mettre en œuvre.
Une application web permettant en temps réel de la reconnaissance vocale à l'intérieur de navigateur web (comme cette).
B. Technologies, je suis actuellement à la pensée de l'aide pour atteindre A.
- JavaScript
- Node.js
- WebRTC
- Microsoft Speech API ou Pocketsphinx.js ou quelque chose d'autre (on ne peut pas utiliser le Web Speech API)
C. Très flux de production de base
- Navigateur établit une connexion à un Nœud de serveur (serveur agit comme un serveur signalisation et sert également des fichiers statiques)
- Navigateur Web acquiert flux audio à l'aide de getUserMedia() et envoie des voix de l'utilisateur pour le Nœud serveur
- Nœud serveur transmet le flux audio reçu à moteur de reconnaissance vocale pour l'analyse
- Moteur de reconnaissance vocale de retours suite à un Nœud de serveur
- Nœud serveur envoie le texte résultat en lançant le navigateur web
- (Node server effectue les étapes 1 à 5 pour traiter les demandes à partir d'autres navigateurs)
D. Questions
- Serait Node.js être adéquate pour atteindre les C?
- Comment ai-je pu passer a reçu des flux audio à partir de mon serveur de Nœud à un moteur de reconnaissance vocale fonctionnant séparément à partir du serveur?
- Mon moteur de reconnaissance vocale être en cours d'exécution comme un autre Nœud de l'application (si j'utilise Pocketsphinx)? Donc, mon Nœud de serveur communique à mon Nœud de la reconnaissance vocale du serveur.
le code source derrière votre lien est : src.chromium.org/viewvc/chrome/trunk/src/content/browser/speech vous pouvez regarder la façon dont ILS mettent en œuvre pour informer votre architecture??
OriginalL'auteur jpen | 2014-06-01
Vous devez vous connecter pour publier un commentaire.
Oui, mais il n'y a pas d'exigences pour que. Certaines personnes sont en cours d'exécution serveurs avec gstreamer, par exemple vérifier
http://kaljurand.github.io/dictate.js/
nœud doit être bien aussi.
Il existe de nombreuses façons pour un nœud à l'autre de la communication. L'un d'eux est http://socket.io. Il y a aussi des plaine les sockets. Le cadre particulier dépend de vos besoins pour la tolérance de panne et d'évolutivité.
Oui, bien sûr. Vous pouvez créer un nœud module de courbure pocketsphinx API.
Mise à JOUR: vérifier cela, il devrait être similaire à ce dont vous avez besoin:
http://github.com/cmusphinx/node-pocketsphinx
OriginalL'auteur Nikolay Shmyrev
Vous devriez communiquer avec Andre Natal, qui a montré des démos de semblable à ce à l'automne dernier Firefox Sommet, et est maintenant sur un Google Summer of Code d'exécution des projets en mode hors connexion de reconnaissance de la parole dans Firefox/FxOS:
http://cmusphinx.sourceforge.net/2014/04/speech-projects-on-gsoc-2014/
OriginalL'auteur jesup