Skip to content

Rouzax/CrateDigger

Repository files navigation

CrateDigger

Python 3.11+ GPL-3.0 v0.9.8

Festival set & concert library manager. Organize, enrich, and curate your collection with professional artwork, metadata, and chapter markers.

What is CrateDigger?

CrateDigger is a Python CLI tool for managing festival set and concert recording libraries. It follows a three-command workflow: identify matches recordings against 1001Tracklists and embeds chapter markers, organize moves files into your library with smart folder layouts, and enrich generates posters, artwork, NFO files, and embeds tags. CrateDigger integrates with Kodi for a polished media center experience, complete with artwork, metadata, and library sync.

Pair it with TrackSplit — a sibling CLI that extracts chapter-based audio from your video library into gapless, tagged FLAC albums for Jellyfin, Lyrion, and other music servers. TrackSplit reads CrateDigger's festival and artist config, so canonical naming and MusicBrainz IDs stay consistent across your video and music libraries. Landing page · Documentation · GitHub

Poster Gallery

Set Posters

Album Posters

Features

Identify

Match recordings against 1001Tracklists to retrieve full tracklist metadata. Chapter markers are embedded directly into MKV files, giving you track-by-track navigation. DJ artwork and event details are pulled in automatically.

Organize

Sort your library using four folder layouts: artist_flat, festival_flat, artist_nested, and festival_nested. Sonarr-style collapsing tokens let you group events under a single folder (for example, grouping all Ultra stages together). Files can be copied, moved, or renamed in place.

Enrich

Extract cover art from video files, fetch HD ClearLOGOs and artist fanart from fanart.tv, and generate posters in two distinct styles (set posters and album posters). Kodi-compatible NFO files are written alongside each recording. MKV tags are embedded with full metadata including artist, event, date, and tracklist info.

Kodi Sync

Trigger library refreshes over JSON-RPC so Kodi picks up new content automatically. Automatic path mapping translates between local and Kodi filesystem paths. NFO files follow Kodi conventions for seamless scraper compatibility.

Quick Start

Prerequisites

Install

pip install git+https://github.com/Rouzax/CrateDigger.git

Optional: install with frame sampling support for higher-quality poster backgrounds (uses OpenCV to score video frames):

pip install "cratedigger[vision] @ git+https://github.com/Rouzax/CrateDigger.git"

Usage

# Step 1: Match recordings against 1001Tracklists and embed chapters
cratedigger identify /path/to/downloads

# Step 2: Organize files into your library
cratedigger organize /path/to/downloads --library /path/to/library

# Step 3: Generate artwork, posters, NFO files, and embed tags
cratedigger enrich /path/to/library

Commands

Command Description
cratedigger identify Match recordings against 1001Tracklists and embed chapter markers
cratedigger organize Move or copy files into your library with smart layouts
cratedigger enrich Generate artwork, posters, NFO files, and embed tags
cratedigger audit-logos Check festival logo coverage in your library

Configuration

CrateDigger reads settings from ~/.cratedigger/config.json for global defaults and supports library-level configuration files for per-library overrides. A config.example.json is included in the repository as a starting point. See the docs folder for a full configuration reference.

Disclaimer

Artwork displayed in this project is sourced from fanart.tv and 1001Tracklists. All artwork, logos, and trademarks belong to their respective owners. CrateDigger is not affiliated with any festival, artist, or platform shown.

License

This project is licensed under the GPL-3.0 License. See LICENSE for details.

Releases

No releases published

Packages

 
 
 

Contributors