1.6 KiB
1.6 KiB
Changelog
0.4.0 (2026-04-07)
Labels — complete rewrite
- Detect-then-parse architecture: each BD-J authoring format has its own parser module with
detect()andparse()functions. Drop in a new parser with one line in the registry. - 5 format parsers: Paramount (
playlists.xml), Criterion (streamproperties.xml), Pixelogic (bluray_project.bin), Warner CTRM (menu_base.prop/language_streams.txt), shared label vocabulary (vocab.rs) - Raw disc data principle: label data passes through as-is from disc. Only BD-standard codec identifiers (MLP, AC3, DTS) are mapped to display names. Unknown authoring tool codes (csp, eda, cf) pass through raw.
variantfield: replacesregion— language dialect codes from authoring tools, not BD spec regions- Removed: old
jarmodule (superseded by labels) - Removed: dead label apply functions from disc.rs
Drive
DriveSession::eject(): sends PREVENT ALLOW MEDIUM REMOVAL then START STOP UNIT. Works reliably after raw mode unlock.DiscRegionenum: Free, BluRay(A/B/C), Dvd(1-8). UHD always region-free.
Capture
- Fixed sector range collection: captures ALL files on disc (only skips STREAM/ video files and >50MB). Previously skipped BACKUP/, DUPLICATE/, and files >10MB which missed JAR content.
0.3.1
- Labels module: 4 disc file parsers for stream labels
- Simplified labels API
0.3.0
- Initial public release
- SCSI transport (Linux SG_IO, macOS IOKit)
- UDF 2.50 filesystem reader
- MPLS/CLPI parsers with full STN support
- Drive identification + profile matching
- 206 bundled drive profiles
- AACS 1.0 decryption (VUK + unit keys)