5160 sujets

Le Bar du forum

Pages :
Bonjour,

Rodolphe a écrit un article https://www.alsacreations.com/article/lire/1878-Le-sous-titrage-video-avec-WebVTT.html Cet article a relancé mon envie de m'y frotter, j'avais en effet renoncé devant la complexité de la chose.

Il s'avère que si c'est beau sur le papier, dans la réalité, ce n'est pas aussi simple. Si on opte pour la solution manuelle préconisée dans l'article, et pour une vidéo un peu longue, le travail est conséquent. Ce n'est rien d'installer la balise track en dessous de la balise video html 5. Ce n'est rien nom plus de faire un simple fichier texte et de lui donner l'extension .vtt. Par contre, écrire le texte de la vidéo dans ce fichier en face des bons minutages, régler ces minutages en fonction du déroulé de la vidéo tout en veillant à ne pas surcharger la page de traduction, c'est autre chose. Ce n'est pas difficile techniquement, mais c'est très fastidieux.

J'ai testé, en version gratuite, le logiciel d'automation des sous-titrages vidéos https://my.checksub.com/ C'est une grosse déception. Si les textes audio ne sont pas de bonne qualité, la traduction fera n'importe quoi - fautes, inversion de textes. Et la version gratuite ne permet de sous titrer qu'une vidéo de 5 minutes. Je ne suis pas allé vers la version payante. Il faut noter que ma vidéo était une conférence, et que les paroles du conférencier devaient être synchronisées avec le texte des sous-titres. Pour un texte d'illustration sans synchro, ce serait plus facile.

Il existe en open source http://gnomesubtitles.org/ Le travail de minutage est facilité, la vidéo se déroule en temps réel, et il existe beaucoup d'options pour les titres. C'est quand même fastidieux, il faut toujours entrer à la main et corriger le timing. On peut importer un fichier de sous-titres, mais il devra être réalisé avant, et très certainement adapté au minutage de la vidéo.
Des idées, sur un logiciel open source ou pas cher qui le ferait en automatique ? Parce qu'on a quand même autre chose à faire qu'à entrer du texte à la main sur des minutages.
Administrateur
Merci pour ce partage d'informations et de tests.

En effet la rédaction prend du temps. C'est largement faisable "de temps en temps" pour une durée courte, mettons 1 minute de vidéo. C'est plus contraignant lorsque c'est régulier ou pour une durée longue.

En automatique (avec reconnaissance vocale ?), cela nécessite forcément des ressources donc bien souvent payant et/ou propriétaire, je ne pense pas qu'on puisse trouver de solution gratuite magique.

Il y a aussi Aegisub qui se rapproche de ce que propose Gnomesubtitles, ensuite il "suffit" de convertir le format.
J'ai moi aussi lu l'article et c'est super intéressant.

Mais si la technique existe on n'est pas pour autant obligé de l'exploiter, selon la destination de la vidéo le jeu n'en vaut pas forcément la chandelle.

Il faut le voir comme une solution qui a le mérite d'exister.
La technique existe et j'ai justement besoin de l'exploiter, c'est pourquoi je me suis penché dessus.
Comme le dit Rodolphe, pour une vidéo d'une minute ou deux, c'est jouable à la main.
Ma vidéo dure 13 minutes, en plus il s'agit d'une conférence, le texte qui s'affiche doit être à peu près avec les paroles de l'orateur si on veut rester cohérent. Pour un texte d'illustration ne collant pas juste à l'image, c'est parfaitement jouable.
Il n'est pas superflu d'ajouter dans le fichier htaccess ceci :
AddType text/vtt .vtt

Et avec les anciennes versions de Firefox (je n'ai plus le numéro exact), il fallait aller dans about:config pour activer les sous-titrages, mais je crois que ce sont des versions très anciennes.
Le sujet mérite qu'on se penche sur lui, la majorité des médias qui diffusent de courtes vidéos d'information ajoutent des sous-titrages. Et du texte qui s'affiche pas forcément en synchro avec les paroles. Et il n'y a pas que les médias d'information qui le font, les textes scientifiques aussi.
Il faut croire que ça apporte un plus à une vidéo.
Hello,

Les sous-titres sont presque indispensables pour les personnes malentendantes comme moi. Pour les autres, je pense que l’intérêt réside simplement dans le fait de pouvoir regarder la vidéo sans le son et de comprendre malgré tout ce qui y est dit. C’est utile pour tous ceux qui trimbalent pas des écouteurs dans le bus / train / métro par exemple.

Dans tous les cas, c’est un must-have selon moi Smiley smile
Salut,

exact, et c'est pourquoi je me penche sérieusement sur cette technologie. Malgré le travail un peu fastidieux, je mets en place les sous titres pour une vidéo de 13 minutes. Quand on regarde sur le net, on constate aussi que les sous-titres ne sont pas toujours exactement posés sur les lèvres de l'orateur. Un décalage ne pose pas de problème, tant qu'il ne coure pas sur plusieurs plages différentes de la vidéo.
Ce qu'on remarque aussi dans certains médias de grande diffusion, c'est une vidéo, une musique en accompagnement et des sous-titres seuls, sans le son des paroles. C'est bien pratique si on ne supporte pas la musique qui joue sur la vidéo.
Je crois que la bonne technique pour remplir à la main un fichier vtt, c'est d'installer un grand nombre de lignes de temps dans le fichier vtt :
00:00:00.000 --> 00:00:04.000
- Je parle sur cette vidéo

Ensuite de remplir un peu approximativement de texte les lignes de temps. Après, avec Gnome-Subtitles par exemple et la vidéo qui joue en temps réel, on ajuste en enlevant ou ajoutant du texte sur les lignes de temps.
Merci,
depuis, j'ai terminé ma vidéo et ses sous-titres mais j'ai trouvé des logiciels bien plus conviviaux, notamment en ligne. Je parle des logiciels Open Source ou gratuits en ligne. Parce que pour avoir une reconnaissance automatique du texte et son placement sur la vidéo, il faut passer à des solutions professionnelles très chères (parfois 2000 €).
Quand tout sera couché sur la papier, je vais publier de nouveau sur le forum, afin de donner des informations plus précises.
Par exemple ce que je préconise plus haut n'est pas à faire, il faut construire le fichier ligne par ligne.
À bientôt.
Et ben... après avoir quasiment dit plus haut que les sous-titres ne servaient à rien... me voici à les implémenter dans mon player. Je me suis souvenu de ce topic qui, à la relecture, m'a orienté tout de suite dans la bonne direction. Merci pour les différentes ressources évoquées ici.

En relisant j'ai trouvé cet argument particulièrement pertinent :
Anymah a écrit :
... Pour les autres, je pense que l’intérêt réside simplement dans le fait de pouvoir regarder la vidéo sans le son et de comprendre malgré tout ce qui y est dit.

... et me suis vaguement souvenu qu'environ 40% des gens (au moins) regardent Youtube en "mute".
C'est bon, c'est implémenté.

Mais dites donc, heureusement qu'il y a Mozilla MDN Web Docs, parce que la documentation par ailleurs c'est pas terrible, même sur StackOverflow. On a vraiment l'impression de travailler en terra incognita...
Salut Olivier,

je ne comprends pas pourquoi tu parles "d'implanter" les sous-titres dans ton player. Normalement, en html5, il suffit juste d'ajouter la balise track dans la balise vidéo, non ?
Ou alors tu dis simplement que tu as mis des sous-titres sur tes vidéos. Et tu parles de quelle documentation, de celle concernant l'implantation de cette balise et des fichiers vtt, ou de la mise en place des sous-titres.
Bonjour Bongota,

Alors, oui et non : les sous-titres sont bien présents, mais ils ne sont plus accessibles via la commande du menu par défaut. Il faut donc la recréer. Du coup c'est ce que j'ai fait. Sur ma page de démonstration principale, toujours la même, tu as une vidéo de 14 minutes qui implémente cette fonctionnalité avec cinq langues au choix.

Je dois encore corriger un bug car mon code écrase un comportement par du HTML, dans le cas ou un sous-titre est choisi par défaut par exemple. Je corrigerais cela ce soir si j'ai le temps.
Modifié par Olivier C (22 May 2023 - 10:37)
Je croyais que c'était le navigateur qui implémentait toutes ces fonctions (langues, choix des sous-titre ou pas).
En ce qui me concerne, je n'ai rien fait et les sous-titres fonctionnent, y compris avec les mobiles. J'ai besoin de comprendre ça, tu n'as pas implémenté cette fonction pour rien.
Parce que les cinq langues, elles sont en traduction automatique je suppose ?
Il faut bien comprendre que , à partir du moment où tu renonces aux commandes du player par défaut pour créer ton propre player personnalisé, tu dois recréer toutes les commandes. C'est donc ce que j'ai fait.

Pour les traductions, il s'agit d'une vidéo de démonstration de Blender. Je me suis contenté de convertir leurs fichiers SRP en VTT.
J'aimerais bien voir comment ta développeuse a implémentée son truc... Tu as une page de démo ? Ta conférence par exemple ?

Édit : je suis allé voir son code, la fonction n'est pas implémentée. Tu est sûr que tu ne met pas une balise <track> que tu force à la lecture avec l'attribut "default" par hasard ?
Modifié par Olivier C (22 May 2023 - 14:45)
La développeuse, c'est moi Smiley cligne
C'est une site que j'ai fait pour un marabout (on dit maintenant tradipraticien) ivoirien.
J'ai mis des sous-titres sur la première vidéo, la seconde vient de Tik Tok, je n'ai rien fait dessus si ce n'est de la placer sur le site.
J'ai tout fait à la main, c'est fastidieux pour une vidéo de 13 minutes. La prochaine fois, je m'y prendrai autrement. Il y a des logiciels gratuits conviviaux qui améliorent considérablement le travail des sous-titres.
Le site : https://mamoutou-tradipraticien.fr
Il y aurait à revoir quelques placements des titres, mais je respire un peu pour le moment par rapport à ça. J'ai aussi respecté le Français assez moyen de Mamoutou qui parle sur la vidéo. Elle sera lue principalement par des gens un peu de son niveau en français. Et c'est mal filmé, avec mon mobile. Heureusement, parce que le garçon qui a filmé avec ma caméra pro a complètement raté le film.
Oui, j'ai mis "défault" :
<video controls="controls" data-volume="1" preload="none" poster="Images/Mamoutou-Conf-1024.png" width="480" height="460">
  <source src="https://mesvideos.b-cdn.net/Mamoutou-Parle-720.m4v" type="video/mp4">
    <track default src="sous-titres.vtt" srclang="fr" label="Français">

Pierre.
Modifié par Bongota (22 May 2023 - 15:01)
Oui voilà, c'est le comportement par défaut du HTML, et c'est bien de le garder bien sûr.

Mais la développeuse de Dragon play - à savoir Marine Latour - n'a pas prévu de bouton sélection/désélection/changement de langue, comme sur les players par défaut. C'est de cela dont je parlais et que l'on peut éventuellement réimplémenter en JS avec sa touche perso.

Pour le site de ton guérisseur, tu utilises le player par défaut, la question ne se pose donc pas pour ce site...

Pour donner un idée du code voici un exemple partiel de ce que ça donne pour un player personnalisé :
const subtitles = (tracks, index, output) => {
  // @see  https://developer.mozilla.org/en-US/docs/Web/API/TextTrack
 
  if (tracks[index -1]) tracks[index -1].mode = 'disabled'
  tracks[index].mode = 'showing'
  output.value = tracks[index].language
}

Modifié par Olivier C (22 May 2023 - 15:25)
Je comprends pour la "développeuse" dont tu parlais !!!
Je viens de vérifier, Firefox 68.7 sur la machine où je suis en ce moment. Il y a bien la possibilité de désélectionner les sous-titres, et sans doute d'ajouter d'autres langues. À moins que ce soit le cdn sur lequel j'ai installé la vidéo, bunny.net, qui met tout ça.
Il faut que je me remette dessus. Je vois des sous-titres sur des médias, bien fait, qui arrivent par le haut ou le bas, progressivement, avec des effets.
Pour la petite histoire, au moment de la conférence filmée, je n'étais pas trop à l'aise. À huit mètres de moi, il y a un Caïman dans une cage en béton. Il est encore petit mais a déjà une bouche à t'entamer le bras. Et sa cage n'est pas très haute.