Components
freemkv is a family of Rust crates. 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 the same core library, libfreemkv — increasingly through freemkv-engine, the shared rip-orchestration layer described below.
libfreemkv
Section titled “libfreemkv”The core library. It owns drive access and SCSI, disc scanning and title/stream parsing, the raw single-shot sector read, AACS and CSS decryption, and MKV muxing. Everything else consumes it. (Recovery — the mapfile and the multipass model — moved out of libfreemkv into freemkv-engine in 1.6.0.)
Source on GitHub — the authoritative, current API. Consumed by git tag.
See the library overview.
freemkv-engine
Section titled “freemkv-engine”A shared rip-orchestration layer that sits between libfreemkv and the front
ends. It owns the recovery strategy (sweep, patch, multipass) and the
multi-title rip loop, so every front end drives the same policy instead of
reimplementing it. The freemkv CLI (both its command line and its desktop
app) and autorip all run on it.
Source on GitHub — consumed by git tag.
freemkv
Section titled “freemkv”The user-facing front end, for Windows, macOS, and Linux. One binary with two faces: the command line, where 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), and — on Windows and macOS — a native desktop app, opened with freemkv gui.
See the CLI reference. Get a binary from the Download page.
autorip
Section titled “autorip”A cross-platform rip service (Windows, macOS, Linux). 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 or an online key service. This is how decryption keys reach the decryption pipeline.
Source on GitHub — consumed by git tag.
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.