Le besoin
SHIFT Studio est un studio local de doublage vidéo par intelligence artificielle pour Mac avec Apple Silicon et Windows.
Le doublage par IA nécessite généralement toute une série de modèles : reconnaissance vocale, traduction, synthèse vocale, clonage de voix et séparation de la voix et de la musique. Chacun doit être trouvé, installé, adapté à son matériel et relié aux autres, ce qui relève du travail d'un ingénieur et non d'un créateur de vidéos. Les services en ligne résolvent ce problème, mais ils sont payants, limités en durée et obligent à envoyer ses contenus sur les serveurs d'un tiers. L'objectif du projet était de rendre le doublage accessible à une personne sans compétences techniques : elle télécharge un seul logiciel, puis il lui suffit de glisser une vidéo dans la fenêtre.
À l'installation, le logiciel détecte de lui-même le processeur, la mémoire et la carte graphique, classe l'ordinateur dans une catégorie de performances et télécharge des modèles adaptés : des modèles compacts sur un portable doté de 8 Go de mémoire, les plus grands et les plus performants sur une machine puissante. L'utilisateur choisit seulement les langues et le nombre d'intervenants, et obtient une vidéo dont la traduction est doublée avec la voix de l'intervenant d'origine, exactement sur les timecodes, avec la musique et l'ambiance conservées, des sous-titres et la piste audio originale. Pour ceux qui tiennent à une prononciation impeccable, un mode sans accent fait parler une voix native, tandis que le timbre d'origine est transféré par un modèle distinct.
En coulisses fonctionne une chaîne de traitement en treize étapes. Le son est extrait de la vidéo, la voix est séparée du fond sonore, la parole est transcrite avec l'horodatage de chaque mot et répartie entre les intervenants, puis traduite en tenant compte du contexte et de la longueur des phrases, accentuée correctement et doublée. Chaque phrase est synthétisée en plusieurs prises par différents moteurs ; chaque prise est retranscrite et comparée au texte, et la voix est comparée à l'originale. Le logiciel choisit lui-même la meilleure prise, redouble les phrases peu intelligibles et raccourcit celles qui sont trop longues, ajuste le timing aux pauses de l'original et mixe le volume avec le fond sonore. Si on le souhaite, la traduction peut être corrigée avant le doublage, et chaque phrase peut être réécoutée et redoublée individuellement. Chaque étape s'exécute dans un processus séparé et le modèle est entièrement déchargé de la mémoire ensuite, si bien que même un ordinateur doté de 8 Go peut utiliser des modèles qui n'y tiendraient jamais ensemble. Tout fonctionne hors ligne : Internet n'est nécessaire qu'une seule fois, pour télécharger les modèles.
La séparation de la voix est assurée par Demucs, la reconnaissance vocale et la vérification du doublage par Whisper large-v3 et large-v3 turbo, et l'identification des intervenants par ECAPA-TDNN de SpeechBrain. La traduction est réalisée par les modèles de langage Gemma 3 et Qwen3 ou par NLLB-200, tandis que l'accentuation est gérée par RUAccent et ukrainian-word-stress. La voix est synthétisée par OmniVoice, KugelAudio, XTTS-v2 et Silero, et le timbre est transféré par kNN-VC. Tous les modèles sont décrits dans un catalogue extensible : un nouveau modèle s'ajoute en une seule entrée, et le logiciel décide lui-même s'il convient à l'ordinateur de l'utilisateur.
Le logiciel est écrit en Python. La partie IA repose sur PyTorch, Hugging Face Transformers et SpeechBrain ; sur Mac, les calculs sont accélérés grâce à Apple MLX et à des modèles de langage quantifiés sur 4 bits, et sur Windows grâce à CUDA sur les cartes graphiques NVIDIA. Le traitement audio et vidéo s'appuie sur ffmpeg, Rubber Band et librosa. L'application de bureau est réalisée avec pywebview, avec une interface en HTML, CSS et JavaScript aux couleurs de la marque SHIFT CODE, et elle dispose aussi d'une interface en ligne de commande complète. Les installateurs sont écrits en Bash et PowerShell avec le gestionnaire d'environnements uv, et l'ensemble de la chaîne est couvert par des tests pytest.
Le résultat est une application multiplateforme qui sélectionne et installe d'elle-même plus de 25 modèles de réseaux de neurones adaptés à chaque ordinateur, fonctionne entièrement en local et réalise un doublage entre 12 langues en une seule action.











