12 lines
944 B
Markdown
12 lines
944 B
Markdown
# Lane A — Media pipeline (branch `lane/a-media`)
|
|
|
|
**Scope: spec milestone M1** (ingest + GCC-PHAT audio sync + pairwise graph solve + drift estimation).
|
|
|
|
- Owned files: `backend/festival4d/ingest.py`, `backend/festival4d/audio_sync.py`, `backend/tests/test_ingest.py`, `backend/tests/test_audio_sync.py`. Nothing else.
|
|
- Fill the stub bodies foundation left; do not change their signatures (CLI and API already call them).
|
|
- Verify against the synthetic fixture: `python -m festival4d ingest && python -m festival4d sync` must recover the ground-truth offsets recorded by `synthetic.py` (spec M1 tolerances: ±10 ms offsets, ±3 ppm drift).
|
|
- Write results through `db.py` helpers only; also export `data/work/sync.json` as spec'd.
|
|
- Respect spec pitfall #5: disconnected sync-graph components → `offset_ms=NULL`, never a guess.
|
|
|
|
**Done when:** spec M1 acceptance passes, `pytest` green, merged to `main` with synthetic end-to-end intact.
|