Речь к тексту не работает в приложении web-kit узла - PullRequest
0 голосов
/ 18 марта 2020

Я пытаюсь создать приложение nw. js, которое может преобразовывать речь в текст. Когда я нажимаю кнопку «Пуск» и затем начинаю говорить, она должна отображать все, что я говорила, в текстовой области. Но преобразования речи не происходит. Однако в браузере chrome распознавание речи работает нормально. При отладке я обнаружил, что onresult метод webKitSpeechRecognition не запускается, и поэтому распознавание не работает. Подскажите, пожалуйста, как заставить распознавание речи работать в моем приложении.

index.html

<!DOCTYPE html>

<html lang="en">

    <body>
        <textarea id="textBoxResult"></textarea>
        <button id="startbutton">Start</button>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
        <script src="script.js"></script>
    </body>
</html>

script.js

var SpeechRecognition = window.SpeechRecognition || window.webkitSpeechRecognition;
navigator.mediaDevices.getUserMedia({ audio: true })
      .then(function(stream) {
        console.log('You let me use your mic!')
      })
      .catch(function(err) {
        console.log('No mic for you!')
      });


var recognition = new SpeechRecognition();
recognition.lang = 'en-US';

var Textbox = $('#textBoxResult');

var Content = '';

recognition.continuous = true;

recognition.onresult = function(event) {
  console.log("inside result");
  var current = event.resultIndex;

  var transcript = event.results[current][0].transcript;

    Content += transcript;
    Textbox.val(Content);

};

recognition.onstart = function() { 
  console.log('Voice recognition is ON.');
}

recognition.onspeechend = function() {
  console.log('No activity.');
}

recognition.onerror = function(event) {
  if(event.error == 'no-speech') {
    console.log('Try again.');  
  }
}

$('#startbutton').on('click', function(e) {
  if (Content.length) {
    Content += ' ';
  }
  recognition.start();
});

package.json

{
  "name": "nw-demo",
  "version": "1.0.0",
  "description": "endo execute",
  "main": "index.html"
}
...