86a9d344e6
Add the foundation for audio processing filters, mirroring the existing picture filter/postprocessing template system: - AudioFilter base class, AudioFilterRegistry, AudioFilterOptionDef - AudioProcessingTemplate dataclass + SQLite-backed store - audio_filter_template meta-filter with recursive resolution - Full REST API: CRUD templates + filter registry discovery - Dependency injection wired in dependencies.py and main.py
2.7 KiB
2.7 KiB
Feature: Processed Audio Sources
Branch: feature/processed-audio-sources
Base branch: master
Created: 2026-03-31
Status: 🟡 In Progress
Strategy: Big Bang
Mode: Automated
Execution: Orchestrator
Summary
Replace hardcoded MonoAudioSource and BandExtractAudioSource types with a composable
ProcessedAudioSource + AudioProcessingTemplate + AudioFilter system — mirroring the
existing processed picture source pattern. Rename MultichannelAudioSource to
CaptureAudioSource. Adds 11 audio filters: channel extract, band extract, peak hold,
gain, noise gate, envelope follower, spectral smoothing, compressor, inverter, beat gate,
and delay.
Clean-slate approach: no data migration for old source types.
Build & Test Commands
- Build (Python):
cd server && ruff check src/ tests/ --fix - Build (TypeScript):
cd server && npx tsc --noEmit && npm run build - Test:
cd server && py -3.13 -m pytest tests/ --no-cov -q
Phases
- Phase 1: Audio Filter Framework [domain: backend] → subplan
- Phase 2: Audio Filters [domain: backend] → subplan
- Phase 3: Processed Audio Source Model [domain: backend] → subplan
- Phase 4: Runtime Integration [domain: backend] → subplan
- Phase 5: Frontend — Audio Processing Templates [domain: frontend] → subplan
- Phase 6: Frontend — Source Types [domain: frontend] → subplan
- Phase 7: Testing & Polish [domain: backend] → subplan
- Phase 8: Frontend Design Consistency Review [domain: frontend] → subplan
Phase Progress Log
| Phase | Domain | Status | Review | Build | Committed |
|---|---|---|---|---|---|
| Phase 1: Audio Filter Framework | backend | 🔨 In Progress | ⬜ | ⬜ | ⬜ |
| Phase 2: Audio Filters | backend | ⬜ Not Started | ⬜ | ⬜ | ⬜ |
| Phase 3: Processed Audio Source Model | backend | ⬜ Not Started | ⬜ | ⬜ | ⬜ |
| Phase 4: Runtime Integration | backend | ⬜ Not Started | ⬜ | ⬜ | ⬜ |
| Phase 5: Frontend — Audio Processing Templates | frontend | ⬜ Not Started | ⬜ | ⬜ | ⬜ |
| Phase 6: Frontend — Source Types | frontend | ⬜ Not Started | ⬜ | ⬜ | ⬜ |
| Phase 7: Testing & Polish | backend | ⬜ Not Started | ⬜ | ⬜ | ⬜ |
| Phase 8: Frontend Design Review | frontend | ⬜ Not Started | ⬜ | ⬜ | ⬜ |
Final Review
- Comprehensive code review
- Full build passes
- Full test suite passes
- Merged to
master