Tool used to parse XML collections file from a DJing software to another one (currently working for Traktor v3.0.0 and RecordBox v6.6.3 on Windows 11 platform).
I use it for my personal usage because I create my playlists and I mix at home on Traktor, but when I go outside I need to export my USB key in Recordbox format, so I need to convert all my Traktor playlists to Recordbox.
- : Working on Windows 10 & 11 Traktor v3.0.0 and RecordBox v6.6.3
- : Read Traktor and Recordbox collection
- : Transfer Traktor playlists --> Recorbox playlists
- : Transfer Recorbox playlists --> Traktor playlists
- : Transfer and update songs attributes (CUE, Comment, Mark, ...)
- : Add GUI interface (PyQt6)
-
First, you need to have all your song collection updated from both softwares. That means you should have scanned the same musics folders on both software
-
Configure Recordbox to receive collection from outside xml
-
Export recordbox collection to .xml and save it to the path you chose in the previous step (File - Export collection to .xml)
-
You don't need to export the Traktor collection. The default path is :
C:\Users\User_Name\Documents\Native Instruments\Traktor 3.0.0\collection.nml
-
Close programs
-
Make sure Traktor and Recordbox are closed
-
Make sure to have all songs scanned (not necessary analysed) in both collection file. For example, if you add news songs to Traktor, you need to export Recorbox collection with the news songs added. If you want to add a song from Traktor to Recordbox that is not in the Recordbox collection, it will raise an Exception
-
Make sure the playlists you want to import have differents names than the ones in the current collection. Otherwise Traktor or Recordbox will not be able to read your file
-
Informs the collection access paths in
main.py
thanks to the constantsRECORDBOX_COLLECTION_PATH
andTRAKTOR_COLLECTION_PATH
# Get Traktor collection
traktor_parser = TraktorParser(TRAKTOR_COLLECTION_PATH, verbose=True)
# Remove _LOOPS and _RECORDINGS from traktor playlist
traktor_playlists = traktor_parser.playlists[:-2]
# Get Recordbox collection
record_parser = RecordBoxParser(RECORDBOX_COLLECTION_PATH, verbose=True)
# Save traktor playlist to RecordBox collection
record_parser.add_playlists_to_tree(traktor_playlists)
# Save RecordBox Collection
record_parser.save_file()
Launch Recordbox and click on the Refresh button next to recordbox xml on the left side of the browser. You can now import the playlists folder:
# Get Recordbox collection
record_parser = RecordBoxParser(RECORDBOX_COLLECTION_PATH, verbose=True)
# Get Traktor collection
traktor_parser = TraktorParser(TRAKTOR_COLLECTION_PATH, verbose=True)
# Save RecordBox playlists to Traktor Collection
traktor_parser.add_playlists_to_tree(record_parser.playlists)
# Save Traktor Collection
traktor_parser.save_file()
Open Traktor, the new playlists appear in the collection. You made a mistake or the collection.nml
is corrupted ? A backup file named collection.nml.bak
was created on the same folder as the collection.nml
file, you can use it as a second chance !
Any questions, suggestions, bug ? Feel free to contact me, it will be a pleasure to exchange with you.