Youtube-dl + sous-titres générés automatiquement

Bonjour à tous,

Je souhaite récupérer la vidéo doodle du jour ( => https://www.youtube.com/watch?v=uzbquKCqEQY en version url plus réduite) avec les sous-titres anglais générés automatiquement.

Pour cela - youtube-dl étant à la dernière version (2019.07.16) - je tape la commande :

$ youtube-dl --write-auto-sub https://www.youtube.com/watch?v=uzbquKCqEQY

J’obtiens bien deux fichiers : l’un étant la vidéo proprement dite et le deuxième les sous-titres (.en.vtt)

Sauf que quand je regarde le contenu de ce dernier (ou que je regarde cette vidéo avec ces sous-titres chargés) je constate que ce ne sont pas les sous-titres générés automatiquement !
Ce sont bien des sous-titres, en anglais mais ils ne correspondent pas à ceux affichés directement sur la page Youtube.

Exemple à 38 secondes du début de la vidéo :

  • sur Youtube avec l’option “Sous-titres” positionnée sur “Anglais (générés automatiquement)” :“after a big breakfast our rocket lifted of in the morning of July 16th 1969…
  • et sur le .en.vtt récupéré par youtube-dl : “Our spacecraft departed after a large breakfast on the morning of July 16, 1969…

On est bien d’accord que le sous-titre vtt correspond à ce que Monsieur Michael COLLINS raconte… mais pas à ce qu’il dit : ce ne sont pas du tout des sous-titres auto-générés.

Pourtant ceux-ci existent bien :

$ youtube-dl --list-subs https://www.youtube.com/watch?v=uzbquKCqEQY
[youtube] uzbquKCqEQY: Downloading webpage
[youtube] uzbquKCqEQY: Downloading video info webpage
[youtube] uzbquKCqEQY: Looking for automatic captions
Available automatic captions for uzbquKCqEQY:
Language formats
nl       vtt, ttml, srv3, srv2, srv1
ceb      vtt, ttml, srv3, srv2, srv1
xh       vtt, ttml, srv3, srv2, srv1
[...]
en       vtt, ttml, srv3, srv2, srv1
[...]

=> c’est bien noté “Available automatic captions” et “en vtt, ttml, srv3, srv2, srv1

Je ne comprends pas mon erreur : j’ai beau avoir regardé le man (+ quelques tutos sur le Net) je n’ai pas trouvé d’autre option que celle que j’ai utilisé.

Quelqu’un peut-il m’aider sur ce coup là, svp ?

Merci d’avance,
Trululu

Salut

youtube-dl -k -f 22 --write-sub --sub-lang fr https://www.youtube.com/watch?v=uzbquKCqEQY

télécharge la vidéo en mp4 et le fichier sous-titre français format vtt qui peut s’éditer avec un editeur de texte pour le vérifier

/Vidéos$ ls 50th*
'50th Anniversary of the Moon Landing-uzbquKCqEQY.fr.vtt'  '50th Anniversary of the Moon Landing-uzbquKCqEQY.mp4'

je le lis avec mpv ce qui donne

Capture%20d%E2%80%99%C3%A9cran%20du%202019-07-19%2013-28-47

je ne sais pas si les sous titres sont exacts et synchrones

Capture%20d%E2%80%99%C3%A9cran%20du%202019-07-19%2013-32-06

Alors j’ai pas testé youtube-dl, mais effectivement, ce que tu as sur youtube même est une redaction de ce que dit Collins, alors que ce que tu dis avoir récupèré est manifestement la version en automatique.
Si ce que tu veux, c’est avoir le fichier des sous titres qui apparait sur youtube (qui je le répète n’est pas la traduction auto), alors, AMA, la syntaxe, c’est:
youtube-dl --write-sub --sub-lang en https://www.youtube.com/watch?v=uzbquKCqEQY

Merci à tous les deux pour vos réponses !

@grandtoubab :
Je me rend compte que je me suis mal exprimé.

Je souhaite récupérer les sous-titres anglais qui s’affichent au fur et à mesure de ce que dit Monsieur COLLINS lorsque la vidéo est configurée comme suit : “Paramètres/Sous-titres/Anglais (générés automatiquement)”.
De toute façon, il n’y a aucun autre choix possible pour avoir des sous-titres en anglais pour cette vidéo.

$ youtube-dl --write-sub --sub-lang en https://www.youtube.com/watch?v=uzbquKCqEQY
[youtube] uzbquKCqEQY: Downloading webpage
[youtube] uzbquKCqEQY: Downloading video info webpage
WARNING: en subtitles not available for uzbquKCqEQY
[...]

@mattotop :

mais effectivement, ce que tu as sur youtube même est une redaction de ce que dit Collins, alors que ce que tu dis avoir récupèré est manifestement la version en automatique.

Heu… en fait c’est l’inverse :wink: (c’est bien ça mon souci)

le fichier des sous titres qui apparait sur youtube (qui je le répète n’est pas la traduction auto)

Si on parle bien de la même chose (conf pour cette vidéo = “Paramètres/Sous-titres/Anglais (générés automatiquement)”) pourquoi tu dis que ce n’est pas une trad auto ?
Car c’est effectivement ce fichier de sous-titres que je souhaite récupérer.

Malheureusement, la commande que tu m’as indiqué télécharge les sous-titres anglais uploadés/rédigés, pas ceux de la version auto… (j’ai quand même testé pour voir)

=> C’est pour ça que je m’arrache les cheveux :
j’arrive à télécharger des sous-titres (rédigés/uploadés) alors que Youtube et youtube-dl m’indiquent qu’ils n’existent pas (ie impossible de sélectionner “Paramètres/Sous-titres/Anglais”, ou avec youtube-dl “WARNING: en subtitles not available for uzbquKCqEQY”) et, alors que s’affichent sur Youtube des sous-titres automatiques (“Paramètres/Sous-titres/Anglais (générés automatiquement)”) je ne trouve aucun moyen de télécharger précisément ceux-là !

:roll_eyes:

Parce que j’ai écouté à 38 secondes du début de la vidéo et qu’il dit bien “after a big breakfast our rocket lifted of in the morning of July 16th 1969” et que bêtement, j’ai lu le sous titre en français qui se présentait en l’interprétant comme de l’anglais rédigé (les mots n’étaient pas dans le même ordre, évidemment) sans réaliser que c’était du français.
Donc en résumé: parce que je me suis trompé. :smiley:

Et tu as essayé --write-all-subs, pour voir si tu trouves ce que tu veux dans ce qu’il te sert ?
Bon OK, ça va bouffer du tuyau, mais c’est jamais que des sous titres…

Oui j’ai essayé, mais parmi la ribambelle de sous-titres récupérés (66) ceux en anglais auto-générés n’y sont pas. (vérifié avec mpv)

Par acquis de conscience, je suis passé par le site DownSub et j’ai bien récupéré mes sous-titres anglais auto-générés ! :sunglasses:

C’est donc bien au niveau de youtube-dl que le pb se pose.
Et c’est là que ta dernière suggestion est intéressante car si on fait un :

$ youtube-dl -v --list-subs https://www.youtube.com/watch?v=uzbquKCqEQY
[debug] System config: []
[debug] User config: ['-o', '%(title)s.%(ext)s', '--user-agent', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:67.0) Gecko/20100101 Firefox/67.0']
[debug] Custom config: []
[debug] Command-line args: ['-v', '--list-subs', 'https://www.youtube.com/watch?v=uzbquKCqEQY']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2019.07.16
[debug] Python version 3.5.3 (CPython) - Linux-4.9.0-9-amd64-x86_64-with-debian-9.9
[debug] exe versions: ffmpeg 3.2.14-1, ffprobe 3.2.14-1, rtmpdump 2.4
[debug] Proxy map: {}
[youtube] uzbquKCqEQY: Downloading webpage
[youtube] uzbquKCqEQY: Downloading video info webpage
[youtube] uzbquKCqEQY: Looking for automatic captions
Available automatic captions for uzbquKCqEQY:
Language formats
lt       vtt, ttml, srv3, srv2, srv1
fy       vtt, ttml, srv3, srv2, srv1
cs       vtt, ttml, srv3, srv2, srv1
mi       vtt, ttml, srv3, srv2, srv1
tr       vtt, ttml, srv3, srv2, srv1
lo       vtt, ttml, srv3, srv2, srv1
km       vtt, ttml, srv3, srv2, srv1
sm       vtt, ttml, srv3, srv2, srv1
gl       vtt, ttml, srv3, srv2, srv1
cy       vtt, ttml, srv3, srv2, srv1
sw       vtt, ttml, srv3, srv2, srv1
be       vtt, ttml, srv3, srv2, srv1
iw       vtt, ttml, srv3, srv2, srv1
af       vtt, ttml, srv3, srv2, srv1
hu       vtt, ttml, srv3, srv2, srv1
ga       vtt, ttml, srv3, srv2, srv1
th       vtt, ttml, srv3, srv2, srv1
ro       vtt, ttml, srv3, srv2, srv1
ca       vtt, ttml, srv3, srv2, srv1
la       vtt, ttml, srv3, srv2, srv1
ku       vtt, ttml, srv3, srv2, srv1
jv       vtt, ttml, srv3, srv2, srv1
tg       vtt, ttml, srv3, srv2, srv1
sl       vtt, ttml, srv3, srv2, srv1
fi       vtt, ttml, srv3, srv2, srv1
sv       vtt, ttml, srv3, srv2, srv1
mn       vtt, ttml, srv3, srv2, srv1
et       vtt, ttml, srv3, srv2, srv1
id       vtt, ttml, srv3, srv2, srv1
hy       vtt, ttml, srv3, srv2, srv1
bs       vtt, ttml, srv3, srv2, srv1
vi       vtt, ttml, srv3, srv2, srv1
yi       vtt, ttml, srv3, srv2, srv1
ig       vtt, ttml, srv3, srv2, srv1
haw      vtt, ttml, srv3, srv2, srv1
it       vtt, ttml, srv3, srv2, srv1
yo       vtt, ttml, srv3, srv2, srv1
pl       vtt, ttml, srv3, srv2, srv1
eu       vtt, ttml, srv3, srv2, srv1
fa       vtt, ttml, srv3, srv2, srv1
zu       vtt, ttml, srv3, srv2, srv1
co       vtt, ttml, srv3, srv2, srv1
mt       vtt, ttml, srv3, srv2, srv1
sk       vtt, ttml, srv3, srv2, srv1
ur       vtt, ttml, srv3, srv2, srv1
am       vtt, ttml, srv3, srv2, srv1
ps       vtt, ttml, srv3, srv2, srv1
ar       vtt, ttml, srv3, srv2, srv1
kn       vtt, ttml, srv3, srv2, srv1
kk       vtt, ttml, srv3, srv2, srv1
pt       vtt, ttml, srv3, srv2, srv1
mr       vtt, ttml, srv3, srv2, srv1
te       vtt, ttml, srv3, srv2, srv1
ka       vtt, ttml, srv3, srv2, srv1
eo       vtt, ttml, srv3, srv2, srv1
da       vtt, ttml, srv3, srv2, srv1
hmn      vtt, ttml, srv3, srv2, srv1
ne       vtt, ttml, srv3, srv2, srv1
ha       vtt, ttml, srv3, srv2, srv1
el       vtt, ttml, srv3, srv2, srv1
hi       vtt, ttml, srv3, srv2, srv1
fil      vtt, ttml, srv3, srv2, srv1
ta       vtt, ttml, srv3, srv2, srv1
lb       vtt, ttml, srv3, srv2, srv1
bn       vtt, ttml, srv3, srv2, srv1
ht       vtt, ttml, srv3, srv2, srv1
su       vtt, ttml, srv3, srv2, srv1
sd       vtt, ttml, srv3, srv2, srv1
so       vtt, ttml, srv3, srv2, srv1
ny       vtt, ttml, srv3, srv2, srv1
ru       vtt, ttml, srv3, srv2, srv1
ml       vtt, ttml, srv3, srv2, srv1
gu       vtt, ttml, srv3, srv2, srv1
mg       vtt, ttml, srv3, srv2, srv1
xh       vtt, ttml, srv3, srv2, srv1
zh-Hans  vtt, ttml, srv3, srv2, srv1
zh-Hant  vtt, ttml, srv3, srv2, srv1
mk       vtt, ttml, srv3, srv2, srv1
ms       vtt, ttml, srv3, srv2, srv1
si       vtt, ttml, srv3, srv2, srv1
sn       vtt, ttml, srv3, srv2, srv1
uz       vtt, ttml, srv3, srv2, srv1
fr       vtt, ttml, srv3, srv2, srv1
ky       vtt, ttml, srv3, srv2, srv1
sq       vtt, ttml, srv3, srv2, srv1
ja       vtt, ttml, srv3, srv2, srv1
st       vtt, ttml, srv3, srv2, srv1
no       vtt, ttml, srv3, srv2, srv1
es       vtt, ttml, srv3, srv2, srv1
gd       vtt, ttml, srv3, srv2, srv1
uk       vtt, ttml, srv3, srv2, srv1
bg       vtt, ttml, srv3, srv2, srv1
sr       vtt, ttml, srv3, srv2, srv1
pa       vtt, ttml, srv3, srv2, srv1
is       vtt, ttml, srv3, srv2, srv1
ceb      vtt, ttml, srv3, srv2, srv1
lv       vtt, ttml, srv3, srv2, srv1
hr       vtt, ttml, srv3, srv2, srv1
de       vtt, ttml, srv3, srv2, srv1
az       vtt, ttml, srv3, srv2, srv1
en       vtt, ttml, srv3, srv2, srv1
my       vtt, ttml, srv3, srv2, srv1
nl       vtt, ttml, srv3, srv2, srv1
ko       vtt, ttml, srv3, srv2, srv1
Available subtitles for uzbquKCqEQY:
Language formats
lt       vtt, ttml, srv3, srv2, srv1
cs       vtt, ttml, srv3, srv2, srv1
ur       vtt, ttml, srv3, srv2, srv1
mr       vtt, ttml, srv3, srv2, srv1
da       vtt, ttml, srv3, srv2, srv1
sl       vtt, ttml, srv3, srv2, srv1
tr       vtt, ttml, srv3, srv2, srv1
ne       vtt, ttml, srv3, srv2, srv1
km       vtt, ttml, srv3, srv2, srv1
gl       vtt, ttml, srv3, srv2, srv1
hi       vtt, ttml, srv3, srv2, srv1
fil      vtt, ttml, srv3, srv2, srv1
pt-PT    vtt, ttml, srv3, srv2, srv1
sw       vtt, ttml, srv3, srv2, srv1
be       vtt, ttml, srv3, srv2, srv1
iw       vtt, ttml, srv3, srv2, srv1
af       vtt, ttml, srv3, srv2, srv1
hu       vtt, ttml, srv3, srv2, srv1
de       vtt, ttml, srv3, srv2, srv1
ro       vtt, ttml, srv3, srv2, srv1
id       vtt, ttml, srv3, srv2, srv1
gu       vtt, ttml, srv3, srv2, srv1
ja       vtt, ttml, srv3, srv2, srv1
ca       vtt, ttml, srv3, srv2, srv1
zh-TW    vtt, ttml, srv3, srv2, srv1
ta       vtt, ttml, srv3, srv2, srv1
zh-Hans  vtt, ttml, srv3, srv2, srv1
pl       vtt, ttml, srv3, srv2, srv1
mk       vtt, ttml, srv3, srv2, srv1
my       vtt, ttml, srv3, srv2, srv1
ms       vtt, ttml, srv3, srv2, srv1
sv       vtt, ttml, srv3, srv2, srv1
mn       vtt, ttml, srv3, srv2, srv1
et       vtt, ttml, srv3, srv2, srv1
te       vtt, ttml, srv3, srv2, srv1
hy       vtt, ttml, srv3, srv2, srv1
uz       vtt, ttml, srv3, srv2, srv1
fr       vtt, ttml, srv3, srv2, srv1
bs       vtt, ttml, srv3, srv2, srv1
vi       vtt, ttml, srv3, srv2, srv1
sq       vtt, ttml, srv3, srv2, srv1
no       vtt, ttml, srv3, srv2, srv1
es-419   vtt, ttml, srv3, srv2, srv1
it       vtt, ttml, srv3, srv2, srv1
pt-BR    vtt, ttml, srv3, srv2, srv1
zh-HK    vtt, ttml, srv3, srv2, srv1
eu       vtt, ttml, srv3, srv2, srv1
uk       vtt, ttml, srv3, srv2, srv1
bg       vtt, ttml, srv3, srv2, srv1
ru       vtt, ttml, srv3, srv2, srv1
th       vtt, ttml, srv3, srv2, srv1
zu       vtt, ttml, srv3, srv2, srv1
es-ES    vtt, ttml, srv3, srv2, srv1
sr       vtt, ttml, srv3, srv2, srv1
pa       vtt, ttml, srv3, srv2, srv1
is       vtt, ttml, srv3, srv2, srv1
sk       vtt, ttml, srv3, srv2, srv1
lv       vtt, ttml, srv3, srv2, srv1
hr       vtt, ttml, srv3, srv2, srv1
am       vtt, ttml, srv3, srv2, srv1
ar       vtt, ttml, srv3, srv2, srv1
kn       vtt, ttml, srv3, srv2, srv1
el       vtt, ttml, srv3, srv2, srv1
nl       vtt, ttml, srv3, srv2, srv1
az       vtt, ttml, srv3, srv2, srv1
ko       vtt, ttml, srv3, srv2, srv1

on remarque que, sur cette vidéo, beaucoup de sous-titres sont en doubles : 105 pour la trad auto et 66 pour la version rédigée.

Tiens, tiens, comme par hasard on retrouve nos 66 sous-titres téléchargés avec l’option “–all-subs”. (–write-all-subs n’existe pas ou plus apparemment)

Alors maintenant, comment dire à youtube-dl de télécharger ce “fr” (par exemple) plutôt que cet autre “fr”, puisqu’ils ont la même dénomination ?
=> sachant ça, je pourrais agir de même avec les sous-titres “en”…

Voir ici

youtube-dl -v -k -f 22 --write-auto-sub https://www.youtube.com/watch?v=uzbquKCqEQY
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'-v', u'-k', u'-f', u'22', u'--write-auto-sub', u'https://www.youtube.com/watch?v=uzbquKCqEQY']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2019.07.16
[debug] Python version 2.7.16 (CPython) - Linux-5.2.1-xanmod2-x86_64-with-debian-10.0
[debug] exe versions: ffmpeg 4.1.3-1, ffprobe 4.1.3-1
[debug] Proxy map: {}
[youtube] uzbquKCqEQY: Downloading webpage
[youtube] uzbquKCqEQY: Downloading video info webpage
[youtube] uzbquKCqEQY: Looking for automatic captions
[info] Writing video subtitles to: 50th Anniversary of the Moon Landing-uzbquKCqEQY.en.vtt
[debug] Invoking downloader on u'https://r7---sn-n4g-jqbe.googlevideo.com/videoplayback?expire=1563628790&ei=lsAyXcHoE8ShVPqduugI&ip=77.128.52.189&id=o-APYnikVxUojep1h1Mf7Ej-uw_dRk4HcG73v9mwa8NmOo&itag=22&source=youtube&requiressl=yes&mm=31%2C26&mn=sn-n4g-jqbe%2Csn-5hnekn7d&ms=au%2Conr&mv=m&mvi=6&pcm2cms=yes&pl=22&initcwndbps=652500&mime=video%2Fmp4&ratebypass=yes&dur=277.548&lmt=1563504004406083&mt=1563607071&fvip=2&c=WEB&txp=5532432&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cmime%2Cratebypass%2Cdur%2Clmt&sig=ALgxI2wwRQIhAPOaaA6ZZH7adOyfKcwNDDq_eQ0tuDbGqvweMc6dMs1BAiB3xSB9hkamp2O4ju2lo7bmpTrM4aMVdvPlrQVClbbmDw%3D%3D&lsparams=mm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpcm2cms%2Cpl%2Cinitcwndbps&lsig=AHylml4wRgIhAPNQlr9Xce0QSP_nmpTegjPq2BDcSYHgSPnnHaMnjGFwAiEA6gBeQjrWu6NVjYM7hvw_7ndxvwvk5GoQ6FVld-SS9_o%3D'
[download] Destination: 50th Anniversary of the Moon Landing-uzbquKCqEQY.mp4
[download] 100% of 17.27MiB in 00:17

~/Vidéos$ ls 50th*
'50th Anniversary of the Moon Landing-uzbquKCqEQY.en.vtt'
'50th Anniversary of the Moon Landing-uzbquKCqEQY.mp4'

Capture%20d%E2%80%99%C3%A9cran%20du%202019-07-20%2009-32-18

Capture%20d%E2%80%99%C3%A9cran%20du%202019-07-20%2009-33-13

@grantoubab :
Merci mais, malgré que ta commande soit bien celle qu’il faut utiliser pour faire ce que je souhaite récupérer, (c’est la 1ère que j’ai listé dans mon post initial) celle-ci - dans ce cas précis - ne fonctionne pas .
(=> les sous-titres que tu joins en copie d’écran ne sont pas les sous-titres anglais auto-générés mais des sous-titres anglais rédigés, nuance.)

Bon, je laisse tomber car pas de solution via youtube-dl pour l’instant …(je ne peux donc pas clore le sujet)

Merci à tous pour votre aide,
A+
Trululu