oof
parent
fcfc2be0b8
commit
661a8c85f0
|
|
@ -0,0 +1,132 @@
|
||||||
|
# /bin/bash
|
||||||
|
|
||||||
|
main() {
|
||||||
|
set -eo pipefail
|
||||||
|
tty && read -p "git refresh? [yN] " a && test "$a" == "y" && (
|
||||||
|
git config --global credential.helper store
|
||||||
|
git submodule init
|
||||||
|
git pull --recurse-submodules --jobs=10
|
||||||
|
git submodule foreach git pull origin master
|
||||||
|
)
|
||||||
|
_tts
|
||||||
|
_stt
|
||||||
|
_mayhem_party
|
||||||
|
_discord
|
||||||
|
_dolphin
|
||||||
|
while read; do
|
||||||
|
pkill -SIGUSR1 -f mayhem-party
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
cleanup() {
|
||||||
|
pkill -f larynx
|
||||||
|
pkill -f hotwords.py
|
||||||
|
pkill -f rust-whisper
|
||||||
|
pkill -f mayhem-party
|
||||||
|
pkill -f server-vm
|
||||||
|
}
|
||||||
|
trap cleanup EXIT
|
||||||
|
|
||||||
|
log() {
|
||||||
|
echo "$(date) > $*" >&2
|
||||||
|
}
|
||||||
|
|
||||||
|
_discord() {
|
||||||
|
read -p "pls start discord"
|
||||||
|
}
|
||||||
|
|
||||||
|
_dolphin() {
|
||||||
|
read -p "pls start dolphin"
|
||||||
|
}
|
||||||
|
|
||||||
|
_mayhem_party() {
|
||||||
|
log mayhem-party
|
||||||
|
pushd ./git.d/mayhem-party.d
|
||||||
|
go build
|
||||||
|
popd
|
||||||
|
log launching mayhem-party
|
||||||
|
(
|
||||||
|
source ./config.d/mayhem-party.d/env.env
|
||||||
|
while true; do
|
||||||
|
./git.d/mayhem-party.d/mayhem-party
|
||||||
|
sleep 5
|
||||||
|
done
|
||||||
|
) &> /tmp/mayhem-party.mayhem-party.log &
|
||||||
|
}
|
||||||
|
|
||||||
|
_tts() {
|
||||||
|
log tts
|
||||||
|
(
|
||||||
|
cd ./git.d/tts.d/larynx.d/
|
||||||
|
bash ./run.sh
|
||||||
|
) &> /tmp/mayhem-party.mayhem-party.log &
|
||||||
|
}
|
||||||
|
|
||||||
|
_stt() {
|
||||||
|
log stt
|
||||||
|
pushd ./git.d/stt.d/rust-whisper.d/
|
||||||
|
pip3 install ./requirements.txt
|
||||||
|
popd
|
||||||
|
return 1
|
||||||
|
if ! python3 -m pip show PyAudio; then
|
||||||
|
sudo apt -y install \
|
||||||
|
portaudio19-dev \
|
||||||
|
python3-pyaudio \
|
||||||
|
python3-pip \
|
||||||
|
git \
|
||||||
|
pulseaudio
|
||||||
|
sudo python3 -m pip install --no-cache-dir \
|
||||||
|
git+https://github.com/openai/whisper.git \
|
||||||
|
soundfile \
|
||||||
|
PyAudio \
|
||||||
|
SpeechRecognition \
|
||||||
|
PyYAML
|
||||||
|
fi
|
||||||
|
log launching stt
|
||||||
|
(
|
||||||
|
export HOME="$PWD/mnt.d/stt.d"
|
||||||
|
mkdir -p "$HOME"
|
||||||
|
cd "$HOME"
|
||||||
|
local device=$(
|
||||||
|
pactl list \
|
||||||
|
| grep Monitor.Source \
|
||||||
|
| grep -v hdmi \
|
||||||
|
| awk "{print \$NF}" \
|
||||||
|
| head -n 1
|
||||||
|
)
|
||||||
|
(
|
||||||
|
echo "pcm.pulse_monitor {"
|
||||||
|
echo " type pulse"
|
||||||
|
echo " device $device"
|
||||||
|
echo "}"
|
||||||
|
echo "ctl.pulse_monitor {"
|
||||||
|
echo " type pulse"
|
||||||
|
echo " device $device"
|
||||||
|
echo "}"
|
||||||
|
) | sudo tee /etc/asound.conf
|
||||||
|
cd ../../git.d/stt.d/whisper-2023
|
||||||
|
export HOTWORDS=../../config.d/mayhem-party.d/v01.yaml@.users[].state.gm.alias
|
||||||
|
export MIC_TIMEOUT=2
|
||||||
|
export URL=http://localhost:17071/gm/rpc/broadcastSomeoneSaidAlias?message={{hotword}}
|
||||||
|
export HEADERS=say="Eye herd {{hotword}}"
|
||||||
|
export MIC_NAME=pulse_monitor
|
||||||
|
export MODEL=tiny.en
|
||||||
|
export DEBUG=true
|
||||||
|
while true; do
|
||||||
|
python3 ./hotwords.py
|
||||||
|
sleep 5
|
||||||
|
done
|
||||||
|
) &> /tmp/mayhem-party.stt.log &
|
||||||
|
}
|
||||||
|
|
||||||
|
_snap() {
|
||||||
|
if ! which snap; then
|
||||||
|
sudo apt -y install snap
|
||||||
|
fi
|
||||||
|
snap "$@"
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ "$0" == "$BASH_SOURCE" ]; then
|
||||||
|
main "$@"
|
||||||
|
fi
|
||||||
|
|
||||||
Loading…
Reference in New Issue