Considering switching to wasm workers since they are a lot lighter and faster
This commit is contained in:
42
README.md
42
README.md
@@ -8,12 +8,46 @@
|
||||
- Support multiple models
|
||||
- Model storage path management
|
||||
- Model ID management (for model updates)
|
||||
- Smaller JS size (>3.1MB vs 1.4MB)
|
||||
- Smaller JS size (>3.1MB vs 1.4MB gzipped)
|
||||
- All related files (pthread worker, worklet processor,...) are merged
|
||||
- Shorter from-scratch build time
|
||||
- Faster loading and processing time
|
||||
|
||||
# Basic usage
|
||||
- Use the prebuilt binary through JsDelivr
|
||||
- See
|
||||
|
||||
```
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<script src="Vosklet.js" async defer></script>
|
||||
<script>
|
||||
async function start() {
|
||||
let ctx = new AudioContext({sampleRate : 16000})
|
||||
let micNode = ctx.createMediaStreamSource(await navigator.mediaDevices.getUserMedia({
|
||||
video: false,
|
||||
audio: {
|
||||
echoCancellation: true,
|
||||
noiseSuppression: true,
|
||||
channelCount: 1,
|
||||
sampleRate: 16000
|
||||
},
|
||||
}))
|
||||
let module = await loadVosklet()
|
||||
let model = await module.createModel("en-model.tgz","model","ID")
|
||||
let recognizer = await module.createRecognizer(model, 16000)
|
||||
recognizer.addEventListener("result", ev => {
|
||||
console.log("Result: ", ev.detail)
|
||||
})
|
||||
recognizer.addEventListener("partialResult", ev => {
|
||||
console.log("Partial result: ", ev.detail)
|
||||
})
|
||||
let transferer = await module.createTransferer(ctx)
|
||||
transferer.port.onmessage = ev => {
|
||||
recognizer.acceptWaveform(ev.data)
|
||||
}
|
||||
micNode.connect(transferer)
|
||||
}
|
||||
</script>
|
||||
<button onclick="start()">Start</button>
|
||||
</head>
|
||||
</html>
|
||||
```
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
console.log("Partial result: ", ev.detail)
|
||||
})
|
||||
let transferer = await module.createTransferer(ctx)
|
||||
console.log(transferer)
|
||||
transferer.port.onmessage = ev => {
|
||||
recognizer.acceptWaveform(ev.data)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user