Les sous-titres faciles d’Universal Subtitles

Framatube, comme les lecteurs assidus de ce blog le savent déjà, est une initiative lancée il y a environ deux ans, dans le but de regrouper des vidéos en rapport avec le logiciel libre et sa culture, pour en favoriser la diffusion.

Framatube s’appuie pour cela aujourd’hui sur la plateforme Blip.tv et, pas de mystère, sur le travail de bénévoles chargés de produire des sous-titres lorsque la vidéo est dans une langue étrangère, l’équipe Framalang entrant alors dans la danse [1].

Dans ce dernier cas, le travail nécessaire pour proposer la vidéo sous-titrée va au delà de la simple traduction : il faut préalablement transcrire la bande-son pour la traduire, puis synchroniser les sous-titres obtenus avec la bande-son, incruster les sous-titres et finalement encoder le tout dans un format libre. Cela demande un travail important, qui nécessite une motivation de longue haleine et plus de travail que les habituelles 6 ou 7 heures par traduction d’article publiée sur le Framablog.

D’autant que, les sous-titres étant au final incrustés dans la vidéo, tout ce travail ne peut être réutilisé pour proposer de nouvelles traductions dans d’autres langues.

Pour prendre l’analogie du logiciel, le code source qui pourrait permettre d’améliorer ou de modifier facilement le résultat n’est pas fourni : paradoxal pour un projet Framasoft !

Heureusement, la Participation Culture Foundation (fondation à but non lucratif à laquelle on doit notamment le logiciel de télévision par Internet Miro) développe « Universal Subtitles » un outil en-ligne qui simplifie grandement la tâche.

Ce projet se place sous le parrainage de la Mozilla Foundation, autre fondation à but non lucratif à qui l’on doit le fameux navigateur web Firefox et qui a initié le projet Mozilla Drumbeat pour promouvoir des initiatives comme celle-ci, visant à garder le Web Ouvert.

L’objectif d’Universal Subtitles est pour le moins ambitieux, offrir à chaque vidéo disponible sur le web un support de sous-titrage collaboratif, où chacun puisse participer au sous-titrage dans sa langue d’une vidéo rencontrée sur le web.

La solution retenue est habile puisqu’elle consiste, à partir d’une vidéo préexistante sur le Web :

à proposer des outils permettant de réaliser un sous-titrage de manière communautaire dont les données sont hébergées sur les serveurs du projet,

à générer un simple bout de code mélangeant JavaScript et HTML5 à ajouter sur son site pour afficher un lecteur vidéo personnalisé pour afficher les sous-titres à la volée en surimpression de la vidéo.

Les avantages sont nombreux :

en associant la transcription et ses traductions aux vidéos, il devient possible d’indexer, analyser et traduire l’information contenue dans ces vidéos de façon automatique (les vidéos pourront être indexées par les moteurs de recherche aussi finement que les textes) ;

le travail manuel de sous-titrage se trouve facilité et le résultat peut à tout moment être modifié, complété et amélioré par la communauté ;

tout cela contribuant à généraliser le sous-titrage et la traduction des vidéos, bénéficiant au plus grand nombre d’une part et augmentant d’autant l’accessibilité de ce support de communication. Les personnes atteintes de handicaps visuels ou auditifs pouvant à nouveau (comme aux débuts du web) bénéficier de versions textes lisibles à son rythme ou par un vocalisateur.

Et puis, cela promet de belles batailles concernant les sous-titres communautaires de clips musicaux…

Yostral, l’un des piliers de Framalang, a testé le système et publié un journal sur LinuxFr.org que nous reproduisons ici avec son aimable autorisation :

Je viens de tester le site UniversalSubtitles.org, qui se veut le « Wikipédia des sous-titres ».

Le but est simple : faciliter le sous-titrage dans n’importe-quelle langue de n’importe-quelle vidéo se trouvant sur le web.

Voyant les problèmes que nous avons à Framalang pour être efficace en sous-titrage vidéo, chacun faisant une étape dans son coin, sauf la traduction qui se fait sur wiki, pas adapté à ça, j’ai donc fait un petit test sur une simple vidéo, en français, pour voir les possibilité de travail collaboratif de traduction et de sous-titrage.

La première étape consiste bien sûr à « importer » une vidéo. En fait on travaille directement sur une vidéo déjà en ligne. Donc pas d’upload sur le site, pas de transcodage, rien. Il suffit simplement de donner l’adresse de la vidéo souhaitée. Pour le moment, les format supportés sont Ogg, WebM, FLV et donc les sites Youtube et Blip.TV (Dailymotion et Vimeo sont en cours).

Cette vidéo apparaît ensuite dans leur « Widget » de traduction. Une page je suppose remplie de HTML5 et de javascript, qui offre une interface relativement conviviale, claire et avec des raccourcis clavier. C’est succinct, mais suffisant pour faire ce qu’on lui demande. C’est donc ici que se déroule la première des trois étapes qui mènent au sous-titrage original de la vidéo : taper les sous-titres correspondant à la vidéo. Pour ceux qui ont 42 doigts, pas de soucis, vous laissez filer la vidéo et vous entrez le texte en temps réel… pour les autres, on peut toujours faire des pauses et naviguer avant/arrière tout simplement.

La seconde étape est la synchronisation du texte que vous avez tapé précédemment. Là, la vidéo défile et on doit appuyer sur une touche à chaque fois que l’on veut que le sous-titrage passe à la ligne suivante. Ici, faut être concentré ! Bien sûr, on peut mettre en pause, revenir en arrière, mais le mieux est de faire défiler et synchroniser au fur et à mesure. Faisable, mais pas évident, surtout sur la longueur.

La troisième étape est le peaufinage, où on peut ajuster les sous-titres plus précisément. Si on s’est un peu endormi à l’étape précédente, c’est ici qu’on se réveille.

Au final on nous donne un lien permanent vers la vidéo et ses sous-titres, ainsi qu’un bout de code pour l’intégration dans une page web. La vidéo est toujours la même au même endroit et seuls les sous-titres, qu’on peut se télécharger en .srt, sont sur le site d’UniversalSubtitles.org.

À partir de cette page, on peut rajouter simplement des sous-titres dans d’autres langues, calés sur la VO. Ça veut dire qu’une fois la transcription faite et synchronisée, en anglais ou autre, la traduction en français est vraiment simplifiée : on a juste à la rentrer dans les cases en dessous de chaque ligne de sous-titres de la langue originale. On peut bien sûr la stopper puis la reprendre plus tard. On voit également sur cette page les langues disponibles liées à la vidéo et l’avancement des traductions.

Bref, c’est vraiment du sous-titrage collaboratif. Les outils sont minimalistes mais efficaces. On peut tout ré-éditer, sauvegarder, exporter. Et on peut même uploader un fichier .srt, pour ceux qui ont plus souvent l’occasion de traduire hors ligne plutôt que connectés à Internet.

Comme je l’ai déjà dit, les outils sont, pour le moment en tout cas, assez minimalistes. Par exemple on ne peut pas régler les sous-titres : la police, la couleur, l’emplacement… limitation du HTML5 ou pas encore implanté dans ce programme ? On verra. Mais ça risque de poser parfois des gros problèmes de visibilité des sous-titres. Il m’est arrivé à plusieurs reprises, sur les vidéos qu’on a placées sur Framatube, de devoir rajouter une bande noire en-bas, ou les placer en haut, pour pouvoir lire convenablement les sous-titres pour des raisons de contraste avec le fond, qui peut varier…

Un autre bémol, c’est qu’il faut s’enregistrer : il faut soit un compte Twitter, soit un compte OpenID, soit un compte Google… En fait ça ne crée pas de compte à proprement parler, mais se sert de l’existant, ce qui est vraiment un moindre mal.

En tout cas c’est un bel outil qui va nous rendre bien des services pour nos sous-titrages.

Test fait avec une vidéo de Fred Couchet, de l’April, vidéo hébergée sur Blip.tv : http://universalsubtitles.org/videos/JFyBckvaWyCE/fr/

Notes
[1] Le Framablog de Framasoft, qui publie les travaux des projets Framatube et Framalang, tout cela n’est pas sans rappeler un certain Batman, avec sa Batmobile garée dans sa Batcave… Mais nous nous éloignons déjà du sujet.