Releases: evancohen/sonus
Precompiled binaries 🎉
Now using [email protected], which contains darwin (OSX), x64 (most Linux), and ARM (Pi) binaries that I've built for Node versions 6 through 12. Should make installs much quicker and no longer requires the installation of additional development libraries. Everything else is the same.
Arecord silent crash fix
It turns out arecord
stops streaming audio data after 2GB of recorded data, causing Sonus to stop listening after ~18 hours. To mitigate this, Sonus now creates a new arecord
sub-process after 1.5GB of data is streamed.
The only downside to this mitigation, is that it's not a totally seamless transition from one stream to another. If you're mid-utterance when the change happens, the remainder of the utterance will not be streamed to the cloud detector. Still better than crashing 🖖
For a detailed description of the issue, see: #94
Sonus 1.0.0
With this release, Sonus now supports the GA 2.x version of Google Could Speech. There is a small breaking change in the way that you must initialize this library (see the updated examples).
Speech context and device capture
Now you can pass in an array containing words/phrases so that the speech recognizer is more likely to recognize them!
You can also specify an input device when using arecord
.
For usage info see: docs/API.md
Trigger sonus manually
Trigger keyword/hotword manually
You can manuall trigger a hotword by passing your initialized sonus object and an index into Sonus.trigger
The indexes of your hotwords are base 1 and are deturmined by the order in which the hotwords are passed into Sonus.init
Exceptions
NOT_STARTED
- will be thrown if you have not started sonus when this is called.INVALID_INDEX
- will be thrown if you pass an invalid index.
Example:
Sonus.trigger(sonus, 1)
sonus will be triggered with a hotword index of 1
You can also optionally specify an index of 0
and an arbitrary hotword that will be returned in the hotword
event
Example:
sonus.trigger(sonus, 0, 'some hotword')
sonus will be triggered with a hotword index of 1
and a hotword of some hotword
Passing a hotword with a valid index will override the hotword name and trigger that hotword
Example:
sonus.trigger(sonus, 1, 'override')
No more crashes!
This version contains an updated version of our audio streaming dependency that should no longer crash after recognition has run for a significant amount of time.