Picovoice Platform
Node.js API
API Reference for the Picovoice Node.js SDK (npmjs).
Picovoice
Class for Picovoice. Picovoice can be initialized using the
class constructor()
. Resources should be cleaned when you are done using
the release()
method.
Picovoice.constructor()
constructor
method for Picovoice.
Parameters
accessKey
string : AccessKey obtained from Picovoice Console.keywordPath
string : Absolute paths to keyword model files.wakeWordCallback
(index) => {} : User-defined callback invoked upon detection of the wake phrase. Receives anindex
number.contextPath
string : The path to the Rhino context file (.rhn extension).inferenceCallback
(inference) => {} : User-defined callback invoked upon completion of intent inference. Receives aninference
object.porcupineSensitivity
number : Wake word detection sensitivity. It should be a number within [0, 1]. A higher sensitivity results in fewer misses at the cost of increasing the false alarm rate.rhinoSensitivity
number : Inference sensitivity. It should be a number within [0, 1]. A higher sensitivity results in fewer misses at the cost of increasing the false alarm rate.endpointDurationSec
number : Endpoint duration in seconds. An endpoint is a chunk of silence at the end of an utterance that marks the end of spoken command. It should be a positive number within [0.5, 5]. A lower endpoint duration reduces delay and improves responsiveness. A higher endpoint duration assures Rhino doesn't return inference pre-emptively in case the user pauses before finishing the request.requireEndpoint
boolean : If set totrue
, Rhino requires an endpoint (a chunk of silence) after the spoken command. If set tofalse
, Rhino tries to detect silence, but if it cannot, it still will provide inference regardless. Set tofalse
only if operating in an environment with overlapping speech (e.g. people talking in the background). Default value istrue
.porcupineModelPath
string : Absolute path to the file containing Porcupine's model parameters.rhinoModelPath
string : Absolute path to the file containing Rhino's model parameters.porcupineLibraryPath
string : The path to the Porcupine dynamic library (platform-dependent extension).rhinoLibraryPath
string : The path to the Rhino dynamic library (platform-dependent extension).
Returns
Picovoice
: An instance of Picovoice.
Picovoice.frameLength
The number of audio samples per frame.
Picovoice.sampleRate
The audio sample rate accepted by Picovoice.
Picovoice.version
The version of the Picovoice SDK.
Picovoice.porcupineVersion
The version of the Porcupine SDK.
Picovoice.rhinoVersion
The version of the Rhino SDK.
Picovoice.contextInfo
The context information.
Picovoice.process()
Processes a frame of the incoming audio stream. Upon detection of wake word and completion of follow-on command
inference invokes user-defined callbacks. The number of samples per frame can be attained by
calling .frameLength
. The incoming audio needs to have a sample rate equal
to .sampleRate
and be 16-bit linearly-encoded. Picovoice operates on single-channel audio.
Parameters
frame
Array<number> : A frame of audio samples.
Picovoice.reset()
Resets the internal state of Picovoice. It should be called before processing a new stream of audio or when Picovoice was stopped while processing a stream of audio.
Picovoice.release()
Releases resources acquired by Picovoice
.