1.1 KiB
Database V2 Read-only Parser
Problem
Crates and files do not explain every orange track in Serato. The legacy
database V2 contains Serato's library-level track paths and metadata, so it must
be inspected independently from crate references.
Architecture
The parser reads the file as a big-endian tag-length-value stream. Top-level
otrk records contain nested fields including pfil (path), tsng (title),
tart (artist), talb (album), and tgen (genre). Text is UTF-16 big-endian.
Analysis reports total database entries, entries whose filenames occur in the selected music scan, entries outside that scan, scanned tracks absent from the database, and duplicate database paths. “Outside scan” is deliberately not called missing because Serato databases can include samples and tracks from other roots.
Safety
The parser calls only read_bytes; it never opens the database for writing. No
metadata values or personal paths are sent to logs or the dashboard.
Verification
Synthetic TLV fixtures cover version, paths, metadata, incomplete records, and health integration. The sample library includes a generated ten-entry database.