====== Yt-dlp : ======
===== Installation, mise à jour... : =====
- [[https://github.com/yt-dlp/yt-dlp|Forge de Yt-dlp]] ;
- Pour le mettre a jour (si pas installé par le gestionnaire de paquets de la distribution, connexion en super-utilisateur probablement nécessaire): ''yt-dlp -U''
===== Afficher la liste de compatibilité : =====
- yt-dlp --list-extractors ;
- yt-dlp --extractor-descriptions ;
===== Comment télécharger ? =====
==== Afficher les formats disponibles du flux multimédia : ====
yt-dlp -F {URI} --check-all-formats --compat-options list-formats --list-subs --prefer-free-formats --user-agent "Mozilla/5.0(Linux)" -v
==== Télécharger pour de bon dans l'emplacement courant : ====
yt-dlp -f {format(s)} --merge-output-format mkv --no-write-auto-subs --prefer-free-formats --print-traffic --restrict-filenames -v --write-description --write-info-json --no-clean-infojson --user-agent "Mozilla/5.0(Linux)" --write-comments --write-subs {URI}
==== Autres options fréquentes : ====
=== Afficher une estimation, souvent inexacte quand les flux sont en plein de micro-paquets, de la taille : ===
--compat-options manifest-filesize-approx
=== Simuler : ===
''-s''
=== Choix des sous-titres : ===
--sub-langs LANGS :
* les expressions rationnelles/régulières sont supportées.
* ''all'' est accepté.
* ''-'' permet d'exclure ;
* Les codes de chaque langage de sous-titres peuvent être obtenus avec ''--list-subs'' (voir commandes ci-dessus et exemples ci-dessous).
* ''qsm'' correspond souvent aux sous-titres français ;
== Exemples : ==
* --sub-langs "en.*,ja"
* --sub-langs all,-en.us : tous sauf ceux en états-unien ;
* cd ~/Vidéos/ ; yt-dlp -F https://www.france.tv/films/4548703-kramer-contre-kramer.html --check-all-formats --compat-options list-formats --compat-options manifest-filesize-approx --list-subs --prefer-free-formats --user-agent "Mozilla/5.0(Linux)" -v donne :
* [info] Available subtitles for 7a4e3a7c-593b-4218-8945-a86342380bb9:
* Language Formats
* fr vtt, vtt, mp4
* [info] Available formats for 7a4e3a7c-593b-4218-8945-a86342380bb9:
* format code extension resolution note
* hls-audio-aacl-96-Audio_Français mp4 audio only [fr] Audio Français
* hls-audio-aacl-96-Audio_Originale mp4 audio only [qaa] Audio Originale
* dash-audio_fre=96000 m4a audio only [fr] DASH audio, 96k, m4a_dash container, mp4a.40.2@ 96k (48000Hz), ~70.70MiB
* dash-audio_qaa=96000 m4a audio only [qaa] DASH audio, 96k, m4a_dash container, mp4a.40.2@ 96k (48000Hz), ~70.70MiB
* dash-video=400000 mp4 384x216 DASH video, 400k, mp4_dash container, avc1.42C01E@ 400k, 25fps, video only, ~294.58MiB
* hls-522 mp4 384x216 522k, avc1.42C01E@ 522k, 25.0fps, video only, ~384.43MiB
* dash-video=950000 mp4 640x360 DASH video, 950k, mp4_dash container, avc1.4D401F@ 950k, 25fps, video only, ~699.63MiB
* hls-1105 mp4 640x360 1105k, avc1.4D401F@1105k, 25.0fps, video only, ~813.78MiB
* dash-video=1400000 mp4 960x540 DASH video, 1400k, mp4_dash container, avc1.4D401F@1400k, 25fps, video only, ~1.01GiB
* hls-1582 mp4 960x540 1582k, avc1.4D401F@1582k, 25.0fps, video only, ~1.14GiB
* dash-video=2000000 mp4 1280x720 DASH video, 2000k, mp4_dash container, avc1.64001F@2000k, 25fps, video only, ~1.44GiB
* hls-2218 mp4 1280x720 2218k, avc1.64001F@2218k, 25.0fps, video only, ~1.60GiB
* Pour télécharger la meilleure version en VO sous-titrée, la commande pourrait ressembler à :
* cd ~/Vidéos/ ; yt-dlp -f "dash-video=2000000+hls-audio-aacl-96-Audio_Originale" --sub-langs fr --merge-output-format mkv --no-write-auto-subs --prefer-free-formats --print-traffic --restrict-filenames -v --write-description --write-info-json --no-clean-infojson --user-agent "Mozilla/5.0(Linux)" --write-comments --write-subs https://www.france.tv/films/4548703-kramer-contre-kramer.html
* Il faut pas mal de ressources disponibles car pour finaliser (et encore, il semble manquer la gestion de la piste de sous-titres... il existe une option pour demander à ce que les différents fichiers soient stockés en différents endroits), la fusion se fait avec ffmpeg -y -loglevel repeat+info -i 'file:Kramer_contre_Kramer-[7a4e3a7c-593b-4218-8945-a86342380bb9].fdash-video=2000000.mp4' -i 'file:Kramer_contre_Kramer-[7a4e3a7c-593b-4218-8945-a86342380bb9].fhls-audio-aacl-96-Audio_Originale.mp4' -c copy -map 0:v:0 -map 1:a:0 -bsf:a:0 aac_adtstoasc -movflags +faststart 'file:Kramer_contre_Kramer-[7a4e3a7c-593b-4218-8945-a86342380bb9].temp.mkv'
* Téléchargement d'un épisode de documentaire en très haute qualité et sous-titrage "sourds et malentendants", après création du dossier devant le contenir:
* do="~/Vidéos/hezbollah/3" && dos=$(echo ${do:-/dev/zero} | sed -e 's#~#$HOME#' | sed -e "s#\$HOME#$HOME#") && mkdir $dos ; cd $dos && yt-dlp -f "dash-video=5000000+hls-audio-aacl-96-Audio_Français" --sub-langs qsm --merge-output-format mkv --no-write-auto-subs --prefer-free-formats --print-traffic --restrict-filenames -v --write-description --write-info-json --no-clean-infojson --user-agent "Mozilla/5.0(Linux)" --write-comments --write-subs https://www.france.tv/france-5/hezbollah-l-enquete-interdite/hezbollah-l-enquete-interdite-saison-1/5358537-au-nom-de-la-raison-d-etat.html
==== Ne télécharger que les informations textuelles : ====
Dans les lignes de commandes précédemment décrites, remplacer l'option ''-f'' et ses paramètres par ''--skip-download'' 8-) C'est particulièrement utile pour télécharger les sous-titres (et accessoirement les divers champs de commentaires) d'une vidéo qui a déjà été obtenue précédemment sans 8-O