Retour aux outils
Photos / MédiasIntermédiaireOpen sourceAuto-hébergeable

DeepSubX

Générateur IA de sous-titres multilingues et stylisés pour vidéos, avec timecode précis et export SR

MAJ 2026-06-14
DeepSubX
Code source★ 0

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

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éeValeur
Site webhttps://deepsubx.dev
GitHubhttps://github.com/deepsubx/deepsubx
LicenseGPL-3.0
LangagePython
Étoiles1
Dernière MAJ2025-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

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

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