如何在node.js服务器上使用AnnYang语音重组?

更新日志:

ws@0.5.0 install /Users/matthew.harwood/workspace/akqa/insights/tts/node-pocketsphinx/node_modules/socket.io/node_modules/engine.io/node_modules/ws > (node-gyp rebuild 2> builderror.log) || (exit 0) CXX(target) Release/obj.target/bufferutil/src/bufferutil.o SOLINK_MODULE(target) Release/bufferutil.node SOLINK_MODULE(target) Release/bufferutil.node: Finished CXX(target) Release/obj.target/validation/src/validation.o SOLINK_MODULE(target) Release/validation.node SOLINK_MODULE(target) Release/validation.node: Finished > ws@0.4.31 install /Users/matthew.harwood/workspace/akqa/insights/tts/node-pocketsphinx/node_modules/socket.io/node_modules/socket.io-client/node_modules/engine.io-client/node_modules/ws > (node-gyp rebuild 2> builderror.log) || (exit 0) CXX(target) Release/obj.target/bufferutil/src/bufferutil.o SOLINK_MODULE(target) Release/bufferutil.node SOLINK_MODULE(target) Release/bufferutil.node: Finished CXX(target) Release/obj.target/validation/src/validation.o SOLINK_MODULE(target) Release/validation.node SOLINK_MODULE(target) Release/validation.node: Finished > pocketsphinx@1.0.1 install /Users/matthew.harwood/workspace/akqa/insights/tts/node-pocketsphinx > node-gyp rebuild Package pocketsphinx was not found in the pkg-config search path. Perhaps you should add the directory containing `pocketsphinx.pc' to the PKG_CONFIG_PATH environment variable No package 'pocketsphinx' found Package sphinxbase was not found in the pkg-config search path. Perhaps you should add the directory containing `sphinxbase.pc' to the PKG_CONFIG_PATH environment variable No package 'sphinxbase' found gyp: Call to 'pkg-config --cflags pocketsphinx sphinxbase' returned exit status 1. while trying to load binding.gyp gyp ERR! configure error gyp ERR! stack Error: `gyp` failed with exit code: 1 gyp ERR! stack at ChildProcess.onCpExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:343:16) gyp ERR! stack at ChildProcess.emit (events.js:98:17) gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:820:12) gyp ERR! System Darwin 13.2.0 gyp ERR! command "node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" gyp ERR! cwd /Users/matthew.harwood/workspace/akqa/insights/tts/node-pocketsphinx gyp ERR! node -v v0.10.35 gyp ERR! node-gyp -v v1.0.2 gyp ERR! not ok npm ERR! Darwin 13.2.0 npm ERR! argv "node" "/usr/local/bin/npm" "install" npm ERR! node v0.10.35 npm ERR! npm v2.1.18 npm ERR! code ELIFECYCLE npm ERR! pocketsphinx@1.0.1 install: `node-gyp rebuild` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the pocketsphinx@1.0.1 install script 'node-gyp rebuild'. npm ERR! This is most likely a problem with the pocketsphinx package, npm ERR! not with npm itself. npm ERR! Tell the author that this fails on your system: npm ERR! node-gyp rebuild npm ERR! You can get their info via: npm ERR! npm owner ls pocketsphinx npm ERR! There is likely additional logging output above. npm ERR! Please include the following file with any support request: npm ERR! /Users/matthew.harwood/workspace/akqa/insights/tts/node-pocketsphinx/npm-debug.log 

我有一个节点安装的覆盆子pi。 我想要一个语音识别的方法来运行; 不过,我希望networking语音api在没有打开的浏览器窗口的情况下运行。

问题:所以我find了annyang-node的一个mod的mod版本,但似乎无法让它运行?

问题:如何在没有打开浏览器的情况下从节点使用vanilla web speech api或annyang,例如从node index.js运行,这是否可能?

index.js

 var Annyang = require('annyang'); var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Hello World\n'); }).listen(1337, '127.0.0.1'); console.log('Server running at http://127.0.0.1:1337/'); var annyang = new Annyang(); // Let's define a command. var commands = { 'show tps report': function() { // do something } }; // Initialize our commands with annyang annyang.init(commands); // Trigger a command annyang.trigger('show tps report'); 

Annyang无法在节点上运行,因为浏览器实现了Web语音API,所以它需要浏览器。

对于树莓派上的固定命令集,最好试试node-pocketsphinx

http://github.com/cmusphinx/node-pocketsphinx