Sous-titres en direct : support par plateforme
Périmètre — Sous-titres sur flux live poussé depuis un encodeur (RTMP/RTMPS, SRT, HLS ingest). Le cas du VOD posté après coup est signalé séparément quand il diffère.
Dernière vérification — 3 septembre 2026. Les plateformes sociales font évoluer ces mécanismes sans préavis : revalider avant tout engagement client.
1. Les quatre mécanismes possibles
Avant le tableau par plateforme, il faut distinguer les voies de transport, parce que « supporter les sous-titres » ne veut pas dire la même chose selon la plateforme.
| Mécanisme | Description | Transport |
|---|---|---|
| In-band SEI | CEA-608 / CEA-708 encodés dans le flux vidéo élémentaire H.264, dans le user_data SEI (ATSC A/53 ou A/72). Standard historique broadcast. | RTMP, SRT/TS, HLS ingest |
| Tag script RTMP | onCaptionInfo, tag script AMF0 transportant une matrice ECMA. Format courant chez les encodeurs et media servers internet. |
RTMP uniquement |
| Canal hors bande | URL d'ingestion HTTP dédiée, alimentée en parallèle du flux vidéo. | HTTP, hors du flux |
| Burn-in (open captions) | Texte incrusté dans l'image. Fonctionne partout, non désactivable par le spectateur, invisible pour les lecteurs d'écran. | Tous |
À quoi s'ajoute l'ASR plateforme : auto-captions générés côté plateforme depuis la piste audio. Ne demande rien à l'encodeur, mais on ne le contrôle pas.
2. Tableau de synthèse
| Plateforme | In-band 608/708 | onCaptionInfo | Canal dédié | ASR plateforme | Multi-langue live |
|---|---|---|---|---|---|
| YouTube Live | Oui | Non documenté | Oui, URL signée | Oui | Non, une piste |
| LinkedIn Live | Oui (pass-through) | Non documenté | Non | Oui, anglais seul | Non |
| Facebook Live | Oui, via Live API | Non documenté | Non | À vérifier | Non documenté |
| Twitch | Oui (ATSC A/72) | Oui | Non | Non | Non documenté |
| X / Twitter | Non documenté | Non documenté | Non | Non | — |
| Instagram Live | Non applicable | — | — | Oui | Non |
3. YouTube Live
In-band
Dans les réglages d'encodeur, choisir les sous-titres EIA-608 / CEA-708, parfois appelés « embedded ». Selon le setup, ils sont lus depuis un format de fichier ou encodés en temps réel.
Limitation importante : le standard 608/708 supporte jusqu'à quatre pistes de langue, mais YouTube n'en prend en charge qu'une seule.
Canal dédié
En bas de l'onglet Setup des paramètres, une section Closed Caption permet d'activer les sous-titres et d'exposer une Captions Ingestion URL, qui est une URL HTTP signée. Chaque point d'entrée de flux ne peut avoir qu'un seul feed de sous-titres.
C'est la voie utilisée par les logiciels de sténotypie et les prestataires CART (Eclipse/AccuCap, Case CATalyst BCS, CaptionMaker, etc.).
Contrainte de délai
Avec les logiciels supportés, ajouter un délai de diffusion de 30 ou 60 secondes dans l'onglet Advanced settings avant l'événement.
HLS ingest
Les sous-titres embarqués passent dans le conteneur M2TS comme n'importe quel flux TS. Voie à privilégier si on est déjà en HLS ingest pour du HEVC ou du HDR.
4. LinkedIn Live
Deux sources, avec priorité
Le sous-titrage peut venir soit du pass-through closed captioning, soit des auto-captions, ces derniers étant uniquement en anglais. Si les deux sont disponibles sur un même flux, le lecteur n'affiche que les auto-captions. Le bouton CC apparaît en bas à droite du lecteur.
Point de scéno à ne pas rater
Les sous-titres sont toujours affichés en bas de l'écran, et LinkedIn demande explicitement de ne placer aucun titrage, bandeau ou sticker en bas de l'image pour éviter le chevauchement.
→ À intégrer dans les gabarits de lower-thirds dès la conception graphique.
Périmètre de l'ASR
L'auto-captioning LinkedIn Live a été lancé via l'API, avec une technologie Microsoft, pour les diffuseurs passant par les partenaires API (Restream, StreamYard, Switcher, Socialive), en anglais uniquement.
Conséquence pour les clients francophones : l'ASR LinkedIn ne couvre pas le français. Pour du sous-titrage FR sur LinkedIn Live, il faut passer par du pass-through 608 injecté en amont par un prestataire, ou par du burn-in.
VOD LinkedIn (hors live)
Ajout de sous-titres avec un fichier SRT attaché à la vidéo avant publication, depuis le desktop uniquement, pour les comptes personnels comme pour les Pages. Les auto-captions à l'upload sont réservés aux vidéos en anglais, avec une option de relecture avant publication.
5. Facebook Live
Le support repose sur les sous-titres CEA-608 injectés dans le flux, pour les éditeurs utilisant la Live API, éventuellement via un prestataire tiers qui les insère en temps réel.
Au lancement, Facebook ne proposait pas de sous-titrage automatique pour le live, contrairement aux vidéos de Page enregistrées. Seuls les éditeurs passant par la Live API et générant du CEA-608 pouvaient ajouter des sous-titres.
⚠️ Ces éléments sont anciens et l'API Meta a beaucoup bougé depuis. À revalider dans la doc développeur Meta avant tout engagement client.
6. Twitch
Twitch documente plusieurs méthodes de transmission, dont deux clairement identifiées :
- CEA-708/EIA-608 embarqués dans le flux vidéo élémentaire, comme décrit dans ATSC A/72 (SEI user_data). Format courant des encodeurs broadcast.
- CEA-708/EIA-608 transmis via un tag script/AMF0 RTMP
onCaptionInfo, format le plus répandu chez les encodeurs internet et media servers, dont Elemental et Wowza. Le payload doit contenir une matrice ECMA avec deux paires d'éléments :- une chaîne nommée
typecontenant les caractères708 - une chaîne nommée
datacontenant le payload CEA-708/EIA-608 encodé en base64
- une chaîne nommée
En pratique, l'écosystème Twitch grand public passe surtout par des extensions d'overlay installables depuis le dashboard, activables en panel, composant ou overlay. Ce n'est pas une piste CC dans le lecteur, c'est une surcouche.
7. X / Twitter et Instagram Live
X — Aucun mécanisme d'ingestion de sous-titres live documenté. Burn-in ou rien.
Instagram Live — Pas de chaîne d'ingestion tierce pertinente : l'ASR plateforme est la seule voie, et il n'y a pas de piste CC contrôlable depuis l'encodeur.
8. Règles opérationnelles à retenir
Le multilingue live ne passe pas par 608
Le standard offre quatre canaux, mais YouTube n'en lit qu'un et LinkedIn ne fait de l'ASR qu'en anglais. Pour un événement multilingue, les trois options réalistes sont :
- un flux et un événement par langue
- du burn-in par langue
- une application de sous-titres déportée, hors du lecteur
Le 608 est un tunnel étroit
Positionnement, casse et polices sont figés, sans personnalisation possible.
Le passthrough se casse silencieusement
OBS ne fait pas passer les 608 embarqués dans une source média : le passthrough de flux média n'est pas dans le périmètre des développeurs. Toute chaîne avec un mixeur logiciel au milieu doit être testée bout en bout, jamais supposée.
Toujours répéter en unlisted
Le sous-titrage est la fonction la plus fragile de la chaîne : elle dépend de l'encodeur, du transcodeur, du transport et du lecteur, et elle échoue sans alarme.
Prestataires à connaître
Pour industrialiser : SyncWords, AI-Media, EEG/Falcon, 3Play, Verbit, StreamText, Videolinq. Tous parlent 608, la plupart s'insèrent en relais RTMP(S) ou SRT sans matériel dédié.
Sources
| Sujet | Référence |
|---|---|
| YouTube — prérequis sous-titres live | support.google.com/youtube/answer/3068031 |
| YouTube — HLS ingest | support.google.com/youtube/answer/10349430 |
| YouTube — comparaison protocoles d'ingest | developers.google.com/youtube/v3/live/guides/ingestion-protocol-comparison |
| LinkedIn — côté spectateur | linkedin.com/help/linkedin/answer/a554237 |
| LinkedIn — côté diffuseur | linkedin.com/help/linkedin/answer/a569473 |
| LinkedIn — sous-titres VOD (SRT) | linkedin.com/help/linkedin/answer/a552177 |
| LinkedIn — auto-captions à l'upload | linkedin.com/help/linkedin/answer/a1327025 |
| Twitch — méthodes de transport | doc Twitch sous-titres / ATSC A/72, onCaptionInfo |
| Facebook Live — CEA-608 via Live API | annonce 2017, à revalider dans la doc Meta |