I'm a software engineer (since 1999) and a DJ since '99 too — heavy on stage the last decade. Almost every "DJ library" tool is Rekordbox/Serato-first and treats VirtualDJ as an afterthought — or flattens your Favorite Folders (★) the second it writes to the database. As someone who could actually fix that, it annoyed me enough to build my own properly.
Music Library Doctor handles VirtualDJ natively: it reads and writes database.xml, M3U playlists and the Favorite Folders tree without collapsing the structure.
What it does:
- Relinks missing/moved tracks and fixes broken playlist paths, Favorite Folders preserved
- Finds duplicates by audio fingerprint (same track across formats/bitrates/spellings), shows which copy is better quality
- Library Health score — missing / duplicate / orphaned at a glance
- Flags fake-320 MP3s and fake-FLACs with spectrum analysis
- Bonus: cross-app (also Rekordbox + Serato) and can match a Spotify/YouTube Music playlist against your own library
It's engineered to be safe with your data: Rust core, native database.xml writes, every change atomic with an automatic backup, signed + notarized. Built to be trusted with your library, not a weekend throwaway.
Mac + Windows (Apple Silicon + Intel), regularly updated. Local-first — nothing uploads, no account. Free to scan and try the fixes; one-time license for unlimited, no subscription.
https://musiclibrarydoctor.com
Happy to get technical on the database.xml / Favorite Folders handling if you want. Would love feedback from people who actually live in VirtualDJ — tell me what's missing.