A Java library for fetching and parsing rekordbox media exports and track analysis files.

The top level package org.deepsymmetry.cratedigger contains all the classes that are intended for direct access by consumers of this library. The other packages contain generated Java code for parsing database structures or sending and receiving RPC messages to implement the Mount and NFSv2 protocols used to pull databases and analysis files from players.

The class FileFetcher is used to actually retrieve the database and analysis files as needed, and the class Database is used to parse them and provide access to the information contained within.

For more details, please see the project documentation on GitHub.

Background

For more information about the file structures parsed by this library, please see the Structure Analysis article.

This project spun out of research performed with dysentery, and python-prodj-link.

A good example of an application built using this library is Beat Link Trigger.

Packages 
Package Description
org.deepsymmetry.cratedigger
The API for working with rekordbox database exports and track analysis files.
org.deepsymmetry.cratedigger.pdb
Generated classes for parsing rekordbox database export and track analysis files, along with support classes.
org.deepsymmetry.cratedigger.rpc
Generated classes for implementing the Mount (version 1) and NFS (version 2) protocols.