Comment traduire des sous-titres YouTube dans plusieurs langues

Comment traduire des sous-titres YouTube dans plusieurs langues

7 septembre 2026

YouTube exige un fichier de sous-titres par langue: une vidéo en huit langues représente donc huit fichiers. La traduction est la partie facile. C’est la répétition de l’opération huit fois qui décourage souvent les utilisateurs dès la troisième langue.

Ce guide présente les deux méthodes: le faire manuellement, ce qui convient pour une ou deux langues, ou confier l’ensemble à un agent IA qui utilise notre outil en ligne de commande. La seconde option demande autant de travail pour huit langues que pour deux.

Ce que YouTube vous fournit et ce qu’il attend en retour

Ouvrez YouTube Studio, accédez aux sous-titres de la vidéo et téléchargez la piste que vous avez déjà. Plusieurs formats vous sont proposés. AI Glot lit les trois formats proposés par YouTube, SRT, VTT et SBV : choisissez celui que vous préférez. Ce guide utilise .srt, un format également accepté par la plupart des éditeurs et des lecteurs. La page de YouTube sur les formats de fichiers pris en charge indique que SRT et SBV ne prennent en charge que le minutage de base, sans balisage reconnu, tandis que VTT permet le positionnement. La spécification WebVTT exige une ligne d’en-tête WEBVTT au début d’un fichier VTT et utilise un point dans les horodatages, là où SRT utilise une virgule. Renommer un fichier ne le convertit donc pas.

Ce que YouTube attend en retour est identique, mais une fois par langue: un fichier .srt importé pour chaque langue ajoutée à la vidéo. Aucun champ ne permet d’importer huit langues simultanément.

Si votre seule piste provient des sous-titres automatiques de YouTube, corrigez-les avant de traduire. La transcription automatique fait des erreurs sur les noms de produits, les noms propres et les paroles rapides. Traduire ces erreurs revient à multiplier un mot incorrect en anglais par huit langues, et vous devrez le corriger huit fois au lieu d’une seule.

L’élément du fichier de sous-titres qui détermine tout le processus

Un fichier SRT est une liste numérotée de séquences. Chaque séquence comprend un numéro, un code temporel de début et de fin, et le texte à afficher à l’écran.

Un repère avant et après traduction. Seule la ligne de texte change, le fichier se synchronise donc parfaitement avec la vidéo.

Le numéro et le code temporel constituent la structure. Ils sont copiés tels quels: une séquence en entrée donne une séquence en sortie, sans fusion ni division. Ainsi, le fichier traduit se superpose parfaitement à la vidéo et reste synchronisé.

Voici la contrainte qui dicte tout le reste: le fichier ne contient qu’une seule piste textuelle. Il n’y a pas de deuxième colonne pour l’espagnol, ni d’endroit pour en ajouter une. Traduire un SRT consiste à remplacer le texte de chaque séquence, c’est précisément pour cela que les lecteurs et YouTube utilisent un fichier par langue.

Ainsi, huit langues ne représentent pas une seule tâche avec huit résultats, mais huit tâches distinctes.

Un fichier de sous-titres contient une seule langue. Huit langues correspondent donc à huit traductions distinctes des mêmes repères.

Deux axes, dont les langues ne sont qu’un seul

La plupart des utilisateurs font face aux deux situations simultanément: plusieurs vidéos et plusieurs langues. Ces deux facteurs se gèrent différemment, et savoir les distinguer permet d’éviter bien des clics.

Ce que vous avez Structure du travail Comment l’exécuter
Une vidéo, huit langues Huit fichiers, huit tâches Une tâche par langue, en boucle
Douze épisodes, une langue Douze fichiers, une tâche Regroupez-les dans un seul ZIP
Douze épisodes, huit langues Huit ZIP, huit tâches Un ZIP par langue, en boucle

C’est l’utilisation du ZIP que les gens oublient. Une série entière dans une seule langue peut être traitée via une seule archive: jusqu’à 200 fichiers, 20 Mo pour l’archive et 4 Mo par fichier, traduits en une seule passe avec une seule instruction et un seul glossaire appliqué à chaque épisode. Les fichiers de sous-titres n’ayant pas de schéma commun à respecter, des épisodes de longueurs différentes cohabitent sans problème dans la même archive.

Les langues ne se regroupent jamais ainsi. Quelle que soit la méthode choisie, le nombre de tâches correspond au nombre de langues.

La méthode via le navigateur: quand l’utiliser

Téléchargez le fichier sur la page du traducteur SRT ou dans l’application, décrivez vos attentes en une phrase, consultez le plan, validez-le et téléchargez le résultat. Répétez ensuite l’opération pour la langue suivante.

Pour une ou deux langues, c’est vraiment la méthode la plus rapide, et il n’y a aucune raison d’ouvrir un terminal. À partir de huit, cela devient huit téléchargements, huit instructions, huit plans, huit approbations et huit téléchargements, et les erreurs deviennent administratives: le fichier allemand écrase le français, une langue manque discrètement.

La voie de l’agent: un seul prompt, tout le set

Si vous travaillez déjà avec Claude, ChatGPT, Cursor ou tout autre agent IA capable d’exécuter des commandes sur votre machine, vous n’avez pas besoin d’utiliser un navigateur. Notre outil en ligne de commande se connecte une seule fois et prend un fichier directement, sehingga un agent peut traiter l’ensemble et vous laisser un dossier avec un fichier de sous-titres par langue.

Ces huit langues sont traitées soit une par une, soit envoyées à un agent via un prompt unique.

Installez-le et connectez-vous une seule fois:

npm install --global @ai-glot/cli
aiglot auth login

Cela ouvre un navigateur pour autoriser la machine. Sur un serveur sans navigateur, aiglot auth login --device active le flux de code d’appareil, et aiglot auth login --key <key> fonctionne en CI.

Le prompt à donner à votre agent

Copiez ce texte, en modifiant le chemin et la liste des langues. Il est conçu pour être confié à un agent, et non pour être exécuté par vous-même.

My English subtitles are at ~/Videos/episode-04.srt, exported from YouTube.

Translate them into Spanish, Portuguese, French, German, Italian, Japanese,
Hindi and Indonesian using the aiglot CLI. Read `aiglot batches create --help`
and `aiglot batches approve --help` first so you use the real flags, and run
`aiglot languages` to confirm each language tag before you start.

An SRT holds one language, so create ONE batch per target language, eight in
total. The source language is English: say so explicitly in every instruction
rather than letting it be inferred.

Use the lite quality tier. Add "keep every subtitle line short enough to read at
speed (42 characters or fewer is the English and Latin-script guideline, so keep
Japanese, Hindi and Indonesian lines short too) and never merge or split cues"
as the string-level instruction at approval.

Show me all eight plans and the total word count and cost BEFORE you approve
anything. Then wait for me to confirm.

After I confirm, approve them, poll until each one reaches a terminal status,
and download the results into ~/Videos/subtitles/ as episode-04.<lang>.srt
using the two-letter code for each language. Tell me if any batch failed.

Quatre éléments de ce prompt effectuent le travail réel, et ce sont les parties qu’il vaut la peine de copier dans les vôtres.

Il demande à l’agent de lire l’aide d’abord. Un agent qui devine le nom des drapeaux échoue dès le premier appel et invente ensuite une raison plausible. Lire la véritable aide, ou aiglot help --json pour tout l’arbre de commandes d’un coup, élimine totalement ce problème.

Il précise explicitement un batch par langue. Un agent qui suppose qu’une seule tâche peut gérer huit cibles rédigera une instruction que le format ne peut pas honorer, et un fichier de sous-titres censé être en japonais reviendra dans une autre langue.

Il nomme la langue source. Sans cela, le moteur déduit la source du contenu, et cette déduction est la moins fiable là où elle coûte le plus cher: lignes courtes, fichiers contenant déjà une phrase traduite isolée, et textes pleins de noms propres.

Il marque un arrêt avant la dépense. aiglot batches approve est la seule commande qui consomme des crédits. Tout ce qui précède est gratuit et répétable, donc demander de voir huit plans d’abord ne coûte rien et évite les malentendus coûteux.

Ce que l’agent exécute réellement, par langue

Quatre étapes répétées pour chaque langue. Seule la validation consomme des crédits, la lecture reste donc gratuite pour tous les plans.

Quatre commandes, répétées par langue. Sous forme de boucle shell, cela ressemble à ceci, ce qui est globalement ce que votre agent finira par faire:

# "code:Language" pairs, so the filename gets the code and the instruction
# gets the language name.
for pair in es:Spanish pt:Portuguese fr:French de:German \
            it:Italian ja:Japanese hi:Hindi id:Indonesian; do
  code=${pair%%:*}
  lang=${pair#*:}

  id=$(aiglot batches create ~/Videos/episode-04.srt \
        --instruction "The source language is English. Translate the text of every cue into ${lang}. Leave cue numbers and timecodes exactly as they are." \
        --json | jq -r '.data.id')

  # Read the plan for free, and only then commit.
  aiglot batches get "$id" --json | jq '.data.plan'

  aiglot batches approve "$id" --quality lite --yes \
    --instructions "Keep every subtitle line short enough to read at speed: about 42 characters or fewer for English and Latin-script languages, and short in every other language too. Never merge or split cues."

  # Wait for a TERMINAL status, not for a specific one.
  until status=$(aiglot batches get "$id" --json | jq -r '.data.status'); \
    [ "$status" = "completed" ] || [ "$status" = "failed" ] || [ "$status" = "cancelled" ]; do
    sleep 5
  done

  [ "$status" = "completed" ] && \
    aiglot batches download "$id" --output ~/Videos/subtitles/episode-04.${code}.srt
done

Un détail ici vaut la peine d’être retenu, même si vous ne traduisez jamais de sous-titres. La boucle attend n’importe quel statut du terminal plutôt que de guetter completed. Un script qui attend uniquement le statut espéré attendra indéfiniment en cas d’échec, car une comparaison avec une valeur qui n’arrive jamais n’est pas une erreur. C’est juste toujours faux.

Il existe également un serveur MCP, aiglot mcp, si votre agent préfère les outils au shell. Le CLI est le meilleur point de départ: il fonctionne dans un script, il fonctionne en CI, et vous pouvez lire exactement ce qui a été exécuté.

Les deux instructions que l’on confond

Cette distinction est la seule chose dans tout ce flux de travail qui échoue silencieusement, elle mérite donc trente secondes d’attention.

L’instruction du plan décide de ce qui est traduit. Elle est lue une seule fois, selon la structure du fichier, et c’est là que la langue cible doit être spécifiée. “Traduisez le texte de chaque cue en allemand.”

Les instructions au niveau des chaînes sont appliquées pendant l’écriture de chaque ligne. Le moteur voit une ligne de sous-titres à la fois, elles ne peuvent donc décrire que des éléments visibles à l’intérieur d’une ligne. La longueur de la ligne, le ton, un nom qui ne doit pas être touché.

Une règle de longueur de ligne ajoutée au plan ne sert à rien, et une instruction telle que “traduisez uniquement la seconde moitié du fichier” insérée au niveau des chaînes est totalement inutile, car aucun fichier n’est visible à ce stade. Aucune erreur n’est générée. Vous obtenez simplement un résultat qui ignore vos consignes.

Maintenir l’uniformité des noms sur toute une série

Huit langues multipliées par douze épisodes, cela fait quatre-vingt-seize fichiers. Le problème n’est pas la grammaire, mais le fait que votre produit s’appelle d’une façon dans l’épisode deux et d’une autre dans l’épisode neuf.

Un glossaire fixe les termes qui ne doivent pas varier et applique la même décision à chaque fichier.

Intégrez une seule fois les termes qui ne doivent pas varier dans un glossaire : noms de produits, noms de personnages, ou la traduction officielle d’une phrase que vous répétez dans chaque introduction. Cela s’appliquera alors à chaque fichier et chaque langue, y compris pour l’épisode que vous publierez le mois prochain.

C’est là qu’un traducteur automatique classique échoue, pour une raison mécanique. Son glossaire remplace un terme dès qu’il correspond, sans reconsidérer la phrase autour de la substitution. Ici, le glossaire est intégré au sens pendant la rédaction de la ligne, sehingga le terme s’accorde naturellement avec la phrase au lieu d’être simplement parachuté au milieu.

Téléchargement des fichiers sur YouTube

Dans Studio, ajoutez une langue à la vidéo, puis téléversez le fichier correspondant. Commencez par la première vidéo, regardez-en trente secondes avec la piste activée et vérifiez deux choses : les longues lignes ne doivent pas former un bloc de texte, et le minutage doit rester adapté quand la traduction est plus longue. Selon la combinaison de langues, un texte traduit est souvent plus long que l’anglais. L’article du W3C sur la longueur des textes traduits montre à quel point cet allongement varie en fonction de la langue et de la longueur du texte. C’est précisément ce que la consigne sur la longueur des lignes vous aide à gérer.

Téléchargez ensuite le reste.

Ce que cela vous apporte concrètement

Deux éléments distincts, qu’il convient de séparer, car les preuves pour chacun sont différentes.

La découvrabilité, raison d’être de la traduction

Celle-ci provient directement de YouTube. “En moyenne, plus des deux tiers du temps de visionnage de l’audience d’un créateur proviennent de l’extérieur de sa région d’origine.” C’est le chiffre officiel de YouTube, publié sur sa propre page d’outils de traduction, et c’est la donnée la plus utile de cet article : la majeure partie de votre audience se trouve déjà ailleurs.

Le mécanisme est expliqué sur la même page. Les titres et descriptions traduits peuvent apparaître dans les résultats de recherche YouTube pour les utilisateurs parlant ces langues, et un utilisateur effectuant une recherche dans sa propre langue peut trouver et regarder toute vidéo disposant de sous-titres lisibles. Une vidéo avec une seule piste anglaise est découvrable dans une seule langue. Une vidéo avec neuf pistes l’est dans neuf langues.

Traduisez donc également le titre et la description, pas seulement les sous-titres. Ce sont eux qui constituent le résultat de recherche, et ils ne représentent que trois lignes de texte face à une heure de parole.

L’accessibilité, raison d’être du sous-titrage

Les sous-titres ne sont pas un simple plus pour un grand nombre de personnes. L’Organisation mondiale de la Santé estime que près de 2.5 milliards de personnes, soit 1 personne sur 4, souffriront d’une perte auditive à des degrés divers d’ici 2050. Les recommandations du W3C sur les sous-titres les définissent comme la transcription des paroles et des sons pour les personnes sourdes ou malentendantes, tandis que les sous-titres traduisent les paroles dans une autre langue. Les sous-titres destinés aux personnes sourdes ou malentendantes sont donc la fonctionnalité d’accessibilité ; les sous-titres traduits n’y contribuent qu’indirectement.

Et il y a aussi toutes les personnes qui entendent parfaitement, mais préfèrent lire. Dans un sondage YouGov mené auprès de 1,000 adultes américains du 29 June au 5 July 2023, 63% des moins de 30 ans ont déclaré préférer regarder la télévision avec les sous-titres activés, même lorsqu’ils comprennent la langue. Cette préférence augmente à mesure que l’âge diminue, et c’est le groupe le plus jeune qui en souhaite le plus.

Et certaines personnes regardent les vidéos sans le son. Dans une étude menée par Verizon Media et Publicis Media en April 2019 auprès de 5,616 adultes américains âgés de 18 à 54 ans (citée dans l’article de 3Play Media), 80% ont déclaré qu’ils étaient plus susceptibles de regarder une vidéo jusqu’au bout si elle proposait des sous-titres. La moitié des participants ont convenu que les sous-titres étaient importants et indiqué qu’ils regardaient généralement les vidéos sans le son.

Soyez précis sur ce que prouvent ces deux derniers chiffres, car il est facile de les extrapoler. Ils mesurent l’usage des sous-titres dans une langue que le spectateur parle déjà, ils justifient donc la présence d’une piste de sous-titres en général, mais ne prouvent pas qu’une piste japonaise vous apporte des spectateurs japonais. C’est le chiffre de YouTube cité plus haut qui concerne la traduction. Ensemble, ils démontrent simplement qu’une piste textuelle capte l’attention, et qu’une piste dans la langue maternelle de quelqu’un capte l’attention sur un marché où vous n’apparaissez pas actuellement.

Deux autres chiffres à garder en tête, issus de recherches sur les achats plutôt que sur le visionnage : en 2020, CSA Research a interrogé 8,709 consommateurs dans 29 pays et constaté que 76% des acheteurs en ligne préfèrent acheter des produits dont les informations sont dans leur langue, et que 40% n’achèteront jamais sur un site dans une autre langue. Si vos vidéos servent à vendre, le même constat s’applique au moment du paiement.

Et la traduction automatique de YouTube ?

YouTube peut traduire automatiquement une piste de sous-titres pour le spectateur, directement dans le lecteur. C’est gratuit et c’est une solution de repli acceptable pour toutes les langues secondaires que vous ne publierez jamais correctement.

Ce n’est pas à vous non plus. La traduction est générée par le lecteur : vous ne choisissez pas la formulation et aucun fichier ne vous permet de la vérifier ou de la réutiliser. Avec une piste importée, c’est tout le contraire : elle apparaît dans le menu des sous-titres de votre vidéo, elle dit exactement ce que vous avez décidé de dire et le même fichier fonctionne sur toutes les autres plateformes où vous publiez cette vidéo.

Utilisez la traduction automatique pour les langues dans lesquelles vous n’investissez pas. Importez de vraies pistes pour celles que vous privilégiez.

La portée réelle de l’outil

Pour une seule vidéo courte dans une seule langue, une personne parlant cette langue fera un meilleur travail que n’importe quel outil, et c’est elle que vous devriez solliciter.

Pour huit langues sur l’ensemble d’un catalogue, la gestion des fichiers représente la majeure partie de la charge, et ce n’est pas du travail linguistique. Passez le gros du volume par AI Glot, puis concentrez la révision là où elle apporte une réelle valeur : les langues les plus importantes pour votre audience et les vidéos qui vendent réellement. De nombreuses équipes l’utilisent pour un premier passage avant qu’un locuteur natif ne relise le résultat, ce qui est une excellente utilisation d’un expert et une bien meilleure option que de passer un après-midi à renommer des fichiers.

Si vous voulez l’essayer sur un seul épisode avant de vous lancer dans une série, le traducteur de sous-titres accepte un fichier sans compte. Ensuite, créez un compte gratuit quand vous serez prêt à traiter l’ensemble.


Les informations sur YouTube figurant sur cette page ont été vérifiées pour la dernière fois le 2026-09-29. Les limites indiquées ici sont celles en vigueur au moment de la rédaction : 4 MB par fichier de sous-titres (8 MB pour TTML) et, pour une archive de fichiers de sous-titres, 200 fichiers et 20 MB. Le nombre de mots, le nombre de repères et les coûts sont toujours calculés à partir du plan correspondant à votre propre fichier, que vous pouvez générer et corriger gratuitement.

Prêt à traduire vos fichiers volumineux ?

Créer un compte gratuit →

Prompt copié

  1. 1Ouvrez votre agent IA
  2. 2Collez le promptCtrl V
  3. 3Suivez ses instructions
Afficher le prompt

Traduis un fichier pour moi avec AI Glot. Demande-moi quel fichier et quelles langues, puis suis https://ai-glot.com/agent.md

Vos 5 000 premiers mots offerts