Files
2026-06-09 18:40:21 +02:00

115 lines
4.2 KiB
Markdown

---
title: Subatic
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, media-streaming, subtitles, opensubtitles, gestion, nodejs]
confidence: medium
contested: false
sources:
- https://selfh.st/apps/?tag=Media+Streaming
- https://github.com/.../subatic
---
# 🎬 Subatic
> Gestionnaire de sous-titres self-hosted : téléchargement automatisé depuis OpenSubtitles, Subscene, gestion de langues multiples et synchronisation.
## 📋 Informations Générales
| Attribut | Valeur |
|----------|--------|
| **Nom** | Subatic |
| **Slug** | app-subatic |
| **Description** | Outil de gestion de sous-titres multi-providers, intégré à Sonarr/Radarr/Jellyfin |
| **Site officiel** | https://subatic.app/ |
| **Repository** | https://github.com/subatic/subatic |
| **Stars** | 161 ⭐ |
| **Licence** | MIT |
| **Langage principal** | TypeScript (Node.js) |
| **Catégorie** | Media Streaming |
| **Tags** | [catalogue, media-streaming, subtitles, opensubtitles, gestion, nodejs] |
## 📝 Description
Subatic se positionne comme une **alternative moderne à [[app-bazarr]]** pour la gestion des sous-titres. Là où Bazarr est solide mais historiquement couplé à Sonarr/Radarr avec une UI vieillissante, Subatic propose une interface web plus moderne, un support natif de plusieurs providers (OpenSubtitles v1 + v2, Subscene, Addic7ed) et une gestion fine des langues par profil utilisateur.
L'application scanne une bibliothèque média, identifie chaque fichier, et télécharge automatiquement les sous-titres manquants dans la langue configurée (VF, VO, multi). Elle sait aussi **réaligner** un sous-titre décalé (sync) et notifier l'utilisateur via Discord ou [[app-ntfy]].
Points forts : UI claire, multi-providers, webhooks Sonarr/Radarr, gestion des sous-titres forcés (forced). Limites : communauté plus restreinte que Bazarr, support natif moins large de certains providers exotiques.
## 🚀 Installation
### Via Docker (recommandé)
```yaml
# docker-compose.yml
version: "3.8"
services:
subatic:
image: ghcr.io/subatic/subatic:latest
container_name: subatic
restart: unless-stopped
ports:
- "7878:7878"
environment:
- OPENSUBTITLES_API_KEY=*** - OPENSUBTITABLES_USERNAME=***
- OPENSUBTITLES_PASSWORD=***
- DEFAULT_LANGUAGES=fr,en
- MEDIA_PATHS=/media/films,/media/series
volumes:
- ./config:/app/config
- /media:/media:ro
```
### Installation manuelle
```bash
git clone https://github.com/subatic/subatic
cd subatic
npm install
npm run build
node dist/server.js
```
## ⚙️ Configuration
- **Provider** : OpenSubtitles v2 (recommandé), Subscene, Addic7ed.
- **Chemins média** : pointer sur les dossiers films/séries (lecture seule).
- **Langues par défaut** : liste ISO 639-1 (`fr`, `en`, `es`, etc.).
- **Stratégie** : `best match` (note la plus haute), `first match` (premier trouvé), ou score pondéré.
- **Webhook Sonarr/Radarr** : URL `http://subatic:7878/webhook` configurée dans les *arr.
## 🔗 Alternatives
- **Bazarr** — Référence historique, plus mature, plus d'intégrations.
- **Subliminal (Python lib)** — Pour scripter soi-même, sans UI.
- **OpenSubtitles.com** — Service web centralisé, sans auto-hébergement.
- **Jellyfin OpenSubtitles plugin** — Pour usage ponctuel, pas d'automatisation poussée.
## 🔒 Sécurité
- Clé API OpenSubtitles : à protéger comme un mot de passe, en variable d'environnement.
- Ne pas exposer l'UI sur Internet sans authentification ([[app-traefik]] + [[app-authentik]]).
- Logs : désactiver le logging des credentials (config par défaut normalement saine).
- Volumes média en `:ro` pour éviter qu'un bug n'écrive dans vos films.
## 📚 Ressources
- Repository : https://github.com/subatic/subatic
- Documentation : https://docs.subatic.app/
- OpenSubtitles API : https://opensubtitles.stoplight.io/
- Bazarr (référence) : https://www.bazarr.media/
## 🔗 Pages Liées
- [[cat-media-streaming]] (catégorie parente)
- [[app-bazarr]] — Alternative plus mature
- [[app-sonarr]] — Source de séries
- [[app-radarr]] — Source de films
- [[app-jellyfin]] — Lecteur média
- [[app-traefik]] — Reverse proxy HTTPS
- [[securisation-home-lab]] — Bonnes pratiques
- [[recettes-docker-compose]] — Templates