Skip to content

Holzhaus/triseratops

Repository files navigation

triseratops - The robust, in-depth Serato Parser & Serializer

Version License Build Status

triseratops - The robust, in-depth Serato Parser & Serializer

triseratops is library to parse metadata and database files written by the Serato DJ software, written in Rust.

Note: This library is currently still under heavy development and might have breaking API changes in the future.

FAQ

Is this software affiliated with Serato Ltd. or its related companies?

No, this library has been written independently. All formats have been reverse-engineered and the parsing code has been implemented from scratch.

Does this library read tag data from MP3/AIFF/MP4/FLAC/Ogg files?

It parses the Serato DJ metadata embedded in those files, but it can't read directly from those file types. You need to use a separately library (e.g. id3 for MP3/AIFF) to read the actual tag data from media files.

What's the history behind this library?

Work on reversing the format and a corresponding parser was started in 2019. The goal was to integrate such a parser into Mixxx, a free and open-source DJ software to reduce vendor lock-in and allow former Serato DJ users to migrate to Mixxx without losing their cue points, beatgrids, etc.

Mixxx currently uses a different implementation (in C++) to parse those tags, but since it will switch to aoide for library management at some point in the future, it made sense to write a new parser in Rust.

License

This software is licensed under the terms of the Affero GPL v3, or (at your discretion) any later version.