RustDJ 🎧
A high-performance, dual-deck digital DJ engine written in Rust.
Features
Dual-Deck Playback
- Independent Deck A and Deck B playback pipelines
- Load and manage multiple audio tracks
- Play, pause, stop, and seek controls
- Concurrent playback across both decks
Audio Engine
- MP3 decoding and playback using Rodio and Symphonia
- Real-time audio streaming pipeline
- Playback position tracking
- Volume and speed controls
- Transport state management
Waveform Engine
- PCM sample extraction from compressed audio files
- Peak generation and waveform compression
- Waveform data structures optimized for rendering
- Playback progress tracking and visualization support
Track Library
- Lightweight track metadata manager
- Track duration extraction
- Artist and title information
- File-path-based library management
Mixer Architecture
- Independent deck-level volume controls
- Master mixing abstraction
- Crossfader-ready architecture
- Extensible design for EQ and effects processing