Implement Week 2 metadata extraction and cache database
Week 1 fixes: - Move hex to workspace dependencies - Add cargo-criterion, protobuf, grpcurl to flake.nix Week 2 implementation: - musicfs-metadata: MetadataParser with symphonia 0.5 for FLAC, MP3, Opus/Vorbis, M4A/AAC (2 tests) - musicfs-cache: SQLite schema per architecture 4.3.6 with track/disc columns, TEXT content_hash, all required indexes - musicfs-cache/db.rs: Database with upsert, CRUD, mtime lookup (9 tests) - musicfs-cache/metadata.rs: MetadataCache with store/lookup/is_fresh/ invalidate (2 tests) - musicfs-core: Added Metadata error variant 22 tests pass total. Oracle-verified against architecture doc.
This commit is contained in:
@@ -37,6 +37,12 @@ sled = "0.34"
|
||||
|
||||
# Hashing (per architecture 8.3)
|
||||
xxhash-rust = { version = "0.8", features = ["xxh64"] }
|
||||
hex = "0.4"
|
||||
|
||||
# Audio metadata
|
||||
symphonia = { version = "0.5", default-features = false, features = [
|
||||
"aac", "alac", "flac", "mp3", "ogg", "vorbis", "wav"
|
||||
] }
|
||||
|
||||
# Testing
|
||||
tempfile = "3"
|
||||
|
||||
Reference in New Issue
Block a user