livecaption / scripts /livecaption.sh
Veronyka's picture
LiveCaption: legendas ao vivo e tradução locais para Mac (código-fonte, sem pesos)
f1e4744 verified
Raw History Blame Contribute Delete
1.36 kB
#!/bin/zsh
# Controle do LiveCaption: start | stop | pause | status
# (pause alterna pausar/retomar; funciona de qualquer atalho: Atalhos do macOS, Keyboard Maestro, terminal...)
cd "$(dirname "$0")/.."
MODEL=${LC_MT_MODEL:-hymt2-1.8b}
case "$1" in
start)
pgrep -x LiveCaption >/dev/null && { echo "já está rodando"; exit 0; }
curl -s -m 2 localhost:11434/api/tags >/dev/null || { echo "iniciando Ollama…"; (ollama serve >/dev/null 2>&1 &); sleep 3; }
APP=LiveCaption.app; [[ -d /Applications/LiveCaption.app ]] && APP=/Applications/LiveCaption.app
open "$APP" && echo "iniciado ($APP)" ;;
stop)
pkill -x LiveCaption && echo "app encerrado" || echo "app não estava rodando"
# libera a RAM do modelo de tradução (o servidor Ollama continua ligado, pode ter outros usos)
curl -s -m 5 localhost:11434/api/generate -d "{\"model\":\"$MODEL\",\"keep_alive\":0}" >/dev/null && echo "modelo $MODEL descarregado da memória" ;;
pause)
pkill -USR1 -x LiveCaption && echo "pausa alternada" || echo "app não está rodando" ;;
status)
pgrep -x LiveCaption >/dev/null && echo "LiveCaption: rodando (pid $(pgrep -x LiveCaption))" || echo "LiveCaption: parado"
curl -s -m 2 localhost:11434/api/tags >/dev/null && echo "Ollama: ativo" || echo "Ollama: parado" ;;
*) echo "uso: $0 start|stop|pause|status"; exit 1 ;;
esac