102 lines
4.1 KiB
Markdown
102 lines
4.1 KiB
Markdown
---
|
|
title: DeepSubX
|
|
created: 2026-06-07
|
|
updated: 2026-06-07
|
|
type: app
|
|
tags: [catalogue, artificial-intelligence, video, subtitle, transcription, python]
|
|
confidence: medium
|
|
contested: false
|
|
sources: [https://selfh.st/apps/?search=deepsubx]
|
|
---
|
|
|
|
# DeepSubX 🎬
|
|
> Générateur IA de sous-titres multilingues et stylisés pour vidéos, avec timecode précis et export SRT/VTT.
|
|
|
|
| Métadonnée | Valeur |
|
|
| :--- | :--- |
|
|
| **Site web** | https://deepsubx.dev |
|
|
| **GitHub** | https://github.com/deepsubx/deepsubx |
|
|
| **License** | GPL-3.0 |
|
|
| **Langage** | Python |
|
|
| **Étoiles** | 1 |
|
|
| **Dernière MAJ** | 2025-12 |
|
|
| **Catégorie** | [[cat-artificial-intelligence]] |
|
|
|
|
## Description
|
|
|
|
DeepSubX est un outil en ligne de commande et service web léger pour générer automatiquement des sous-titres à partir d'une vidéo. Il combine Whisper (transcription ASR) pour la parole, pyannote.audio pour la diarisation (identification des locuteurs), et un LLM pour la traduction contextuelle et la stylisation des sous-titres (longueur de ligne, ponctuation, glossaire métier).
|
|
|
|
L'originalité du projet tient à son pipeline end-to-end : extraction audio (ffmpeg), détection de langue automatique, transcription avec timecodes mot-par-mot, regroupement en "cues" optimisés pour la lecture, traduction optionnelle vers plus de 50 langues, et export aux formats SRT, VTT, ASS/SSA (avec styles typographiques) ou JSON. Un mode "karaoké" génère également des sous-titres mot par mot synchronisés.
|
|
|
|
L'écosystème est embryonnaire (1 ⭐, peu de releases publiques) et la documentation reste maigre. Le projet s'adresse aux créateurs de contenu, sous-titreurs amateurs et petites équipes de localisation qui veulent automatiser la première passe avant relecture humaine. Note de confiance : `low` — installation, modèles et API peuvent évoluer brutalement, à réserver aux early adopters patients.
|
|
|
|
## Installation
|
|
|
|
### Docker Compose
|
|
|
|
```yaml
|
|
services:
|
|
deepsubx:
|
|
image: ghcr.io/deepsubx/deepsubx:latest
|
|
container_name: deepsubx
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8585:8585"
|
|
environment:
|
|
- DEEPSUBX_SECRET=${DEEPSUBX_SECRET}
|
|
- HF_TOKEN=${HF_TOKEN} # pour pyannote
|
|
- WHISPER_MODEL=large-v3
|
|
- DEVICE=cpu # ou cuda
|
|
volumes:
|
|
- deepsubx_data:/app/data
|
|
- deepsubx_models:/root/.cache/huggingface
|
|
deploy:
|
|
resources:
|
|
reservations:
|
|
devices:
|
|
- driver: nvidia
|
|
count: 1
|
|
|
|
volumes:
|
|
deepsubx_data:
|
|
deepsubx_models:
|
|
```
|
|
|
|
### Manuelle
|
|
|
|
```bash
|
|
git clone https://github.com/deepsubx/deepsubx.git
|
|
cd deepsubx
|
|
python -m venv .venv && source .venv/bin/activate
|
|
pip install -r requirements.txt
|
|
deepsubx serve --host 0.0.0.0 --port 8585
|
|
```
|
|
|
|
## Configuration
|
|
|
|
GPU NVIDIA fortement recommandé (modèle `large-v3` quasi inutilisable sur CPU). Token HuggingFace requis pour `pyannote/segmentation-3.0` (acceptation des conditions d'usage sur le site). Charger un glossaire JSON pour la terminologie spécifique (médical, juridique, gaming). Endpoint REST `/transcribe` accepte un upload multipart ou une URL distante (YouTube via `yt-dlp`).
|
|
|
|
## Alternatives
|
|
|
|
- **Open source** : [[app-whisper]] (OpenAI Whisper), [[app-faster-whisper]], [[app-macWhisper-auto-subtitles]], [[app-subgen]], [[app-videobee]], [[app-pyannote]]
|
|
- **Propriétaire** : Submagic, Descript, Kapwing, VEED.io, Rev.ai, Sonix
|
|
|
|
## Sécurité
|
|
|
|
Les vidéos uploadées peuvent contenir des données sensibles (réunions, formations internes). Déployer derrière un reverse-proxy avec auth, chiffrer le volume `deepsubx_data` (LUKS/ZFS), limiter la taille d'upload et purger régulièrement les fichiers temporaires. Ne pas exposer publiquement sans rate-limit. Surveiller les CVE des dépendances (FFmpeg, PyTorch, Transformers) — projet récent, surface d'attaque non audite.
|
|
|
|
## Ressources
|
|
|
|
- Dépôt GitHub : https://github.com/deepsubx/deepsubx
|
|
- Modèles utilisés : Whisper large-v3, pyannote.audio, NLLB-200
|
|
- Licence : GPL-3.0
|
|
- Statut : alpha, à utiliser avec prudence
|
|
|
|
## Pages Liées
|
|
|
|
- [[cat-artificial-intelligence]]
|
|
- [[recettes-docker-compose]]
|
|
- [[app-whisper]]
|
|
- [[app-faster-whisper]]
|
|
- [[app-pyannote]]
|