Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/OpenVoiceOS/ovos-ww-plugin-snowboy
snowboy plugin for mycroft
https://github.com/OpenVoiceOS/ovos-ww-plugin-snowboy
hotword-detection hotword-detection-engine hotword-detector keyword-spotting wakeword
Last synced: 3 months ago
JSON representation
snowboy plugin for mycroft
- Host: GitHub
- URL: https://github.com/OpenVoiceOS/ovos-ww-plugin-snowboy
- Owner: OpenVoiceOS
- License: apache-2.0
- Created: 2020-12-06T07:36:29.000Z (almost 4 years ago)
- Default Branch: dev
- Last Pushed: 2022-04-28T00:29:51.000Z (over 2 years ago)
- Last Synced: 2024-05-10T00:12:04.847Z (6 months ago)
- Topics: hotword-detection, hotword-detection-engine, hotword-detector, keyword-spotting, wakeword
- Language: Python
- Homepage:
- Size: 11.5 MB
- Stars: 3
- Watchers: 5
- Forks: 4
- Open Issues: 1
-
Metadata Files:
- Readme: readme.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- awesome-ovos-plugins - ovos-ww-plugin-snowboy
README
## Description
Mycroft/OpenVoiceOS wake word plugin for [Snowboy](https://github.com/seasalt-ai/snowboy)## Install
`pip install ovos-ww-plugin-snowboy`
## Configuration
Each wake word can included several snowboy models, if any of them fires a detection is considered
TIP: you can use this to train a model for each speaker in your house
Add the following to your hotwords section in mycroft.conf
```json
"hotwords": {
"my_word": {
"module": "ovos-ww-plugin-snowboy",
"models": [
{"sensitivity": 0.5, "model_path": "path/to/first.pmdl"},
{"sensitivity": 0.5, "model_path": "path/to/second.pmdl"},
{"sensitivity": 0.5, "model_path": "path/to/third.pmdl"}
]
}
}
```Then select what wakeword to use
```json
"listener": {
"wake_word": "my_word"
}
```### Bundled wakeword models
All these are bundled with this plugin, they are universal models ```.umdl``` trained by snowboy and should have a good accuracy
```json
"hotwords": {
"alexa": {
"module": "ovos-ww-plugin-snowboy",
"apply_frontend": true,
"models": [
{"sensitivity": 0.6, "model_path": "alexa.umdl"}
]
},
"hey_extreme": {
"module": "ovos-ww-plugin-snowboy",
"apply_frontend": true,
"models": [
{"sensitivity": 0.6, "model_path": "hey_extreme.umdl"}
]
},
"computer": {
"module": "ovos-ww-plugin-snowboy",
"apply_frontend": true,
"models": [
{"sensitivity": 0.6, "model_path": "computer.umdl"}
]
},
"jarvis": {
"module": "ovos-ww-plugin-snowboy",
"apply_frontend": true,
"models": [
{"sensitivity": [0.8, 0.8],"model_path": "jarvis.umdl"}
]
},
"snowboy": {
"module": "ovos-ww-plugin-snowboy",
"models": [
{"sensitivity": 0.5, "model_path": "snowboy.umdl"}
]
},
"smart_mirror": {
"module": "ovos-ww-plugin-snowboy",
"models": [
{"sensitivity": 0.5, "model_path": "smart_mirror.umdl"}
]
},
"subex": {
"module": "ovos-ww-plugin-snowboy",
"apply_frontend": true,
"models": [
{"sensitivity": 0.5, "model_path": "subex.umdl"}
]
},
"neoya": {
"module": "ovos-ww-plugin-snowboy",
"apply_frontend": true,
"models": [
{"sensitivity": [0.7, 0.7], "model_path": "neoya.umdl"}
]
},
"view_glass": {
"module": "ovos-ww-plugin-snowboy",
"apply_frontend": true,
"models": [
{"sensitivity": 0.7, "model_path": "view_glass.umdl"}
]
}
}
```# Training your own wake word
You can use the following public instances to train and download your model:
- https://snowboy.2022.us hosted by [@NeonGeckoCom](https://github.com/NeonGeckoCom)
- https://snowboy.jarbasai.online hosted by [@JarbasAi](https://github.com/JarbasAl)Alternatively you can spin up a docker container locally, this only works in x86
`docker run -it -p 8000:8000 rhasspy/snowboy-seasalt`
then navigate to http://localhost:8000
[training source code](https://github.com/seasalt-ai/snowboy)