Skip to content

agronaught/sound-logger

Repository files navigation

quarry-noise-monitor

Personal noise-evidence logger for quarry rock-breaker noise: A-weighted levels, YAMNet sound classification, rhythm-based breaker detection, event clips, and NSW-NPfI-aligned reporting. See docs/PLAN.md for the design, docs/tuning-notes.md for detector-tuning state, and docs/epa-reference.md for the verified EPA methodology.

Quick start

uv sync --extra ml
uv run python scripts/fetch_model.py   # YAMNet model + class map (~4 MB)
uv run quarryd                         # capture daemon (Ctrl-C to stop)
uv run quarry-web                      # dashboard at http://localhost:8321
uv run quarry-report --date YYYY-MM-DD # daily PNG/CSV report
uv run pytest                          # full test suite

Copy config.example.yaml to config.yaml and pass --config config.yaml to override defaults (mic device, calibration, thresholds).

Moving to another machine

The git repo alone is NOT the whole project state. Also copy:

  • data/ — the SQLite DB (all noise history and the human labels) and the event audio clips. The labeled-clip regression suite (tests/test_labeled_samples.py) reads these; without them it skips and all accumulated ground truth is lost.
  • samples/ — any reference recordings (if present).
  • models/ — optional; scripts/fetch_model.py re-downloads it.
  • config.yaml — if one was created locally.

Then on the new machine: install uv, run uv sync --extra ml, and uv run pytest — the labeled-samples tests passing confirms the data came across intact. Set repo-local git identity if needed (this is a personal project): git config user.email <personal email> and git config commit.gpgsign false.

Pi 5 deployment: see docs/pi-setup.md and deploy/.

About

sound logging for quarry survey project

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors