Trying to Change Cue Colors in Engine DJ for Rekordbox Imports - Need Help with the .db File!

Hey everyone,

I’m trying to change default cue point colors in Engine DJ for tracks I’ve imported from Rekordbox. I am going to be purely technical here.

So, here is what I want to achieve:

My main goal is to modify the cue point colors for tracks that I bring over from Rekordbox. Hot cues are fine since they carry their color data in the Rekordbox XML, but regular cues just go to default in Engine DJ (using multiple colors), which is what I’m trying to change and set to a unique color.

I found out that the m.db file located in the folder ‘Engine Library/Database2/’ folder is where Engine DJ keeps the Rekordbox library stuff.

To figure out how cue points get stored, I added a few in Rekordbox, re-imported everything into Engine DJ, and compared the .db files before and after. Noticed that the UUID in the Information table changed, but that’s probably unrelated. The big change was in this binary data at the end of the Track table entries. I’m thinking this has got to have the cue point info.

I am not sure how to decode the binary data in the Track table which might contain cues points information. In Rekordbox XML, everything’s text and easy to read, but this .db file is not.

So, has anyone messed around with the Engine DJ database for this kind of thing? Got any tips on understanding those binary data code, or any clues about the database layout?

thanks a ton in advance!

1 Like

Sounds like a task for lexicon dj

1 Like

Here u can get some info about your question.

Some time ago I did something like what you’re trying to do for my own Rekordbox to Engine converter in Python and this wiki was a good starting point.

1 Like

Moin @dn_dnne,

phps the following link may assist you a little bit.

https://community.enginedj.com/t/enginedj-export-fields/45518

Good luck and brgds BeatMaster

That’s exactly what I was thinking… if anyone can… Lexicon can.

Thanks everyone for the help, i finally achieved my goal of changing default cues points colours in Engine DJ using a custom script that looks into the Engine library database.

A huge thanks to @Obocaman for the GitHub link - it was incredibly useful. It helped me pinpoint exactly where to look in the database. Unfortunately, the database structure has had some updates since that release in GitHub. For instance, p.db doesn’t exist anymore and has merged with m.db. So, I had to further explore the m.db file. Another challenge was that the hex codes for the cue points in the GitHub repository were outdated. This meant I had to do some reverse engineering to find the new hex values for all the 8 colors. After some testing, I managed to identify the correct hex codes for these colors. I’m sharing them here for anyone who might need them in the future:

  • Red Color: ce3239
  • Yellow Color: f4d338
  • Orange Color: ef8130
  • Pink: aa55c4
  • Pistachio: 86c64b
  • Green: 20c670
  • Cyan: 00a8a9
  • Blue: 1571e2

(Each color is encoded using three bytes, resulting in a six-character hexadecimal representation. This means every color value is precisely defined by a combination of six hexadecimal digits, ensuring accurate and consistent color identification in the data.)

These are the hex codes. With these in hand, I uncompressed the column containing the binary data, searched for the colors I wanted to change, and replaced them with the new values. I’ve just tested it, and it works perfectly.

A big thank you to @BeatMaster for sharing that link. It allowed me to install SQLite and view the database in a more readable format than before. This allowed me to see all the columns clearly and progress more seamlessly in my analysis.

So, it’s done! Thanks to all for your suggestions and help and Good luck.

2 Likes

Glad to help you :smiling_face:

2 Likes

I’m delighted to assist you :smiley: