3 个版本

0.0.3 2023年11月30日
0.0.2 2022年2月19日
0.0.1 2021年2月4日

解析器实现 中排名 980

AGPL-3.0 或更高版

200KB
3K SLoC

triseratops - 强大且深入的 Serato 解析器 & 序列化器

Version License Build Status

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

triseratops 是一个用于解析 Serato DJ 软件编写的元数据和数据库文件的库,用 Rust 编写。

注意: 此库目前仍在积极开发中,将来可能会有破坏性的 API 变更。

常见问题解答

没有,此库是独立编写的。所有格式都已 逆向工程,解析代码是从头开始的。

此库是否从 MP3/AIFF/MP4/FLAC/Ogg 文件中读取标签数据?

解析 这些文件中嵌入的 Serato DJ 元数据,但不能直接从这些文件类型中读取。您需要使用单独的库(例如,用于 MP3/AIFF 的 id3)从媒体文件中读取实际的标签数据。

此库的历史是什么?

从 2019 年开始着手逆向工程格式和相应的解析器。目标是将其集成到 Mixxx 中,这是一个免费和开源的 DJ 软件,以减少对供应商的依赖,并允许前 Serato DJ 用户迁移到 Mixxx 而不丢失他们的节拍点、节奏网格等。

Mixxx 目前使用不同的实现(C++),用于解析这些标签,但鉴于它将在未来某个时候切换到 aoide 进行库管理,因此编写一个新的 Rust 解析器是有意义的。

许可证

本软件根据 Affero GPL v3 的条款进行许可,或(根据您的选择)任何更高版本。

依赖关系

~1.4–2.1MB
~42K SLoC