Add whisper.cpp engine with Vulkan GPU support (AMD/Intel/NVIDIA)

- meetrec.py: engine layer with a common transcribe() contract;
  WhisperCppEngine shells out to whisper-cli, GGML + Silero VAD models
  auto-download to ~/.cache/meetrec; faster-whisper import now lazy;
  new --engine CLI option
- meetrec_gui.py: Engine dropdown; Device/Compute greyed out for
  whisper-cpp; model reload keyed on (engine, model, device, compute)
- install.sh: --whisper-cpp builds whisper.cpp with -DWHISPER_VULKAN=ON,
  installs whisper-cli into the prefix and wires WHISPER_CPP_BIN via a
  generated whisper-cpp.env; build failures degrade to a warning
- launchers source whisper-cpp.env; README documents engines
- Recorder.stop() is now idempotent (GUI close path called it twice)
This commit is contained in:
2026-09-07 10:36:55 +02:00
parent 18ce1c134c
commit 66408e291d
6 changed files with 353 additions and 27 deletions
+3
View File
@@ -7,4 +7,7 @@ if [ ! -x "$PY" ]; then
echo "MeetRec is not installed. Run ./install.sh first." >&2
exit 1
fi
# Engine hint generated by install.sh --whisper-cpp (points WHISPER_CPP_BIN at
# the locally built whisper-cli).
if [ -f "$APP_DIR/whisper-cpp.env" ]; then . "$APP_DIR/whisper-cpp.env"; fi
exec "$PY" "$APP_DIR/meetrec_gui.py" "$@"
+3
View File
@@ -7,4 +7,7 @@ if [ ! -x "$PY" ]; then
echo "MeetRec is not installed. Run ./install.sh first." >&2
exit 1
fi
# Engine hint generated by install.sh --whisper-cpp (points WHISPER_CPP_BIN at
# the locally built whisper-cli).
if [ -f "$APP_DIR/whisper-cpp.env" ]; then . "$APP_DIR/whisper-cpp.env"; fi
exec "$PY" "$APP_DIR/meetrec.py" "$@"