Я использую простое решение для распознавания текста с помощью webkitSpeechRecognition
. Этот код отлично работает на Windows Desktop. Но - на Браузер Android Chrome - При запуске обнаружения микрофон в строке состояния Android отображается только на 1 или 2 секунды. Если нет активности голоса - выключается и распознавание голоса прекращается. Если я говорю очень быстро после нажатия «Пуск», он остается включенным. Любые идеи о том, как сделать Android-микрофон доступным в любое время?webkitSpeechRecognition на Android Chrome
if ('webkitSpeechRecognition' in window) {
var recognition = new webkitSpeechRecognition();
recognition.continuous = true;
recognition.interimResults = true;
recognition.onstart = function() {
$("#status").html("Status: Recording...");
recognizing = true;
};
recognition.onerror = function (event) {
alert(event.error);
};
recognition.onend = function() {
recognizing = false;
};
recognition.onresult = function(event) {
var interim_transcript = '';
for (var i = event.resultIndex; i < event.results.length; ++i) {
if (event.results[i].isFinal) {
final_transcript += event.results[i][0].transcript;
} else {
interim_transcript += event.results[i][0].transcript;
}
}
final_transcript = capitalize(final_transcript);
$("#final_span").html(linebreak(final_transcript));
$("#interim_span").html(linebreak(interim_transcript));
};
}
Я знаю, что это старый, но вот источник для Microsoft API: https://github.com/Microsoft/Cognitive-Speech-STT-JavaScript –