summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormatthewsotoudeh <matthewsot@outlook.com>2017-02-05 12:56:51 -0800
committermatthewsotoudeh <matthewsot@outlook.com>2017-02-05 12:56:51 -0800
commit68b6f6ff265033e904e80450a9377fd30edca4a3 (patch)
treead473dd778355f6af75cc01404acb958b2d8db5e
parentdf15aa053e5bf3e4f67c7612cf475e0ddcf854d7 (diff)
better priming
-rw-r--r--content/scripts/speech-rec.js14
-rw-r--r--ps/sr-abstraction.js18
2 files changed, 20 insertions, 12 deletions
diff --git a/content/scripts/speech-rec.js b/content/scripts/speech-rec.js
index 23e6a53..f752c54 100644
--- a/content/scripts/speech-rec.js
+++ b/content/scripts/speech-rec.js
@@ -14,8 +14,14 @@ speechRecognizer.finalHypothesisCallback = function (hyp) {
//Prime the speech recognition with ~0.5s of previous data
setInterval(function () {
if (window.recognizingSpeech) return;
- try {
- speechRecognizer.stopRecognizing(true);
+ if (!webkitSpeechRecognition) {
+ speechRecognizer.stopRecognizing();
speechRecognizer.startRecognizing();
- } catch (err) { }
-}, 500);
+ } else {
+ speechRecognizer.recognition.onend = function () {
+ speechRecognizer.recognition.start();
+ //speechRecognizer.recognition.onend = null;
+ }
+ speechRecognizer.recognition.end();
+ }
+}, 1000);
diff --git a/ps/sr-abstraction.js b/ps/sr-abstraction.js
index 215be09..eb1a9d9 100644
--- a/ps/sr-abstraction.js
+++ b/ps/sr-abstraction.js
@@ -16,18 +16,18 @@ if (typeof SpeechRecognition == "undefined" && typeof webkitSpeechRecognition ==
};
} else {
console.log("Using browser speech recognition API");
- var recognition;
+ speechRecgonizer.recognition;
if (webkitSpeechRecognition) {
- recognition = new webkitSpeechRecognition();
+ speechRecognizer.recognition = new webkitSpeechRecognition();
} else {
- recognition = new SpeechRecognition;
+ speechRecognizer.recognition = new SpeechRecognition;
}
- recognition.continuous = true;
- recognition.interimResults = true;
+ speechRecognizer.recognition.continuous = true;
+ speechRecognizer.recognition.interimResults = true;
- recognition.onstart = function() { }
- recognition.onresult = function(e) {
+ speechRecognizer.recognition.onstart = function() { }
+ speechRecognizer.recognition.onresult = function(e) {
for (var i = event.resultIndex; i < event.results.length; ++i) {
if (e.results[i].isFinal) {
speechRecognizer.finalHypothesisCallback(e.results[i][0].transcript);
@@ -40,7 +40,9 @@ if (typeof SpeechRecognition == "undefined" && typeof webkitSpeechRecognition ==
recognition.onend = function() { }
speechRecognizer.startRecognizing = function () {
- recognition.start();
+ try {
+ recognition.start();
+ } catch { }
};
speechRecognizer.stopRecognizing = function (abort) {
if (abort) {
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback