admin管理员组文章数量:1289508
I'm trying to use annyang to convert speech into text, but I've ran into some problems. It works, but there's a few things that doesn't yet. First, I would like to know how would I be able to pass whatever the user said, into the alert function. Next, I would like to know how to end the annyang function when the user finished speaking. And finally, I'd like to know how to keep the allow and disallow microphone prompt from appearing again and again once it appeared once.
<script>
if (annyang) {
var mands = {
'Hello': function() {
alert("Success");
}
};
annyang.addCommands(mands);
}
</script>
<input type = 'submit' value = 'listen' onclick = "annyang.start();">
I'm trying to use annyang to convert speech into text, but I've ran into some problems. It works, but there's a few things that doesn't yet. First, I would like to know how would I be able to pass whatever the user said, into the alert function. Next, I would like to know how to end the annyang function when the user finished speaking. And finally, I'd like to know how to keep the allow and disallow microphone prompt from appearing again and again once it appeared once.
<script>
if (annyang) {
var mands = {
'Hello': function() {
alert("Success");
}
};
annyang.addCommands(mands);
}
</script>
<input type = 'submit' value = 'listen' onclick = "annyang.start();">
Share
Improve this question
asked Aug 19, 2015 at 7:29
frostyfrosty
2,66910 gold badges41 silver badges85 bronze badges
3 Answers
Reset to default 4Intead of use annyang for convert to text , you could test yourself with the original google speechrecognition demo
Original Demo
See the source code of above and you will easily do what you want with SpeechRecognition
I remend this, because annyang is more a Voice Control Plugin. By the other side you can use Artyom.js in case that you want to use a library for this.
Artyom offers an easy "dictation" object to convert speech to text quickly:
var settings = {
continuous:true, // Don't stop never because i have https connection
onResult:function(text){
console.log(text);
},
onStart:function(){
console.log("Dictation started by the user");
},
onEnd:function(){
alert("Dictation stopped by the user");
}
};
var UserDictation = artyom.newDictation(settings);
// Start listening
UserDictation.start();
// To stop
//UserDictation.stop();
The language needs to be providen in the initialize method.
var anything = function(anything) {
alert(anything);
};
var mands = {
'*anything': anything
};
this works, also it would not allert defined mands
I would like to know how would I be able to pass whatever the user said, into the alert function.
You can do something like
<script>
if (annyang) {
var mands = {
'Hello :variable': function(variable) {
alert(variable);
}
};
annyang.addCommands(mands);
}
</script>
variable
is the string, that the webspeech-api has recognized.
Next, I would like to know how to end the annyang function when the user finished speaking.
Set continuous
to false. Annyang will automatically stop the recognition, when the user has finished talking.
annyang.start({ autoRestart: false, continuous: false });
You can also add a callback function, that annyang will call, when the speech recognition has finished:
annyang.addCallback('end', function () { // your code here});
And finally, I'd like to know how to keep the allow and disallow microphone prompt from appearing again and again once it appeared once.
The only way to prevent this, is to deliver the site via https
not http
There is no other way to achieve it. Also it will improve the speed of the recognition.
本文标签: javascriptAnnyang converting speech to textStack Overflow
版权声明:本文标题:javascript - Annyang converting speech to text - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1741459836a2379969.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论