A Rust application that monitors real-time data from Rekordbox DJ software, including track information, fader positions, and beat timing.
- Real-time monitoring of:
- Currently playing tracks (both decks)
- Track metadata (title, artist, ID)
- Beat positions and cue points
- Channel faders and crossfader positions
- Integration with Rekordbox collection XML for enhanced track information
- Visual representation of mixer state
The application uses memory reading techniques to access Rekordbox's runtime data:
-
Process Attachment: Connects to the running Rekordbox process (
rekordbox.exe
) and locates the necessary memory regions. -
Data Reading: Uses memory pointer chains to read various pieces of information:
- Track metadata (titles, artists, IDs)
- Beat positions and timing information
- Mixer state (fader positions)
-
XML Integration: Parses Rekordbox's collection XML file to provide additional track information and cue point data, particularly for:
- Track identification
- Cue points with "EW" markers
- Beat timing verification
- Ensure Rekordbox is running
- Launch the application with the path to your Rekordbox collection XML:
cargo run -- --collection-xml-path /path/to/collection.xml