Duct taped python + yt-dlp + ffmpeg + magick + json = audio library pipeline
data/config.json -c/--config
{
"library": "data/library.json",
"downloads_dir": "data/downloads"
}library.json
{
"dQw4w9WgXcQ": {
"artist": "Rick Astley",
"title": "Never Gonna Give You Up",
"album": "Whenever You Need Somebody",
"desc": "i got rick rolled",
"lock": true
}
}| Package | Usage | License |
|---|---|---|
| Python ~=3.12 | Core language | PSFL |
| yt-dlp | Downloading files off of YouTube | Unlicense |
| FFmpeg | Required for the conversion of audio files | LGPLv2.1 |
| ImageMagick | Required for the conversion of image files | Custom |
| Package | Usage | License |
|---|---|---|
| mutagen | Tagging audio files | GPL-2.0 |
| pyinstaller | Compilation | GPLv2 |
| requests | Making requests | Apache-2.0 |
| typer | CLI interface | MIT |
| ytmusicapi | Metadata fetching | MIT |
This project is not in any way, shape or form affiliated with YouTube, Google or any of their subsidiaries and affiliates.