Implementarea recunoașterii vorbirii ar părea o sarcină descurajantă, dar datorită unei biblioteci numită annyang, puteți implementa o configurație de bază în 5 minute. Aruncă o privire la „demo-ul lor”. S-ar putea să te facă să vrei să înveți asta și mai mult.

Lasă-mă să-ți arăt cum funcționează. Vom face un exemplu care va accepta 2 comenzi vocale: „Bună ziua” și „La revedere”. Apoi va răspunde în consecință.

Deoarece serviciul nu vă va permite să îl apelați de la localhost folosind un fișier index.html simplu, să facem o aplicație nod foarte simplă pentru a o vedea în acțiune. „Verificați codul” sau urmați mai jos:

Configurarea aplicației nod

Folosind terminalul, creați un folder de proiect numit anniyang și în cadrul acestuia creați fișierul index.js

mkdir annyang // make the folder
cd annyang // go to the folder
touch index.js // create the file

Pentru a monta rapid aplicația noastră nod, instalați express și ejs

npm install express ejs

Creați un fișier numit app.js

touch app.js

Lipiți acest lucru în app.js:

const express = require('express');
const app = express();
app.set('view engine', 'ejs');
app.get('/', function(req, res) {  
  res.render('index', { title: 'The index page!' })
});
app.listen(3000, () => console.log('Example app listening on port 3000!'))

Aceasta este o aplicație nod foarte simplă. În principal, putem vedea că va apela fișierul nostru index cu codul nostru de recunoaștere a vorbirii atunci când cineva pornește aplicația. Să facem acel fișier.

Înapoi în terminalul dvs., creați un folder numit views și în interiorul acestuia creați fișierul index.ejs

mkdir views // make the folder
cd views // go to the folder
touch index.ejs // make the file

Codul de recunoaștere a vorbirii

Lipiți acest cod în index.ejs:

<!DOCTYPE html>
<html>
<head>
 <title>Annyang</title>
 <script src="https://cdnjs.cloudflare.com/ajax/libs/annyang/2.6.0/annyang.min.js"></script>
   <script>
     if (annyang) {
       // Let's define a command.
       var commands = {
         'hello': function() { alert('Hey! How are you?'); },
         'goodbye': function() { alert('See you later!'); }
       };
       // This should be true
       console.log(annyang.isListening())
       // Add our commands to annyang
       annyang.addCommands(commands);
       // Start listening.
       annyang.start();
       annyang.addCallback('soundstart', function() {
         console.log('sound detected');
       });
     }
    </script>
  </head>
  <body>
    <h1>Say hello or goodbye</h1>
  </body>
</html>

Să defalcăm codul. Mai întâi importăm anniang folosind un CDN:

<script src="https://cdnjs.cloudflare.com/ajax/libs/annyang/2.6.0/annyang.min.js"></script>

Notă: deoarece importăm express și ejs ca pachete nod, am încercat să instalez anniyang prin npm, dar nu a funcționat bine, așa că am trecut la metoda CDN.

Următoarea etichetă de script conține codul nostru de recunoaștere a vorbirii. Verificăm dacă biblioteca anyang a încărcat și dacă da:

  1. Creăm comenzi ( Bună și La revedere)
  2. Adăugați comenzile
  3. Incepe sa asculti
  4. Adăugați un apel invers care ne va spune dacă a fost detectat sunet

Încearcă

Rulați aplicația tastând acest lucru în terminalul dvs.:

node app.js
  • Deschideți browserul și accesați localhost:3000
  • Browserul ar trebui să vă ceară permisiunea de a utiliza microfonul. Accept.
  • Spune buna". Va apărea o alertă pentru a vă saluta!

Acum vă puteți personaliza comenzile și răspunsurile. În teorie, acest lucru permite recunoașterii vorbirii să se integreze cu ușurință cu alte tehnologii. În practică, nu este încă atât de fiabil pe cât ne-am dori să fie încă. Unele comenzi nu funcționează, iar aplicația poate înceta să funcționeze împreună după un timp. În orice caz, viitorul este luminos pentru recunoașterea vorbirii și asta dovedește că JavaScript va străluci chiar lângă el.

Codare fericită,

Ivan