feat(cache): implement Id3v2Handler for MP3 metadata synthesis

- Implement all 8 FormatHandler trait methods
- Use lofty 0.24 for ID3v2.4 tag creation/parsing
- Map all 36 AudioMeta fields to ID3v2 frames
- Handle ID3v2 header parsing for audio_start
- Detect ID3v1 tags at EOF for audio_end
- Add 13 comprehensive unit tests
- Fix test-utils AudioMeta construction with ..Default::default()
- All tests pass, LSP diagnostics clean
This commit is contained in:
Alexander
2026-05-17 17:14:23 +02:00
parent 693b4f067b
commit 128a6e079e
12 changed files with 1867 additions and 0 deletions
+4
View File
@@ -1,6 +1,8 @@
mod artwork;
mod db;
mod eviction;
mod format_handler;
mod format_layout;
mod metadata;
mod patterns;
mod prefetch;
@@ -9,6 +11,8 @@ mod tree;
pub use artwork::{ArtworkCache, ArtworkError, CachedArtwork};
pub use db::{Database, TrashedFile, TrashedFilter};
pub use eviction::{EvictionError, EvictionPolicy, LruEviction};
pub use format_handler::{FormatError, FormatHandler, FormatHandlerRegistry};
pub use format_layout::FormatLayout;
pub use metadata::MetadataCache;
pub use patterns::{AccessContext, AccessPattern, PatternError, PatternStore};
pub use prefetch::{PrefetchConfig, PrefetchEngine, PrefetchHandle};