e57647c9a3
New cmd/mavwaked — always-on voice listening client that: - Captures PCM from arecord subprocess (16kHz mono int16) - Runs energy-based VAD in 30ms windows (RMS threshold, adaptive floor) - Buffers utterances (300ms min speech, 800ms silence end, 10s max) - Sends complete utterances as PushToTalk with Surface=SurfaceVoice (L0) - Plays reply audio through aplay subprocess - No new CGo/onnxruntime deps — pure Go - 10 VAD tests with -race (speech detect, silence, max duration, reset, adaptive floor) - Makefile build-waked target + Dockerfile integration + alsa-utils runtime dep
35 lines
941 B
Plaintext
35 lines
941 B
Plaintext
# keep the build context small — the repo carries a full Go toolchain, the
|
|
# whisper.cpp source tree, and ~1GB of models that must NOT ship in the image.
|
|
.git
|
|
models
|
|
*.db
|
|
certs
|
|
|
|
# built binaries (rebuilt inside the image)
|
|
/mavend
|
|
/mavsttd
|
|
/mavttsd
|
|
/mavweb
|
|
/mavpoll
|
|
/mavcaldav
|
|
/mavenclient
|
|
/mavwaked
|
|
|
|
# heavy deps we don't need in context. We keep only the prebuilt runtime libs
|
|
# (deps/lib, deps/piper) and the headers the CGO build needs.
|
|
deps/go
|
|
# keep the onnxruntime 1.26 runtime lib (the router embedder loads it); the
|
|
# deps/lib symlinks point here. Other onnxruntime dirs (headers etc.) excluded.
|
|
deps/onnxruntime-linux-x64-*
|
|
!deps/onnxruntime-linux-x64-1.26.0
|
|
deps/onnxruntime-linux-x64-1.26.0/*
|
|
!deps/onnxruntime-linux-x64-1.26.0/lib
|
|
deps/whisper.cpp/**
|
|
!deps/whisper.cpp
|
|
!deps/whisper.cpp/ggml
|
|
!deps/whisper.cpp/ggml/include
|
|
!deps/whisper.cpp/ggml/include/**
|
|
|
|
# local secrets — never bake into an image layer
|
|
deploy/db_key.env
|