imSp4rky b3c86413d5 fix(dl): take turns on licence requests so one licence serves every track
Tracks with different KID sets still query the vaults at the same time, but wait for one licence lock and check the key cache again before they licence.
2026-10-31 12:42:43 -06:00
2025-07-18 00:46:05 +00:00
2025-07-18 00:46:05 +00:00
2026-10-01 12:22:49 -06:00
2025-07-18 00:46:05 +00:00
2025-07-18 00:46:05 +00:00

no_encryption unshackle
Movie, TV, and Music Archival Software
Discord

Install  ·  Docs  ·  Discord


A modular archival tool for movies, TV, and music. Fork of Devine with DASH/HLS/ISM parsing, Widevine & PlayReady DRM, and a REST API.

unshackle demo

Install

The recommended way is a git clone with the install script. The script installs uv and unshackle, then runs unshackle setup to download the external tools and write a first config.

git clone https://github.com/unshackle-dl/unshackle.git
cd unshackle
sh install.sh                 # Windows: .\install.bat
uv run unshackle env check

In a clone, run every command as uv run unshackle ....

Note

Advanced: uv tool install git+https://github.com/unshackle-dl/unshackle.git installs unshackle into the tool folder of uv, not a folder that you choose. unshackle setup then puts the tools, config, and data in your user data and config directories. See Installation for details.

Requirements

External tools. (recommended versions):

Optional:

License

GPL-3.0. Do not use unshackle for content you do not have the rights to. Keep the core free and open. Keep service code private. Be kind.

S
Description
No description provided
Readme GPL-3.0
53 MiB
Languages
Python 99.9%