Initial vault setup
This commit is contained in:
@@ -0,0 +1,126 @@
|
||||
---
|
||||
title: Spotizerr
|
||||
created: 2026-06-07
|
||||
updated: 2026-06-07
|
||||
type: app
|
||||
tags: [catalogue, downloads, spotify, music, python, yt-dlp]
|
||||
confidence: medium
|
||||
contested: false
|
||||
sources:
|
||||
- https://selfh.st/apps/?tag=downloads
|
||||
- https://github.com/spotizerr/spotizerr
|
||||
---
|
||||
|
||||
# 🟢 Spotizerr
|
||||
> Téléchargeur de playlists et morceaux Spotify : récupère les métadonnées via l'API Spotify, puis télécharge les fichiers audio depuis YouTube Music via yt-dlp, avec taggage automatique.
|
||||
|
||||
| Métadonnée | Valeur |
|
||||
| :--- | :--- |
|
||||
| **Site web** | https://github.com/spotizerr/spotizerr |
|
||||
| **GitHub** | https://github.com/spotizerr/spotizerr |
|
||||
| **License** | MIT |
|
||||
| **Langage** | Python (FastAPI) |
|
||||
| **Étoiles** | 6 ⭐ |
|
||||
| **Dernière MAJ** | 2025 |
|
||||
| **Catégorie** | [[cat-downloads]] |
|
||||
|
||||
## Description
|
||||
|
||||
Spotizerr fait partie de la famille des **« Spotify → YouTube downloader »**, comme **spotDL** (le plus connu en CLI) ou [[app-yubal]] (focus YT Music). Son créneau : offrir une **API REST simple** + une UI web minimale pour automatiser la résolution de playlists Spotify en fichiers audio locaux, **sans compte YouTube**.
|
||||
|
||||
Le flow : on colle une URL de playlist/album/track Spotify → Spotizerr récupère la liste des titres via l'API publique Spotify (gratuit, pas d'auth pour la lecture) → pour chaque titre, il construit une recherche YouTube Music ciblée (artiste + titre) → délègue à **yt-dlp** pour le téléchargement audio → applique les tags ID3 (titre, artiste, album, n° de piste, année, cover) → range proprement.
|
||||
|
||||
Différenciation vs spotDL : spotDL est une CLI puissante mais sans UI, et demande souvent un setup Python/venv. Spotizerr mise sur le **« tout en un conteneur »** et une **API REST** (parfaite pour scripter, intégrer à [[app-navidrome]] via script d'import, ou déclencher depuis [[app-home-assistant]]). L'UI est volontairement spartiate.
|
||||
|
||||
**⚠️ Limitations honnêtes** : le matching Spotify → YouTube n'est pas parfait (remaster, live, version acoustique = mismatch possible). La qualité dépend de ce qui est disponible sur YouTube. Pour du **vrai CD-quality**, il faut passer par des services payants (Qobuz, Tidal via leur API) ou des outils comme [[app-music-grabber]] couplé à Lidarr.
|
||||
|
||||
**⚠️ Avertissement légal** : contourner les DRM d'un service de streaming pour télécharger sans abonnement est **illégal** dans la plupart des juridictions (DMCA, EU Copyright Directive). À utiliser uniquement sur du contenu sous licence libre, ou vos propres uploads, ou avec un abonnement actif (certains outils).
|
||||
|
||||
## Installation
|
||||
|
||||
### Docker Compose (recommandé)
|
||||
|
||||
```yaml
|
||||
# docker-compose.yml
|
||||
services:
|
||||
spotizerr:
|
||||
image: ghcr.io/spotizerr/spotizerr:latest
|
||||
container_name: spotizerr
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "8083:8083"
|
||||
environment:
|
||||
- TZ=Europe/Paris
|
||||
- SPOTIFY_CLIENT_ID=*** # pour métadonnées enrichies
|
||||
- SPOTIFY_CLIENT_SECRET=***
|
||||
- AUDIO_FORMAT=mp3
|
||||
- AUDIO_QUALITY=320
|
||||
- DOWNLOAD_DIR=/downloads
|
||||
volumes:
|
||||
- ./config:/app/config
|
||||
- /data/music/spotizerr:/downloads
|
||||
```
|
||||
|
||||
### Installation manuelle
|
||||
|
||||
```bash
|
||||
git clone https://github.com/spotizerr/spotizerr
|
||||
cd spotizerr
|
||||
pip install -r requirements.txt # nécessite ffmpeg système
|
||||
cp .env.example .env
|
||||
python -m spotizerr
|
||||
# API sur :8083, docs sur /docs (Swagger auto)
|
||||
```
|
||||
|
||||
## Configuration
|
||||
|
||||
- **Spotify API** : client ID + secret (gratuit, dashboard developer.spotify.com) pour métadonnées enrichies, facultatif en lecture publique.
|
||||
- **Format audio** : `mp3`, `flac`, `opus`, `m4a` — `mp3` 320 kbps est le défaut le plus compatible.
|
||||
- **Quality preference** : `best` (yt-dlp default) ou forcer un bitrate.
|
||||
- **Playlist sync** : une URL playlist peut être monitorée, re-téléchargée si de nouveaux tracks apparaissent.
|
||||
- **Hooks** : script post-download, webhook optionnel.
|
||||
- **API REST** : `POST /download` avec JSON `{url, format}` pour scripter.
|
||||
|
||||
## Alternatives
|
||||
|
||||
### Open Source
|
||||
|
||||
- **spotDL** (spotify-downloader) — la référence CLI, plus mature, plus de fonctionnalités (sync playlists, métadonnées complètes), pas d'UI web.
|
||||
- [[app-yubal]] — équivalent côté YouTube Music (sans dépendance Spotify API).
|
||||
- [[app-music-grabber]] — focus Lidarr, plus orienté backfill.
|
||||
- [[app-jellyfin]] + **Jellyfin Spotify plugin** — streaming sans download.
|
||||
- **SpotTube** (Kotlin, desktop) — UX client, pas self-hosted serveur.
|
||||
|
||||
### Propriétaires (ce que Spotizerr remplace)
|
||||
|
||||
- **Spotify Premium offline** —只能在客户端读,无法在别处读。
|
||||
- **TuneMyMusic / Soundiiz** — transfert entre services, pas download local.
|
||||
- **Tidal HiFi** — qualité supérieure (FLAC vrai), abonnement cher.
|
||||
|
||||
## Sécurité
|
||||
|
||||
- **Bus factor 1, projet très jeune** (< 10 ⭐, ~1 an) : **risque d'abandon élevé**, ne pas miser son installation musicale dessus en prod.
|
||||
- **Spotify API credentials** : client secret dans `./config`, à chiffrer. Ne pas commit.
|
||||
- **Cookies** : si vous passez par votre compte Spotify (auth), ils donnent accès à votre compte.
|
||||
- **Légalité** : vérifier votre juridiction, en UE la directive Copyright 2019/790 permet le téléchargement pour usage privé dans certains cas limités (recherche).
|
||||
- **Pas d'auth par défaut sur l'API** : ne pas exposer `:8083` sur Internet, l'API peut déclencher des downloads arbitraires.
|
||||
- **yt-dlp dépendance** : sensible aux changements YouTube, peut casser du jour au lendemain (rare mais historique).
|
||||
|
||||
## Ressources
|
||||
|
||||
- Repository : https://github.com/spotizerr/spotizerr
|
||||
- spotDL (alternative mature) : https://github.com/spotdl/spotify-downloader
|
||||
- yt-dlp : https://github.com/yt-dlp/yt-dlp
|
||||
- Spotify API dashboard : https://developer.spotify.com/dashboard
|
||||
|
||||
## Pages Liées
|
||||
|
||||
- [[cat-downloads]] — catégorie parente
|
||||
- [[app-yubal]] — alternative YouTube Music
|
||||
- [[app-music-grabber]] — alternative Lidarr
|
||||
- [[app-lidarr]] — gestion bibliothèque
|
||||
- [[app-navidrome]] — serveur streaming
|
||||
- [[app-traefik]] — reverse proxy
|
||||
- [[app-authentik]] — SSO
|
||||
- [[recettes-docker-compose]] — templates
|
||||
- [[securisation-home-lab]] — bonnes pratiques
|
||||
Reference in New Issue
Block a user