Files
libfreemkv/CHANGELOG.md
T

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() and parse() 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.
  • variant field: replaces region — language dialect codes from authoring tools, not BD spec regions
  • Removed: old jar module (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.
  • DiscRegion enum: 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)