yt-dlp : La version moderne de youtube-dl pour télécharger des vidéos
Le 23 octobre 2020, la Recording Industry Association of America (RIAA) a déposé une plainte DMCA contre youtube-dl sur GitHub. Trois jours plus tard, le 26 octobre, un nouveau dépôt est discrètement apparu à l'adresse github.com/yt-dlp/yt-dlp. Lorsque GitHub a rétabli le projet original le 16 novembre, en allouant un nouveau fonds de défense des développeurs d'un million de dollars, le nouveau dépôt avait déjà commencé à absorber les contributeurs de youtube-dl.
Cette branche est désormais la branche principale. En mai 2026, yt-dlp comptabilisait plus de 12 millions de téléchargements par mois sur PyPI. Son dépôt GitHub comptait 160 766 étoiles. Le projet publie une nouvelle version environ toutes les deux semaines. La dernière version, au moment de la rédaction, est le 17 mars 2026. Il prend en charge plus de 1 800 sites vidéo et audio grâce à son système de plugins d'extraction. Vous trouverez ci-dessous une présentation détaillée de yt-dlp : son fonctionnement et son utilisation. Nous aborderons également sa situation juridique en 2026 et expliquerons pourquoi une installation parfaitement fonctionnelle peut soudainement cesser de fonctionner mi-2025.
D'où vient yt-dlp : la chaîne de fourche de youtube-dlp
La filiation est importante ici car elle explique un écart de comportement. yt-dlp déploie des correctifs quelques heures après une panne de YouTube ; youtube-dl peut prendre des semaines. Trois projets figurent dans l'arbre généalogique, et chaque étape a été motivée par la frustration engendrée par la précédente.
youtube-dl était le projet initial. Ricardo García l'a écrit en août 2006, et Philipp Hagemeister l'a ensuite dirigé avec une équipe restreinte sous l'égide de `ytdl-org/youtube-dl`. En 2020, il était devenu l'outil d'archivage de référence, mais les demandes de fusion s'accumulaient et les correctifs de YouTube tardaient à être déployés.
C’est ce manque qui a donné naissance à youtube-dlc, où le « c » signifie « communauté ». `blackjack4494` a créé un fork du dépôt en 2020 et la file d’attente des fusions a été vidée en quelques jours. Le fork lui-même est devenu semi-inactif à la fin de la même année — un seul mainteneur, c’est fragile.
yt-dlp est un fork de youtube-dlc. Le dépôt a été créé le 26 octobre 2020, trois jours après le retrait de youtube-dlc par la RIAA. yt-dlp est un outil en ligne de commande permettant de télécharger des vidéos et de l'audio depuis les sites web compatibles. Le « p » fait référence à l'un des premiers mainteneurs principaux (`pukkandan`). Le projet est désormais géré par une organisation regroupant plusieurs mainteneurs, dont `coletdjnz`, `dirkf`, `Grub4K`, `bashonly` et `seproDev`. En janvier 2021, yt-dlp avait intégré la communauté de contributeurs de youtube-dlc et était devenu le fork dominant de youtube-dl. L'accent était mis sur les fonctionnalités et les améliorations non intégrées à la version originale.
Quelques points importants concernant le projet méritent d'être soulignés. yt-dlp utilise le versionnage calendaire ; ainsi, une étiquette comme `2026.03.17` correspond littéralement à la date de publication. La licence est The Unlicense, une cession explicite au domaine public que même la plupart des projets FOSS n'utilisent pas. Le dépôt compte 13 348 forks et 2 507 problèmes ouverts. Ubuntu 22.04 a remplacé youtube-dl par yt-dlp comme téléchargeur de vidéos par défaut, et Debian a suivi avec bookworm. La liste des sites pris en charge dans `supportedsites.md` recense actuellement plus de 1 500 entrées ; le code source lui-même inclut près de 1 800 modules d'extraction avec chargement différé. Arch, Fedora, NixOS, Homebrew, Chocolatey, Scoop et Winget l'intègrent tous. Vingt à trente mises à jour par an ont permis aux distributions de ne pas revenir à la version amont, plus lente.

Comment la suppression de yt-dlp par la RIAA en 2020 a rendu inévitable
La notification DMCA du 23 octobre 2020, déposée par la RIAA, s'appuyait sur l'article 1201 du titre 17 du code des États-Unis (17 USC § 1201), relatif à la clause anti-contournement. La RIAA soutenait que youtube-dl contournait le mécanisme de signature « rolling cipher » de YouTube, présenté comme une mesure technologique protégeant l'accès aux œuvres protégées par le droit d'auteur. GitHub a initialement accédé à la demande et supprimé le dépôt ainsi que dix-sept forks.
Ce qui suivit fut un exemple typique d'effet Streisand. Les développeurs republièrent le code source de manière toujours plus inventive, notamment via une image Twitter dont les couleurs des pixels encodaient l'intégralité du code. L'Electronic Frontier Foundation a adressé un courrier à GitHub le 16 novembre 2020. Son argument technique était simple : une signature exécutable par tout navigateur conforme aux normes ne constitue pas une « mesure technologique contrôlant effectivement l'accès » au sens de l'article 1201. youtube-dl utilise la signature ; il ne la viole pas.
GitHub a rétabli le dépôt le jour même. La plateforme a également promis un fonds de défense des développeurs d'un million de dollars et s'est engagée à procéder à un examen technique et juridique manuel de chaque retrait en vertu de l'article 1201. Cet épisode a catalysé la création de yt-dlp. Le dépôt de cette nouvelle branche apparaît dans l'historique des commits trois jours après le retrait. Personne ne savait encore si GitHub reviendrait sur sa décision. Les développeurs souhaitaient une garantie.
Installez yt-dlp sur Windows, macOS et Linux.
On oublie souvent la deuxième partie de l'installation, et on s'étonne ensuite que la fusion plante. Certes, yt-dlp peut lire un flux vidéo depuis n'importe quel site compatible. Mais pour une qualité vidéo et audio optimale ? Des chapitres intégrés ? Un remuxage MP4 ? Tout cela est géré discrètement par `ffmpeg` et `ffprobe`. Si vous omettez ces deux modules, votre première tentative avec `bv*+ba/b` affichera un message incompréhensible avant de planter. Donc : installez-les tous les deux, systématiquement.
Pour Windows, j'utilise winget. Installez-le avec `winget install yt-dlp.yt-dlp`, puis avec `winget install Gyan.FFmpeg`. Scoop fonctionne aussi si vous l'utilisez déjà ; Chocolatey également. Si un gestionnaire de paquets vous semble superflu, le fichier `yt-dlp.exe` est disponible sur GitHub Releases : placez-le dans un dossier, ajoutez ce dossier à votre variable d'environnement PATH, et le tour est joué.
Pour les utilisateurs de Mac, la version simplifiée est la suivante : `brew install yt-dlp ffmpeg`. Une seule ligne de commande suffit. Et c’est tout.
La prise en charge de yt-dlp varie selon les distributions Linux. Debian l'intègre directement dans ses archives principales. Arch le propose dans le répertoire `extra`. Fedora le reçoit via les canaux standards. Le problème réside dans le délai : lorsqu'une faille de sécurité est détectée sur YouTube, les mises à jour des distributions accusent généralement un retard de plusieurs jours. La solution consiste à installer yt-dlp via Python, ce qui est le meilleur moyen de télécharger les vidéos le jour même de la mise en place d'un correctif : `python -m pip install -U yt-dlp` sur tout système disposant de Python 3.9 ou version ultérieure. Cette commande effectue également la mise à jour sur place. L'option curl-et-chmod est toujours mentionnée dans la documentation (`sudo curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -o /usr/local/bin/yt-dlp && sudo chmod +x /usr/local/bin/yt-dlp`), mais il est conseillé de ne l'utiliser qu'en dernier recours.
Après l'installation, `yt-dlp -U` met à jour pip et les copies binaires ; il ignore volontairement les copies effectuées par le gestionnaire de paquets. Choisissez une méthode d'installation et conservez-la. L'association de ffmpeg et ffprobe est indispensable.
Commandes yt-dlp de base que vous utiliserez réellement
Le guide minimal est concis. La commande de base, `yt-dlp URL`, fonctionne dans la plupart des cas. Tout le reste nécessite un ou deux paramètres supplémentaires.
Avant de télécharger une vidéo YouTube, exécutez `yt-dlp -F URL` pour voir les options disponibles. La sortie liste tous les formats vidéo, tous les flux audio et tous les flux pré-fusionnés trouvés par l'extracteur, ainsi que les codecs et les tailles de fichier. La plupart des utilisateurs passent ensuite directement à `yt-dlp -f "bv*+ba/b" URL`. Ce sélecteur signifie « meilleur flux vidéo et meilleur flux audio ; si les deux ne sont pas séparés, le meilleur flux combiné sera utilisé ». C'est la syntaxe de sélection de format phare de yt-dlp et il est utile de la mémoriser. Ajoutez `--merge-output-format mp4` pour forcer le format mp4 ; ajoutez `-x --audio-format mp3` pour n'utiliser que l'audio. Pour les sous-titres, `--write-subs --sub-langs en` récupère les sous-titres officiels, et `--write-auto-subs` utilise la piste générée automatiquement s'il n'y a pas de sous-titres écrits par un humain.
Pour les listes, l'option `-a urls.txt` lit une URL par ligne et constitue la méthode standard pour télécharger plusieurs vidéos en une seule fois. L'option `--playlist-items 1-10,15,20-` permet de découper une liste de lecture. L'option `--download-archive seen.txt` conserve un historique des téléchargements effectués, ce qui permet d'ignorer les éléments déjà téléchargés lors des prochaines exécutions. L'archivage des téléchargements est la méthode la plus simple pour télécharger des listes de lecture et des chaînes entières progressivement, sans avoir à les retélécharger. Le nom des fichiers de sortie suit un modèle. La chaîne `-o "%(channel)s/%(upload_date>%Y-%m-%d)s — %(title)s.%(ext)s"` génère des noms de fichiers datés et regroupés par chaîne dans le dossier de votre choix. Le résultat est compatible avec les bibliothèques Plex et Jellyfin. L'option `-P` permet de modifier le répertoire de destination. L'option `--restrict-filenames` impose un format ASCII pour garantir la compatibilité entre les systèmes de fichiers. Et `--print filename` permet de prévisualiser ce que yt-dlp écrirait avant le début du processus de téléchargement.
Si un téléchargement se lance au lieu de se télécharger, cela signifie que votre navigateur ouvre le lien avant que yt-dlp ne le prenne en charge. Transmettez l'URL comme argument littéral, ou mettez-la entre guillemets, puis exécutez yt-dlp depuis le terminal.
Fonctionnalités avancées : post-processeurs, SponsorBlock, cookies
Au-delà des fonctionnalités de base, yt-dlp offre une surface d'expression étonnamment vaste. Les options ci-dessous sont celles qui ont le plus d'importance en pratique.
| Catégorie | Drapeau | Utiliser |
|---|---|---|
| tri par format | `-S "+taille,+br,res:1080"` | Privilégiez les fichiers plus petits en 1080p. |
| Post-traitement | `--embed-thumbnail --embed-metadata --embed-chapters --embed-subs` | Incorporez les illustrations, les tags, les chapitres et les sous-titres dans le fichier. |
| Bloc de sponsor | `--sponsorblock-mark all` / `--sponsorblock-remove sponsor,selfpromo` | Marquer ou supprimer les sections de sponsoring dans les vidéos YouTube |
| Authentification | `--cookies-from-browser firefox` | Utiliser les cookies de votre navigateur ; compatible avec Chrome, Brave, Edge, Safari, Opera, Vivaldi, Chromium et Whale. |
| Enregistrement en direct | `--live-from-start --hls-use-mpegts` | Enregistrez une diffusion en direct depuis le début, même si vous la rejoignez en cours de route. |
| Vitesse | `--concurrent-fragments 8` | Téléchargements parallèles de fragments HLS ou DASH |
| Téléchargeur externe | `--downloader aria2c` | Transfert manuel vers aria2c pour le parallélisme |
| Plugins | `~/.yt-dlp/plugins/` | Extracteurs et postprocesseurs personnalisés intégrés |
L'intégration de SponsorBlock est utile. Cette option exploite la base de données communautaire de SponsorBlock. Elle signale les marqueurs de chapitre ou supprime purement et simplement les sections sponsorisées des vidéos YouTube. L'option `--cookies-from-browser` lit les cookies des profils de navigateur, y compris les conteneurs Firefox, ce qui constitue la méthode la plus propre pour télécharger du contenu payant ou nécessitant une connexion. Pour les téraoctets d'archives volumineuses, le passage au téléchargeur externe aria2c améliore sensiblement la vitesse de téléchargement sur les réseaux où le fenêtrage TCP est le facteur limitant. Enfin, l'option `--split-chapters` permet de diviser le contenu vidéo par chapitre en fichiers distincts, ce qui est pratique lorsqu'un seul téléchargement regroupe plusieurs interventions. yt-dlp prend également en charge l'option `--video-multistreams` pour combiner les pistes vidéo lorsque le site en propose plusieurs, bien que cela soit rare.
Le système de plugins mérite une section dédiée. yt-dlp détecte automatiquement les modules Python placés dans `~/.yt-dlp/plugins/` (ou installés via `pip` avec le point d'entrée `yt-dlp-plugins`) et les charge comme extracteurs ou postprocesseurs. C'est ainsi que les sites atypiques sont pris en charge sans attendre de correctif. C'est également ainsi que les plugins du fournisseur PoToken, présentés ci-dessous, s'intègrent.
La situation de PoToken et de SABR en 2025-2026
YouTube a passé l'année 2025 à compliquer la vie de yt-dlp. Deux changements expliquent pourquoi une installation parfaitement fonctionnelle peut soudainement commencer à dysfonctionner en 2026.
PoToken est la solution la plus importante. Chaque requête vidéo nécessite désormais un jeton de preuve d'origine (PoToken). Ce jeton est lié à la vidéo, expire rapidement et est également lié à la session. L'extraction manuelle ne fonctionne plus depuis plusieurs mois. En revanche, un petit module complémentaire appelé `bgutil-ytdlp-pot-provider` fonctionne ; il génère des jetons à la demande et l'appel principal yt-dlp les récupère automatiquement. Le wiki de yt-dlp propose un guide intitulé « Guide des jetons PO » qui explique la configuration. Sans ce module, les requêtes sont renvoyées avec une qualité réduite ou sont tout simplement bloquées, et yt-dlp risque de ne pas fonctionner correctement, même pour des vidéos lues dans votre navigateur trente secondes auparavant.
Le SABR est le deuxième élément à prendre en compte. Il s'agit du débit adaptatif côté serveur de YouTube. Jusqu'en 2025, l'extracteur web renvoyait uniquement des formats compatibles SABR, ce qui perturbait le processus de téléchargement normal. La solution consiste généralement à modifier les arguments de l'extracteur et à utiliser les cookies d'un navigateur connecté. Les discussions à suivre pendant l'élaboration de cette solution sont les tickets #12482, #14307, #14390, #16082 et #13968. En résumé : yt-dlp fonctionne toujours avec la grande majorité du contenu public de YouTube, mais en 2026, une commande qui « fonctionne tout simplement » nécessitera souvent un fournisseur PoToken, des cookies à jour et un peu de patience.

Statut juridique de yt-dlp en 2026 : États-Unis, Allemagne, UE
La réponse juridique est une question de compétence, et le constat est clair : rien n'a encore été définitivement réglé.
Aux États-Unis , aucun tribunal ne s'est prononcé spécifiquement sur le cas de yt-dlp. L'affaire de la RIAA de 2020 constitue le précédent le plus proche et s'est soldée par une annulation extrajudiciaire. La neuvième version triennale de la règle 1201 du Bureau du droit d'auteur des États-Unis est entrée en vigueur le 28 octobre 2024 et restera en vigueur jusqu'au 28 octobre 2027. Elle a reconduit les exemptions existantes et en a ajouté une pour la recherche sur la fiabilité de l'IA, mais n'a pas instauré d'exemption générale pour le contournement des systèmes de gestion des droits numériques (DRM) dans le cadre de l'archivage vidéo personnel. Le problème structurel de la section 1201, qui criminalise les outils modifiant les DRM indépendamment de l'intention, persiste.
En Allemagne , le litige porte sur la responsabilité des hébergeurs plutôt que sur le logiciel lui-même. Le tribunal régional supérieur de Hambourg a rejeté l'appel d'Uberspace, hébergeur du site `youtube-dl.org` basé à Mayence, le 27 novembre 2024. Cette décision confirme un jugement de première instance de 2023 selon lequel les hébergeurs peuvent être tenus responsables des sites qui font la promotion d'outils de contournement. Cette jurisprudence n'interdit pas directement yt-dlp, mais elle rend l'hébergement en Allemagne risqué pour tout projet qui affiche ouvertement des fonctionnalités de contournement.
Au niveau de l'UE , la réglementation sur les services numériques (DSL) normalise les procédures de notification et de retrait (articles 16 et 17), mais ne réglemente pas les logiciels de téléchargement. Aucune décision européenne n'oblige les hébergeurs à bloquer yt-dlp. L'utilisation personnelle de yt-dlp sur son propre contenu ne constitue pas un obstacle juridique dans ces juridictions. Il en va de même pour les contenus pour lesquels l'auteur a donné son autorisation. Les difficultés résident dans la distribution et l'interaction avec les systèmes de protection du flux.
interfaces graphiques et l'écosystème de téléchargement au sens large
Tout le monde n'apprécie pas l'interface en ligne de commande, et celle de yt-dlp n'est pas un atout marketing. yt-dlp est un téléchargeur de vidéos parmi d'autres, mais il constitue le moteur principal de la plupart des interfaces graphiques modernes de téléchargement de vidéos. Stacher est l'interface graphique multiplateforme la plus aboutie. Tartube est une alternative Python/GTK. yt-dlg est un fork communautaire dédié à yt-dlp. Tube-Archivist est un serveur Docker auto-hébergé pour l'archivage de chaînes ; il permet de télécharger des vidéos depuis différents sites web de manière planifiée. YTDL-Material est une interface web auto-hébergée. ytdl-sub est un outil de configuration YAML déclaratif, populaire auprès des utilisateurs de Plex et Jellyfin. JDownloader 2 intègre yt-dlp via un plugin. Chaque outil propose sa propre interface de sélection de vidéos et son propre panneau d'options de téléchargement, mais le gros du travail incombe à yt-dlp.
| Outil | Statut (2026) | Portée | Licence |
|---|---|---|---|
| yt-dlp | Actif, mises à jour hebdomadaires | Plus de 1 800 sites vidéo/audio | Sans permis |
| youtube-dl | Lent, dernière mise à jour en septembre 2021 | YouTube + ~1 000 sites | Sans permis |
| galerie-dl | Actif | Galeries d'images ; possibilité d'appeler yt-dlp pour la vidéo | GPLv2 |
| lien de flux | Actif | Flux en direct transmis à un joueur | BSD-2 |
La règle de base : yt-dlp pour les téléchargements d’archives, streamlink pour la diffusion en direct sur un lecteur, gallery-dl pour les sites riches en images.
Sécurité : où télécharger yt-dlp et comment repérer les contrefaçons
Les seules sources sûres sont les versions publiées sur GitHub, PyPI (via `pip install yt-dlp`), les paquets de distribution officiels et les principaux gestionnaires de paquets Windows (Winget, Scoop, Chocolatey). Les sites tiers proposant le téléchargement de yt-dlp contiennent souvent des logiciels publicitaires, des mineurs de cryptomonnaie ou des binaires modifiés. Par le passé, Windows Defender a signalé le fichier `yt-dlp.exe`, distribué via PyInstaller, comme étant un cheval de Troie (Trojan:Win32/Wacatac.B!ml) (problèmes n° 7532 et n° 15415). Il s'agit de faux positifs. Les bases de données de signatures sont généralement nettoyées en quelques jours. Les petits projets open source comme yt-dlp dépendent entièrement de leurs mainteneurs bénévoles. Les dons en cryptomonnaie via des plateformes comme Plisio constituent un moyen sûr, et résistant à la débanquerie, pour les contributeurs internationaux de recevoir du soutien.
Voici un exemple concret. Supposons que vous souhaitiez télécharger une vidéo YouTube sur votre ordinateur pour une présentation. La commande est `yt-dlp -f "bv*+ba/b" --merge-output-format mp4 URL`, ce qui vous garantit le format de téléchargement approprié. yt-dlp est une version dérivée de youtube-dl, dotée de davantage d'extracteurs. Parmi ceux-ci, plusieurs permettent de télécharger une vidéo lorsque la version originale ne fonctionne plus. Grâce à son système de plugins, yt-dlp couvre des sources plus spécifiques et accepte l'option `-a urls.txt` pour télécharger des vidéos depuis différents sites web. La liste des sites compatibles avec yt-dlp est disponible dans le fichier `supportedsites.md`.