library  by chapmanjacobd

CLI tool for managing and curating large media libraries

created 3 years ago
434 stars

Top 69.6% on sourcepulse

GitHubView on GitHub
Project Summary

This tool provides over 100 command-line interface (CLI) tools for managing, curating, and blending media libraries, catering to users with large local or online media collections. It offers comprehensive indexing, metadata extraction, and playback capabilities for both local files and online content like YouTube playlists, aiming to simplify media organization and consumption.

How It Works

The library leverages SQLite databases to store and manage media metadata. It integrates with external tools like ffmpeg for media processing and yt-dlp for online content. The core approach involves scanning file systems or fetching online metadata, storing it in a structured database, and then providing a rich set of CLI commands to query, filter, play, and manipulate this data. This database-centric design allows for efficient management of vast media collections and enables complex operations through a unified interface.

Quick Start & Requirements

  • Install: pip install library
  • Prerequisites: ffmpeg is required. mpv, fd-find, and fish shell are recommended for enhanced functionality.
  • Setup: Initial metadata extraction for large libraries (e.g., 30TB of video) can take several hours.
  • Documentation: https://github.com/chapmanjacobd/library

Highlighted Details

  • Supports local file system scanning and online media indexing (YouTube, Vimeo, etc.).
  • Offers advanced media processing for space savings (AV1/Opus conversion).
  • Includes tools for file system management, text processing, and data analysis.
  • Provides playback control, history management, and media deduplication.

Maintenance & Community

The project is actively maintained by chapmanjacobd. Further community engagement details are not explicitly provided in the README.

Licensing & Compatibility

The README does not explicitly state a license. Compatibility for commercial use or closed-source linking is not specified.

Limitations & Caveats

Initial setup for very large media libraries can be time-consuming. Some advanced features may require additional software installations (e.g., yt-dlp, Calibre). The project's extensive feature set might have a steep learning curve.

Health Check
Last commit

7 hours ago

Responsiveness

1 day

Pull Requests (30d)
0
Issues (30d)
0
Star History
9 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.