Components
freemkv is a Rust workspace. This page maps the pieces and links to the detailed page for each. The CLI and the autorip service are both thin front ends over one shared library.
libfreemkv
Section titled “libfreemkv”The core engine. It owns the mapfile and multipass recovery model, sector-level retry, AACS and CSS decryption, and MKV muxing. Everything else consumes it.
Published on crates.io; API docs at docs.rs/libfreemkv.
See the library overview.
freemkv
Section titled “freemkv”The command-line front end, for Linux, macOS, and Windows. Every operation is a scheme:// stream URL: rip a disc to MKV, copy a disc to an ISO, remux an existing image, inspect a disc, or refresh the key database.
See the CLI reference. Get a binary from the Download page.
autorip
Section titled “autorip”A cross-platform rip service (Linux, macOS, Windows). It auto-detects optical drives, runs the full sweep, patch, and mux pipeline on disc insert, and exposes a web UI for settings, live progress, and history. Resumable, with a configurable accepted-loss threshold. Runs as a single binary, or via Docker on Linux.
See the autorip service. Published to GHCR at ghcr.io/freemkv/autorip:latest.
freemkv-keysources
Section titled “freemkv-keysources”Pluggable AACS key sources for libfreemkv: a key database file, an online key service, or a mapfile-derived source. This is how decryption keys reach the decryption pipeline.
Published on crates.io.
A Blu-ray disc emulation component for testing the recovery and decryption paths without a physical disc in a drive.
How they fit together
Section titled “How they fit together”bdemu sits alongside as a test fixture for the recovery and decryption paths.