{{tag>Focal Bionic multimédia capture}}
----
====== Youtube-dl, capture de vidéo internet en ligne de commande ======
Le développement du logiciel n'est plus actif depuis décembre 2021. Vous pourriez lui préférer [[:yt-dlp]]
**Youtube-dl** est un utilitaire de capture de vidéos en ligne qui supporte [[https://www.youtube.com|Youtube]] mais aussi de [[https://rg3.github.io/youtube-dl/supportedsites.html|nombreuses autres plate-formes]]. \\
Bien que son utilisation s’effectue depuis un [[:terminal]], son fonctionnement basique est à la portée d'un débutant. Il suffit tout simplement de [[wpfr>Copier-coller|copier et coller]] l'adresse %%URL%% de la page de la vidéo précédée de la [[:commande_shell|commande]] **''youtube-dl''** séparée d'un espace. \\
Sans autres options, **Youtube-dl** se chargera de capturer la vidéo, la convertir au format Mp4 et l’enregistrer dans votre dossier personnel...
Pour utiliser **Youtube-dl** avec une interface graphique en français et aisément paramétrable, voir **[[:Youtube-dlg|Youtube-DL-GUI]]** //(Paquet **youtube-dlg**, à ne pas confondre avec le paquet [[:youtube-dl-gui]])// .
La copie d’œuvre est réglementée, pour la France, voir [[http://www.legifrance.gouv.fr/affichCodeArticle.do?idArticle=LEGIARTI000025003518&cidTexte=LEGITEXT000006069414|l'article L122-5 sur Légifrance]]. La SACEM indique que la copie privée à partir d'un site internet (comme youtube) [[https://www.nextinpact.com/news/106174-youtube-dl-comment-recuperer-legalement-flux-audio-et-video-depuis-millier-sites.htm|est légale]], mais pas sa diffusion publique.
===== Installation =====
Pour capturer les vidéos de Youtube, il est nécessaire de mettre souvent à jour **Youtube-dl** car Google, propriétaire de Youtube, modifie fréquemment ses codes. La version des [[:dépôts|dépôts officiels]] devient alors rapidement inutilisable (message d'erreur) sauf peut-être avec la version en snap. Sinon vous pouvez utiliser la dernière version depuis le [[#via le site officiel|site officiel]] (donc appliquer la méthode 1.2 ci-dessous).
====Via les dépôts officiels====
**Youtube-dl** est dans les [[:depots|dépôts Ubuntu]]. Il suffit d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>youtube-dl]]** ou une version plus récente via [[:SNAP]].
==== Via le site officiel ====
Commencez par [[:tutoriel:comment_installer_un_paquet|installez le paquet]] **[[apt>python-is-python3]]**. Puis pour obtenir la dernière version :
- télécharger les sources depuis [[http://youtube-dl.org/|le site officiel]] à l'aide de la [[:commande_shell|commande]] suivante lancée depuis un [[terminal]] :sudo wget https://yt-dl.org/latest/youtube-dl -O /usr/local/bin/youtube-dl
- [[:permissions#modifier_les_permissions|Rendre le fichier binaire exécutable]] : sudo chmod a+x /usr/local/bin/youtube-dl
- Puis hash -r
Pour mettre à jour **youtube-dl** (les changements sont fréquents), il suffira d'entrer régulièrement la [[:commande_shell|commande]] suivante :sudo youtube-dl -U
Précisions: youtube-dl est codé avec un shebang **#!/usr/bin/env python** donc il faut un lien symbolique entre le label python et la version de python sur la machine.
Ceci peut se faire en créant une alternative ( au sens Debian[[ https://bidouilledebian.wordpress.com/2019/08/11/gestion-des-alternatives-dans-debian/]])
$ update-alternatives --display python
python - mode automatique
link best version is /usr/bin/python3
le lien pointe actuellement sur /usr/bin/python3
link python is /usr/bin/python
/usr/bin/python2 - priorité 1
/usr/bin/python3 - priorité 2
Ce qui par exemple se vérifie:
$ ls -alrt /usr/bin/python*
lrwxrwxrwx 1 root root 9 avril 7 12:43 /usr/bin/python3 -> python3.8
-rwxr-xr-x 1 root root 3672400 avril 20 22:30 /usr/bin/python2.7
-rwxr-xr-x 1 root root 6413 juil. 27 14:29 /usr/bin/python3-wsdump
-rwxr-xr-x 1 root root 5233184 août 2 17:09 /usr/bin/python3.8
lrwxrwxrwx 1 root root 9 août 4 10:22 /usr/bin/python2 -> python2.7
lrwxrwxrwx 1 root root 24 sept. 16 22:08 /usr/bin/python -> /etc/alternatives/python
=====Configuration====
Vous pouvez modifier la configuration par défaut de **Youtube-dl**. Il suffit alors de [[:tutoriel/comment_modifier_un_fichier|créer un fichier]] de configuration **~/.config/youtube-dl/config** en y indiquant vos propres options :
- Ouvrir votre dossier personnel
- [[:fichier_cache#afficher_les_elements_caches|Afficher les dossiers cachés]] avec la combinaison de touches +
- Ouvrir le dossier **.config**
- Dans ce dernier, créer un dossier **youtube-dl** puis à l'intérieur :
- [[:tutoriel/comment_modifier_un_fichier|créer le fichier]] de configuration **config**
- Ajouter dans ce fichier les options souhaitées, chacune sur une ligne différente puis enregistrer et fermer ce fichier.
Exemple de fichier **config** pour obtenir uniquement la bande son dans le format de sortie Mp3 :--extract-audio
--audio-format mp3
À peu près toutes les options du chapitre [[#Utilisation]] ci-dessous sont possibles. (Pour encore plus d'options, voir le [[man>youtube-dl| (en) manuel]]).
__À noter__ : le fichier ainsi créé ne concerne que l'utilisateur actuellement connecté. Pour modifier la configuration de **youtube-dl** pour l'ensemble du système on créera plutôt le fichier **/etc/youtube-dl.conf**
===== Utilisation =====
- Se rendre sur un des sites compatibles et rechercher la vidéo que vous voulez télécharger et copier l'adresse de sa page ;
- Ouvrir un [[:terminal]], saisir **''youtube-dl''** suivie d'un espace et coller l'adresse %%URL%% de la vidéo à sa suite youtube-dl url_de_la_vidéo
- Appuyer sur "Enter" ou "Entrée" pour exécuter la [[:commande_shell|commande]].
La vidéo sera enregistrée dans la meilleure qualité dans votre dossier personnel. Pour l’enregistrer dans un autre dossier, avant de saisir la commande, il suffit dans le [[:terminal]] de se positionner dans le dossier voulu à l'aide de la commande **[[:console#cd|cd]]**.
==== Obtenir uniquement l'audio ====
Si vous souhaitez n'obtenir que la bande son de la vidéo il suffit d'utiliser l'option ''-x'' soit la [[:commande_shell|commande]] :
youtube-dl -x url_de_la_vidéo
Le fichier audio extrait sera au meilleur format.
=== Modifier le format audio ===
Si vous souhaitez un autre format de sortie, il suffit de le préciser en ajoutant l'option ''%%--audio-format%%'' suivi du format souhaité. Formats disponibles : ''aac'', ''vorbis'', ''mp3'', ''m4a'', ''opus'', et ''wav''.
Exemple de [[:commande_shell|commande]] pour obtenir un format MP3 ou ogg :
youtube-dl -x --audio-format mp3 url_de_la_vidéo
youtube-dl -x --audio-format vorbis url_de_la_vidéo
==== Choisir la qualité et le format ====
- Lister les formats et qualités disponibles avec l'option **-F** :youtube-dl -F url_de_la_vidéo
Peut donner quelques chose comme :format code extension resolution note
171 webm audio only DASH webm audio , audio@ 48k (worst)
140 m4a audio only DASH audio , audio@128k
160 mp4 144p DASH video , video only
133 mp4 240p DASH video , video only
134 mp4 360p DASH video , video only
135 mp4 480p DASH video , video only
136 mp4 720p DASH video , video only
137 mp4 1080p DASH video , video only
17 3gp 176x144
36 3gp 320x240
5 flv 400x240
43 webm 640x360
18 mp4 640x360
22 mp4 1280x720 (best)
- Ensuite avec l'option **-f**, choisir les formats vidéo et audio souhaités //(Le premier format doit contenir la vidéo)// :youtube-dl -f 137+140 url_de_la_vidéo
Ou encore un format complet (par exemple le format videoflash) :youtube-dl -f 5 url_de_la_vidéo
* On trouve également des retours de ce type :ld mp4 320x240 (worst)
standard mp4 512x384
hq mp4 848x480 (best)
Dans ce cas on utilisera par exemple :youtube-dl -f standard url_de_la_vidéo
==== Enregistrement de sous-titres ====
- Avant de télécharger la vidéo, dans un [[:terminal]], saisir la [[:commande_shell|commande]]:youtube-dl --list-subs url_de_la_vidéo
Une liste des langues disponibles est affichée :[youtube] 'référence de la vidéo': Available subtitles for video: en
- Télécharger la vidéo avec les sous-titres (exemple avec l'anglais) avec cette [[:commande_shell|commande]]:youtube-dl --write-sub --sub-lang 'en' url_de_la_vidéo
==== Problème de SME: proxy TOR ====
Si jamais la vidéo ne peut pas être lue dans votre pays du fait de la propriété intellectuelle, un message de ce type apparaît
''ERROR: -XXXXX: YouTube said: This video contains content from SME, who has blocked it in your country on copyright grounds.''
Pour télécharger la vidéo malgré tout, on peut passer par le proxy de TOR :
obfs4proxy n'est plus disponible dans les dépôts officiels depuis [[Focal|Ubuntu 20.04]]((https://packages.ubuntu.com/search?suite=default§ion=all&arch=any&searchon=names&keywords=obfsproxy))
- [[:tutoriel:comment_installer_un_paquet|installer]] **[[apt>proxychains,tor|proxychains, tor]]** et **[[apt>obfs4proxy]]**
- pour télécharger la vidéo, utiliser ''proxychains'': proxychains yt-dlp url_de_la_video
=====Convertir un fichier webm en .mp4=====
Le format vidéo le plus utilisé sur Internet, et sur youtube en particulier, est le [[webm|webm]]. Ce sera donc sans doute le format de votre vidéo après téléchargement. Pour voir une vidéo webm sur une télévision, il vous faudra sans doute modifier le format (il n'est généralement pas reconnu nativement). Pour passer la vidéo webm en .**mp4** :
ffmpeg -i ma-video.webm ma-video.mp4
La qualité de sortie est alors d'une qualité moyenne.
Plus rapide et sans perte d'information, vous pouvez spécifier de copier les flux (audio, vidéo, etc) avec **-c copy**
ffmpeg -i ma-video.webm -c copy ma-video.mp4
===== Rechercher des vidéos et les regarder directement =====
Après avoir [[:tutoriel:comment_installer_un_paquet|installé le paquet]] **[[apt>mpv]]**, tapez dans un terminal((Nécessite d'avoir une version de Youtube-dl à jour)) :
* Par exemple
- Pour **Installer Ubuntu 18.04** la commande sera :
mpv ytdl://ytsearch:installer_ubuntu_18.04
===== Désinstallation =====
Pour supprimer cette application, il suffit de [[:tutoriel:comment_supprimer_un_paquet|supprimer son paquet]]. Selon la méthode choisie, le configuration globale de l'application est conservée ou supprimée. Les journaux du système, et les fichiers de préférence des utilisateurs dans leurs dossiers personnels sont toujours conservés.
====Installé depuis le site officiel====
[[:tutoriel:comment_supprimer_un_fichier|Supprimer le fichier]] /usr/local/bin/**youtube-dl**
=====Voir aussi =====
* **(en)** [[https://rg3.github.io/youtube-dl/|Site officiel]]
* **(en)** [[https://github.com/rg3/youtube-dl|Plus d'options]]
* [[man>youtube-dl|Le manuel]]
* [[:yt-dlp]]
TELECHARGEMENT ACTUELLEMENT IMPOSSIBLE car le site youtube-dl.com a été rendu inaccessible suite à une décision de justice de la cour régionale de Hambourg
----
//Contributeurs: [[:utilisateurs:gp974|Gp974]], [[:utilisateurs:mydjey|mydjey]].//