build script
This commit is contained in:
71
snowboy-2022/build.sh
Normal file
71
snowboy-2022/build.sh
Normal file
@@ -0,0 +1,71 @@
|
||||
#! /bin/bash
|
||||
|
||||
echo https://github.com/seasalt-ai/snowboy
|
||||
cd "$(dirname "$(realpath "$BASH_SOURCE")")"
|
||||
|
||||
set -e
|
||||
set -o pipefail
|
||||
|
||||
if [ ! -d ./snowboy ]; then
|
||||
git clone https://github.com/seasalt-ai/snowboy snowboy.git.d
|
||||
fi
|
||||
|
||||
timeout 2 docker version &> /dev/null
|
||||
if ! docker images | grep snowboy-pmdl.*latest &> /dev/null; then
|
||||
pushd snowboy.git.d
|
||||
docker build -t snowboy-pmdl:latest .
|
||||
popd
|
||||
fi
|
||||
|
||||
if [ -n "$TRAIN" ] || [ ! -d ./model ] || [ ! -f ./model/hotword.pmdl ]; then
|
||||
mkdir -p model
|
||||
pushd model
|
||||
echo "record 3 instances of your hotword" >&2
|
||||
for i in 1 2 3; do
|
||||
read -p "ready? ctrl-c when done"
|
||||
rec \
|
||||
-r 16000 \
|
||||
-c 1 \
|
||||
-b 16 \
|
||||
-e signed-integer \
|
||||
-t wav \
|
||||
record$i.wav
|
||||
done
|
||||
popd
|
||||
|
||||
docker run \
|
||||
--rm \
|
||||
-it \
|
||||
-v "$(realpath ./model)":/snowboy-master/examples/Python/model \
|
||||
snowboy-pmdl:latest
|
||||
fi
|
||||
|
||||
if false; then
|
||||
if ! which swig; then
|
||||
brew install swig
|
||||
fi
|
||||
pip3 install pyaudio
|
||||
pushd snowboy.git.d/swig/Python3/
|
||||
make
|
||||
popd
|
||||
|
||||
cd snowboy.git.d/examples/Python3/
|
||||
echo '
|
||||
import snowboydecoder
|
||||
import datetime
|
||||
detected_callback = lambda *args: print(datetime.datetime.now(), "GOTCHA")
|
||||
d = snowboydecoder.HotwordDetector("../../../model/hotword.pmdl", sensitivity=0.5, audio_gain=1)
|
||||
d.start(detected_callback)
|
||||
' > breel.py
|
||||
echo GO
|
||||
cleanup() {
|
||||
echo OK IM DONE NOW
|
||||
}
|
||||
trap cleanup EXIT
|
||||
python3 ./breel.py
|
||||
else
|
||||
resources="$(realpath snowboy.git.d/resources/common.res)"
|
||||
hotword="$(realpath ./model/hotword.pmdl)"
|
||||
go build -o snowboy
|
||||
./snowboy -model "$hotword" -resources "$resources" -sensitivity 0.4
|
||||
fi
|
||||
Reference in New Issue
Block a user