winget install --id=DJSweder.MetaRekordFixer -e
MetaRekordFixer (MRF) is a desktop application written in Go with a graphical user interface built using the Fyne framework. MRF was developed to address certain limitations of the Rekordbox software by AlphaTheta and to enable modifications to music library data that are not typically possible. The application works with both locally stored music files on the user's computer and the local Rekordbox database.
MetaRekordFixer (MRF) is a desktop application designed to address specific limitations of Rekordbox by AlphaTheta, enabling users to modify music library data in ways typically not possible within the software. The tool provides solutions for metadata management, file conversion, and database editing, catering to DJs and music professionals who require precise control over their collections.
Key Features:
Audience & Benefit: Ideal for DJs and music professionals who rely on precise metadata management and need compatibility with older hardware. MetaRekordFixer empowers users to optimize their collections without losing critical data, ensuring seamless integration with Rekordbox workflows. The application is available as a winget package for easy installation.
By focusing on practical solutions to real-world challenges, MetaRekordFixer enhances productivity and creativity for music professionals seeking greater control over their digital libraries.
The author of the application is an active DJ who places great emphasis on correct metadata in his music collection, as it makes it easier to select songs during a performance. To fully utilize the features of Pioneer products, which are now standard in the DJ environment, the use of rekordboxTM software is almost a must. However, rekordboxTM has its limitations, especially when it comes to metadata. The author is not a programmer, so he initially created single-purpose Python scripts using freely available resources that were run from the command line. As the number of them grew, working with them became inconvenient. These scripts then served as the basis for a more comprehensive solution, the main goal of which is to function as a useful tool for METAdata in REKORDrdboxTM as a valuable FIXER and in a likeable graphical environment.
The main shortcomings the author needed to solve were:
The author solved this by ensuring that every FLAC in his collection has an MP3 version stored separately from the main collection. The storage contains two main folders: Music
(the main collection with FLAC and MP3) and Music MP3
(a collection of MP3s created from the FLACs located in Music
). This folder structure is mirrored. In rekordboxTM, there are two root folders: Music
and Music MP3
. Music
contains playlists that match the folders in Music
, and Music
contains playlists based on the folders and contents in the storage, supplemented with MP3s from the main collection. Both folders can then be exported from rekordboxTM to portable storage (USB Flash, HDD, SSD, SD card), and if the DJ is using older CDJs, he select tracks from Music MP3
. See a specific example below of the files and playlist structure for easier understanding.
rekordboxTM doesn`t store metadata such as release date, album artist, mix title, and original artist for FLAC files, while it correctly saves these for MP3 files. MetaRekordFixer leverages this as follows:
Important note: MP3 and FLAC files must have the same filename (regardless of extension).
The DJ created a library containing MP3 copies of his FLAC tracks for compatibility with older CDJs. However, grid settings, hot cues, memory cues, and play counts are stored only with the FLACs. MetaRekordFixer copies this information to the appropriate tracks. It is possible to:
Important note: If the source or target file is MP3, its bitrate must be constant. With variable bitrate, transferred CUE points may not be at the correct positions.
The author had some tracks in low-quality MP3. He obtained the same tracks in FLAC as replacements. Normally, tracks must be re-imported into rekordboxTM, which results in loss of CUE points, etc. MetaRekordFixer solves this: just prepare a playlist with the original tracks to be replaced and have the new tracks in a folder. The files must have the same name (regardless of extension).
Pioneer CDJs can sort tracks by the date added to the rekordboxTM library. However, the author often needs tracks sorted by recency, and if he adds older tracks to his archive, they appear as new. MetaRekordFixer can change the date added for tracks and offers two options:
When adding FLAC tracks, the author also acquires MP3 equivalents. For convenience, MetaRekordFixer includes a simple converter for common audio formats with basic, default parameters. If the user wants the highest quality for the target track, nothing needs to be set-the default is maximum quality. Just set the source and target locations. It is also possible to create a folder with the same name as the source, ensuring the same directory structure.
The application uses direct access to the rekordboxTM database, which is usually located at %appdata%/Roaming/Pioneer/rekordbox
under the filename master.db
. This location must be specified in the Settings. Backups of this database are also stored here. Format conversion is performed using the external tools ffprobe and ffmpeg from the /tools
folder in the application`s installation directory.
Important note:
Currently available for Windows only. The installer can be downloaded from releases page; simply run it and follow the steps. Administrator rights are not required, because the application is installed in %appdata%/Local/Programs/MetaRekordFixer
. During the installation, ffmpeg and ffprobe, which are needed for file conversion, will also be downloaded. The application includes automatic language detection based on system settings; currently supported languages are English (default for unsupported languages), Czech, and German.
The application was created by a DJ without programming experience. It may therefore contain bugs or issues related to individual DJs` collection management habits. The development of the application continues, with new features and development of existing ones planned.