2 points par GN⁺ 2025-03-11 | 1 commentaires | Partager sur WhatsApp
  • Sur certains comptes YouTube, lorsqu’on se connecte via YouTube on TV, on observe une expérimentation ou un test A/B où même les vidéos ordinaires ne sont servies qu’au format DRM via le client Innertube TVHTML5
  • Ce phénomène ne se limite pas à yt-dlp : en testant avec le même compte sur des clients officiels YouTube TV comme la PS3, un navigateur web ou l’Apple TV, les formats vidéo ne sont également fournis qu’avec DRM
  • Comme yt-dlp se comporte actuellement comme YouTube on TV lorsqu’il demande les données des vidéos YouTube, les comptes concernés par cette expérimentation reçoivent aussi l’erreur This video is DRM protected pour des vidéos ordinaires
  • Les journaux de reproduction montrent qu’en consultant la vidéo aqz-KE-bpKQ avec les cookies Firefox et le paramètre youtube:player-client=tv, une erreur de protection DRM se produit, et que si l’on affiche les formats non lisibles via une option développeur, la mention DRM apparaît sur l’ensemble des formats audio et vidéo
  • Le ticket est fermé, et la page renvoie vers les PR associées #14122 et #13539, mais le texte ne précise ni la méthode de correction ni le comportement final

Sur certains comptes, les formats du client TV ne sont fournis qu’avec DRM

  • Il a été signalé que, sur certains comptes YouTube, des vidéos ordinaires ne disposent que de formats DRM sur le client Innertube tv ou TVHTML5
  • Le problème semble lié à une expérimentation ou un test A/B déployé par YouTube sur certains comptes, sans qu’on puisse affirmer qu’il s’applique à tous les utilisateurs
  • Dans une clarification, il est indiqué que certains comptes connectés à YouTube on TV voient toutes les vidéos YouTube comme si elles étaient protégées par DRM
  • YouTube on TV est l’interface ou l’application grand écran utilisée sur les téléviseurs et consoles de jeu, accessible aussi via https://www.youtube.com/tv avec un user-agent de TV ou de console

Impact sur yt-dlp

  • yt-dlp inclut actuellement un mode de requête des données vidéo YouTube comme YouTube on TV, ce qui le rend affecté par cette expérimentation
  • Avec la combinaison de ce compte et du client tv, yt-dlp considère même les vidéos ordinaires comme des vidéos protégées par DRM
  • La commande de reproduction utilise les cookies du navigateur Firefox et force le client TV avec --extractor-arg youtube:player-client=tv
    • URL cible : https://www.youtube.com/watch?v=aqz-KE-bpKQ
    • La version de yt-dlp visible dans le journal est nightly@2025.03.07.232704
    • Le résultat d’exécution est ERROR: [youtube] aqz-KE-bpKQ: This video is DRM protected

Même résultat sur les clients officiels YouTube TV

  • En testant plusieurs clients officiels YouTube TV avec le même compte, seuls des formats DRM sont aussi fournis
    • PS3
    • navigateur web
    • Apple TV
  • Le phénomène observé ne se limite donc pas à un problème d’implémentation propre à yt-dlp

Liste des formats vérifiée via une option développeur

  • Après avoir rendu visibles les formats DRM d’une manière nécessitant une modification du code, puis utilisé l’option --allow-un, la liste des formats non lisibles s’affiche
  • Dans la sortie affichée, la mention DRM apparaît sur l’ensemble des entrées audio et vidéo
    • Formats audio seuls m4a : 148, 149, 148-drc, 149-drc
    • Formats vidéo seuls mp4 et webm : de 144p à 2160p60
    • Par exemple, le format 558 est affiché comme 3840x2160 60fps, vp9, environ 1.27GiB, DRM, 2160p60, TV, webm_dash
  • --allow-un est une option de débogage destinée aux développeurs, et le journal affiche un avertissement indiquant qu’une liste ou un téléchargement de formats non lisibles a été demandé

État du ticket et travaux liés

  • Le ticket GitHub est à l’état Closed
  • La page relie les PR associées #14122 et #13539
  • Le texte fourni n’inclut pas le détail des changements de ces deux PR, leur fusion éventuelle, une méthode de contournement ou la résolution finale

1 commentaires

 
GN⁺ 2025-03-11
Avis de Hacker News
  • Il faudrait expliquer ce que signifie réellement ce problème
    Le point central touche à des notions difficiles à comprendre même pour un lectorat généraliste à l’aise avec la technique ; au final, les gens risquent de ne retenir que des mots-clés et de partir dans des discussions peu productives
    Plus précisément, j’aimerais comprendre ce que sont les clients innertube, le client innertube tv, TVHTML5, un « format DRM », ce que veut dire que ce format est « disponible », et pourquoi c’est important lorsque ce n’est proposé qu’au client innertube tv

    • En résumé, YouTube est en train de tester en A/B un changement qui ne fournit à certains clients que des flux vidéo verrouillés par DRM
      Si c’est important, c’est parce que yt-dlp se fait passer pour ces clients en fonctionnement normal, et comme yt-dlp ne prévoit pas de prendre en charge le déchiffrement des vidéos verrouillées par DRM, ce changement pourrait casser tous les téléchargements de vidéos
      innertube est le nom de l’API YouTube privée, conçue pour être utilisée par plusieurs types de logiciels clients YouTube. Un exemple de bibliothèque est https://github.com/tombulled/innertube/, et yt-dlp dispose de son propre code client séparé
      Le client « tv » est l’un des types de clients ; on peut en voir un exemple ici : https://github.com/tombulled/innertube/blob/main/innertube/c...
      TVHTML5 est un client précis, distinct de TVLITE ou TVANDROID, et il semble que chaque téléviseur utilise un client TV et une API TV spécifiques
      Quand yt-dlp récupère une vidéo, il fait en gros semblant d’être l’un des clients pris en charge par innertube, récupère l’objet vidéo de plus haut niveau, puis analyse la liste des formats disponibles. Un format, c’est par exemple « MP4, 1080p, avec audio AAC » ou « Ogg, audio uniquement ». Par défaut, yt-dlp récupère le flux audio de meilleure qualité et le flux vidéo de meilleure qualité, puis les fusionne dans un seul fichier, mais cela peut se modifier dans la configuration
      Un format DRM est probablement un format protégé par Widevine https://en.wikipedia.org/wiki/Widevine, et yt-dlp a indiqué qu’il ne prendrait pas en charge son déchiffrement
      Dire qu’il est « disponible » signifie qu’il apparaît comme une option téléchargeable pour le client yt-dlp. Toutes les vidéos ne proposent pas tous les formats à tous les clients : si une vidéo n’a pas été envoyée en 4K, ou si le client ne prend pas en charge le décodage 4K, l’option 4K peut ne pas apparaître
      Dans le cas présent, cela signifie que ce type précis de client interne ne peut pas récupérer la vidéo, car lorsqu’yt-dlp fait la requête, il ne reçoit que des formats verrouillés par DRM. C’est notable parce que le client TV est un moyen d’obtenir des vidéos YouTube en haute qualité via l’API YouTube sans jeton de connexion YouTube valide. Plus bas dans l’issue, la personne qui l’a signalé indique que le client innertube « web » fonctionne si l’on fournit un jeton
  • La situation actuelle existe, au fond, parce que les gens s’en satisfont
    Beaucoup trouvent acceptable de ne pas posséder leurs films, leurs albums ou leurs livres, et ne comprennent pas ce que cela implique. Ceux qui le comprennent sont minoritaires
    Je ne suis pas opposé au streaming en soi, mais tous les fournisseurs devraient offrir la possibilité de posséder une copie numérique légale à un prix raisonnable. Par posséder, j’entends disposer d’un simple fichier multimédia sans DRM, lisible où l’on veut
    Il n’y a absolument aucun problème à payer pour posséder quelque chose, mais d’ici là je ne donnerai pas un centime à ces entreprises

    • Une heure de streaming représente 0,5 g de carbone ; à 6 heures par jour pendant 365 jours, cela fait 1 095 g par personne et par an
      Si l’on suppose que 2 milliards de personnes streament, cela fait 2 000 000 000 × 1 095 = 2 190 000 000 000 g, soit 2,19 millions de tonnes de dioxyde de carbone inutiles
      On pourrait donc voir le piratage comme plus écologique, puisqu’il ne faut le faire qu’une seule fois, et même comme une manière de sauver la planète
  • J’ai écrit un script qui télécharge mes chaînes suivies avec yt-dlp, les convertit en mp3 puis sert un flux podcast sur mon réseau local, ce qui a déjà fortement réduit mon temps passé dans l’app YouTube
    Si ça casse un jour, je devrai peut-être sortir pendant mon temps libre, mais tant que ça marche, j’espère que ça tiendra jusqu’au printemps

    • J’ai justement eu la même idée il y a quelques jours
      Je suis curieux de savoir quels outils tu utilises en plus de yt-dlp. Par exemple, ce que tu utilises pour générer et héberger le flux RSS
    • Si tu demandes à yt-dlp des fichiers audio uniquement, il me semble qu’il n’y a pas besoin de les convertir
    • Grâce au trio uBlock Origin, NewPipe et yt-dlp, je n’utilise plus l’app YouTube depuis des années
  • C’est vraiment une nouvelle affreuse
    Il était assez évident que ça finirait par arriver, et il semble aussi assez clair que cela fait partie d’une stratégie de très haut niveau de Google. Google investit massivement dans tout cela depuis des années, côté client comme côté serveur
    Pour moi, ça sent l’enshittification, mais plus largement on semble entrer dans une ère de technologies verrouillées et fermées. Vu l’ensemble du paysage, YouTube sans DRM en viendrait presque à paraître anachronique
    Comme la plupart des gens achètent volontiers des appareils qui limitent fortement ce qu’ils peuvent faire, je n’attends pas non plus de vraie réaction des consommateurs. Ceux que cela préoccupe vraiment risquent de devoir choisir entre se couper eux-mêmes du monde numérique, en acceptant la privation par principe, ou être forcés de rentrer dans la même boîte que les utilisateurs du plus petit dénominateur commun
    En supposant que les dirigeants de Google ne soient pas animés de mauvaises intentions, je me demande si l’IA n’a pas été le dernier déclencheur. Pour construire le fossé défensif de Gemini, il faut empêcher les collecteurs de données d’accéder aux vidéos YouTube, et la seule « vraie » façon de le garantir est d’y mettre des DRM. X/Twitter, Reddit, Stack Overflow, etc. ont pris des mesures similaires pour des raisons comparables. C’était sans doute quelque chose qu’ils voulaient faire de toute façon, donc l’IA est peut-être davantage un prétexte qu’une raison, mais ce n’est probablement pas un facteur dénué de sens

    • J’aimerais qu’il y ait un mouvement plus fort contre cette concentration du pouvoir de ces plateformes
      Nous sommes comme des grenouilles qui alimentent elles-mêmes le feu sous leur marmite
      Autrefois, on considérait que les DRM entraient en conflit avec les navigateurs parce qu’ils ne représentaient pas les utilisateurs. S’il fallait absolument des DRM, c’était à la plateforme de les imposer péniblement via un plugin externe comme Silverlight
      Quand Firefox a introduit l’extension EME, j’y ai vu le début de la fin. Si l’on transforme les DRM en simple interrupteur à activer, ils deviennent la norme plutôt que l’exception. Il y a des années déjà, on voyait des propositions absurdes comme des DRM pour les polices. Si une entreprise tient aux DRM, c’est à elle d’assumer le coût lié au fait de faire quelque chose que les navigateurs ne devraient pas prendre en charge nativement
      Le cauchemar vers lequel nous fonçons, c’est un monde où l’on ne peut mettre en cache qu’une très petite portion de vidéo à la fois, et où le matériel d’attestation TPM doit inclure un jeton dans chaque requête HTTP. Le navigateur devient simplement un décodeur câble logiciel
      Ils n’aiment pas non plus les URL, et s’ils veulent vous permettre de partager quelque chose, ils voudront vous faire accepter leurs conditions, par exemple en générant depuis l’app une URL assortie d’un hash expirant et d’une limite de consultations. Bien sûr, les influenceurs pourraient conserver des privilèges de partage illimités
      Depuis dix ans, cette infrastructure se met lentement en place, et ce ne sont pas des désagréments isolés, mais des clous dans le cercueil
    • La menace que les dirigeants comprennent est probablement l’IA
      Il existe aussi de très bons clients YouTube tiers comme GrayJay https://grayjay.app/
      Ces apps permettent de suivre dans une seule application des créateurs de plusieurs plateformes vidéo, ce qui est mauvais pour la dépendance à YouTube que Google souhaite
  • Pendant un temps, les vidéos MP4 incluant une piste audio, les itag 18 et 22, ont disparu, et les formats vidéo seuls comme les itag 136 et 137 semblaient privilégiés
    Dans ce cas, il fallait fusionner la piste audio et la vidéo avec ffmpeg. Récemment, il semble que l’itag 18 soit revenu

  • On dirait que YouTube lutte contre le téléchargement de vidéos
    Avec Tor, je reçois tous les jours un message du type « connectez-vous pour prouver que vous n’êtes pas un bot », et sans Tor je ne peux pas accéder à YouTube. Voir des pubs ou résoudre un captcha ne me dérangerait pas, mais YouTube a choisi la pire méthode

    • Récemment, l’app YouTube sur Amazon FireCube a commencé à demander de se connecter à chaque ouverture
      Il n’est pas nécessaire d’aller jusqu’à l’authentification, mais il faut choisir un profil
      Ça a commencé il y a quelques mois et je n’y avais pas trop réfléchi, mais maintenant je me dis que ce comportement était peut-être un signe avant-coureur de cette nouvelle poussée vers les DRM
      YouTube donne chaque jour davantage de raisons de l’éviter complètement
  • Justement, ici aussi YouTube m’a accueilli avec un message me demandant de « me connecter pour confirmer que je ne suis pas un bot afin de protéger la communauté »
    Il y a beaucoup de façons de resserrer la laisse
    Malheureusement, certaines personnes ne créeront jamais de compte, et d’autres n’utiliseront aucun système de DRM. Il faudra trouver un moyen d’accéder indirectement à cette abondance de contenus

  • J’aimerais qu’on me recommande des alternatives à YouTube pour découvrir de la musique lofi ou synthwave

  • On se demande ce qu’il en est pour les utilisateurs de Firefox
    Le DRM pris en charge par Firefox se contourne facilement ; YouTube va-t-il abandonner la prise en charge de Firefox ?

    • Pour l’instant, cela semble n’avoir été observé que sur une API de client TV spécifique utilisée par yt-dlp, et ne pas s’appliquer à toutes les vidéos YouTube
      Sur https://github.com/yuliskov/SmartTube/issues/4444, cela a aussi été vu sur des vidéos « réservées aux membres », mais là encore pas sur toutes les vidéos
      Il s’agit probablement de la différence entre DRM logiciel et DRM matériel, comme Widevine L3 et L1, ou PlayReady SL2000 et SL3000, mais ce n’est pas exactement une opposition Firefox contre Chrome. On sait que Firefox a aussi travaillé sur la possibilité d’utiliser un DRM matériel sous Windows, probablement via l’API Media Foundation
      Le pire scénario, comme on le voit avec des services tels que Netflix, consiste à ne fournir qu’une faible qualité aux navigateurs qui ne peuvent utiliser qu’un DRM logiciel, comme Firefox, et à chiffrer les meilleures qualités avec des clés qui ne peuvent être obtenues qu’avec un DRM matériel. Cela dit, on ne sait pas si YouTube ira jusque-là. Netflix ou Amazon ont des contrats avec les ayants droit qui exigent ce type de mesures de protection, mais heureusement, YouTube ne semble pas entretenir le même type de relation ni de contrat avec les « YouTubers »
      Ce que YouTube semble vouloir aujourd’hui, c’est réduire fortement le nombre de personnes qui regardent du contenu sans passer par le site web ou l’application, c’est-à-dire sans voir de publicité. Il est très probable que la cible soit moins les utilisateurs de yt-dlp que le nombre bien plus important de personnes qui s’appuient sur des sites YouTube-to-mp3 ou des outils simples similaires
      Le simple fait d’imposer un DRM logiciel peut suffire à casser ce type d’outils, au moins temporairement, et à ramener les utilisateurs vers la plateforme. Et si un mécanisme de « contournement du chiffrement » se retrouve intégré dans l’outil, il pourrait aussi être possible de poursuivre les développeurs, même si je ne suis pas juriste
    • On peut considérer que l’usage principal du DRM est de faire entrer légalement le système dans le champ du DMCA
      Dans ce cas, il y a de fortes chances que l’hébergement de yt-dlp sur GitHub, ainsi que sa distribution via des dépôts apt, pip, Homebrew, etc., prennent fin
    • Je pense que ce scénario est peu probable, mais d’autres services de streaming ont déjà eu pour précédent de ne fournir qu’une faible qualité aux clients qui ne prennent pas en charge le DRM ou qui ne leur conviennent pas
  • Dans le même registre, TubeArchivist vient de publier la v0.5, et le projet n’est officiellement pas en gel des fonctionnalités