shawn f945196199
Lint & Validate / lint (push) Has been cancelled
P6-R2: Session manager — save/load mixer states with setlists and snapshots
Core session management:
- MixerSession: full mixer state as versioned JSON (channels, buses, routing, plugins, MIDI, transport, automation)
- SessionManager: save/load/list/delete/rename/duplicate/import/export sessions to ~/.config/rpi-mixer/sessions/
- Setlist: ordered collection of sessions with transition types (cut, crossfade, wait)
- SnapshotEngine: instant scene capture/recall with persistence, categories, next/prev

API endpoints (all under /api/v1/):
- GET/POST/DELETE /sessions — list, save, load, delete, info
- POST /sessions/{name}/rename, /duplicate, /export, /import
- GET/POST/DELETE /setlists — list, save, load, delete
- GET/POST/DELETE /snapshots — list, capture, recall, delete, next, prev
- GET/POST /sessions/autosave — status, enable, disable

Web UI:
- Sessions tab: full session browser with load/delete/duplicate/export
- Setlists subtab: create/edit/activate setlist with entry management
- Snapshots subtab: capture/recall with category badges
- Auto-save status indicator
- Import/export all sessions as zip

Kivy touchscreen UI:
- New SES tab with sessions/setlists/snapshots sub-views
- Touch-optimized cards with save/load/delete actions

Tests: 51 new tests, 735 project total — all passing
2026-05-19 22:19:39 -04:00
2026-05-19 22:13:51 -04:00

Raspberry Pi Real-Time Audio Mixer

RPi4B-based multi-channel real-time audio mixer with custom PREEMPT_RT kernel.

Architecture

  • Platform: Raspberry Pi 4 Model B (8GB RAM)
  • OS: Raspberry Pi OS Lite (64-bit, Bookworm) + custom PREEMPT_RT kernel
  • Audio: USB audio interface with multi-channel I/O
  • Goal: Low-latency (<10ms round-trip) multi-channel audio mixing

Project Structure

├── docs/           Research, architecture decisions, manuals
│   ├── research/   Technical research reports
│   ├── decisions/  Architecture Decision Records (ADRs)
│   └── manuals/    Hardware/software manuals and references
├── src/            Source code (audio engine, DSP, UI)
├── build/          Build scripts and cross-compilation tooling
├── recipes/        Buildroot/Yocto recipes (if applicable)
├── scripts/        Utility and deployment scripts
└── wiki/           Local wiki pages

Status

Phase 1-4: Core audio stack + MIDI controller support (in progress)

  • P1-R1: System Research — USB audio, PREEMPT_RT kernel analysis
  • P1-R2: Base OS Selection — RPiOS Lite 64-bit + custom PREEMPT_RT
  • P2-R1: ALSA + JACK2 Low-Latency Config
  • P4-R1: MIDI Controller Support — Binding + Learn Mode
  • P3: Audio Engine — DSP pipeline, mixing engine
  • P4: Hardware Integration — GPIO control surface

Getting Started

Documentation coming in Phase 2+

License

TBD

S
Description
RPi4B Real-Time Multi-Channel Audio Mixer
Readme 651 KiB
Languages
Python 86.9%
Shell 5.7%
JavaScript 4.4%
CSS 2.1%
HTML 0.9%