Deep-Symmetry / crate-digger

Java library for fetching and parsing rekordbox exports and track analysis files.
Other
139 stars 18 forks source link

EDB File format #15

Closed Christilut closed 4 years ago

Christilut commented 4 years ago

Is there anything known about the EDB file format? E.g. the datafile.edb that Rekordbox 5 uses. It seems similar to the PDB files but not quite the same. I haven't been able to find anything about the format anywhere.

brunchboy commented 4 years ago

Hello! Everything that we know about the formats has been documented, as a major goal of these projects is to share the knowledge we can discover. If you learn anything about these files, please contribute your discoveries by extending the analysis documents via a pull request.

Christilut commented 4 years ago

I see a ton of information about the PDB files, which is really great! But I'm specifically looking for info about the EDB files (the file at ~\AppData\Roaming\Pioneer\rekordbox\datafile.edb) of which I don't see anything. So I'm just wondering if there is anything known about it at all? Database structure or format or anything really.

brunchboy commented 4 years ago

As I tried to explain, if anything were known about it, I’d have written it up. When we started, nobody knew anything about any of these files or network packets. It’s all been a matter of studying them to find patterns and how to access what we needed over years of research. So if you would like to dig in to the EDB files and figure out the format, that would be a wonderful contribution! My personal guess is that it is probably in a similar format to PDB files, but with larger and newer information used only by more recent hardware, separated into its own file so that it does not put pressure on older hardware with limited resources that can’t use it anyway.

Since it is not needed to implement any of the features of my own software, I’m not likely to try to find the time to investigate it myself (and these database files have proven painfully opaque, there are still important elements of PDB files we don’t understand). If there’s something in there that you need, hopefully studying the files will reveal how to get it. I’d suggest starting with a binary viewer, and learning how to work with Kaitai Struct specifications and their IDE.

Christilut commented 4 years ago

Thanks! I think the EDB files aren't meant for hardware though and only for the Rekordbox 5 software (replaced by SQLite in Rekordbox 6). And that the PDB files are created by Rekordbox specifically to be read on their hardware. That's why I thought it might be a known format.

If I find out anything about them, I'll post it here.

brunchboy commented 4 years ago

Oh, are you talking about files on the computer filesystem? That is not what this project deals with, it is for working with files that are copied to removable media by rekordbox for use by CDJs. I know even less about what goes on in the files read by rekordbox itself, there may be other projects that try to work with them.

Christilut commented 4 years ago

Okay. I thought maybe something was known about it but I haven't been able to find anything about it yet.

brunchboy commented 4 years ago

If you do find such a project with useful information, or end up creating your own, please let me know and I will add a link to it in this project’s Read Me, so that anyone who follows your path here in the future can be redirected in a more helpful direction. Thanks, and good luck!