sherpa-onnx-node
Version:
Speech-to-text, text-to-speech, speaker diarization, and speech enhancement using Next-gen Kaldi without internet connection
37 lines (28 loc) • 791 B
JavaScript
const addon = require('./addon.js');
const streaming_asr = require('./streaming-asr.js');
class KeywordSpotter {
constructor(config) {
this.handle = addon.createKeywordSpotter(config);
this.config = config
}
createStream() {
const handle = addon.createKeywordStream(this.handle);
return new streaming_asr.OnlineStream(handle);
}
isReady(stream) {
return addon.isKeywordStreamReady(this.handle, stream.handle);
}
decode(stream) {
addon.decodeKeywordStream(this.handle, stream.handle);
}
reset(stream) {
addon.resetKeywordStream(this.handle, stream.handle);
}
getResult(stream) {
const jsonStr = addon.getKeywordResultAsJson(this.handle, stream.handle);
return JSON.parse(jsonStr);
}
}
module.exports = {
KeywordSpotter,
}