Avez-vous déjà essayé de lire toutes les vidéos d’une chaîne YouTube, par exemple pour écouter de la musique ? Si oui, vous aurez probablement constaté qu'il n’y a sur YouTube pas d’option pour générer une playlist facilement depuis une chaîne.
Pour solutionner ce problème, des développeurs indépendants ont créé le site YouTube Jukebox, qui permet grâce à l’API YouTube de générer la playliste à partir du nom d’un utilisateur de YouTube. C’est très pratique, mais jusqu’à récemment, le nombre de vidéos était limité à 100. Problème d’API YouTube. Pire, pendant plus d’une semaine, le site a été indisponible car YouTube avait supprimé l’accès à l’ancienne version de ladite API.
Une version PC de YouTube Jukebox
Pour ne plus être tributaire d’un service tiers ou d’une API YouTube, j’ai donc créé une application PC qui fait la même chose. Elle permet de récupérer toutes les vidéos de l’utilisateur YouTube de votre choix, et de les lire via le lecteur qui vous convient.
Le lecteur VLC est recommandé, car il permet de base de lire une vidéo depuis son adresse sur YouTube. Une fonction intégrée à YouTube Jukebox permet de mettre à jour facilement la fonction de lecture YouTube de VLC. Vous pouvez bien entendu utiliser n’importe quel autre lecteur de médias, du moment qu’il gère les playlistes de liens YouTube.
Comment ça marche
Afin de ne pas être tributaire d’une quelconque API sur YouTube, qui requiert un compte développeur, une clé d’API, et impose des limitations plus ou moins handicapantes, l’application YouTube Jukebox s’appuie à la place sur l’interface web publique du site :
https://www.youtube.com/user/<Nom de la chaîne>/videos
L'image de profil de la chaîne et la liste des vidéos sont ainsi récupérés depuis le code de la page web.
La première fois qu’une chaîne est chargée, la liste complète des vidéos est récupérée, ce qui peut prendre quelques minutes si la chaîne contient une très grande quantité de vidéos. Une fois cela fait, la liste est sauvegardée dans le fichier de configuration, ce qui permet de charger très rapidement la chaîne lors de sa prochaine consultation : seules les nouvelles vidéos sont ajoutées à la liste, le reste étant réutilisé directement.
Après avoir appliqué un tri comme la lecture aléatoire ou en sens inverse, une liste de lecture au format m3u est générée, et celle-ci est automatiquement ouverte dans le lecteur de médias choisi par l’utilisateur. Comme certains changements sur YouTube peuvent casser la lecture des vidéos par VLC, le script de lecture est mis à jour relativement rapidement, mais la version à jour ne sera disponible pour tout le monde qu’au moment où la prochaine version de VLC sera disponible. Afin de ne pas avoir à attendre, YouTube Jukebox permet de mettre automatiquement à jour le script de votre installation de VLC directement depuis leur dépôt GitHub : youtube.lua.
Bien sûr, certains changements futurs sur YouTube pourront aussi casser la récupération de la liste des vidéos par YouTube Jukebox, et il faudra mettre à jour mon application pour rétablir ses fonctionnalités. C’est l’inconvénient de ne pas utiliser d’API officielle 😅
Utilisation en ligne de commande
Parce que les interfaces graphiques c’est bien, mais ça ne fais pas tout dans la vie, surtout pour les utilisateurs de Linux, YouTube Jukebox propose une utilisation en ligne de commande. Ainsi, vous pouvez installer l’environnement d’exécution Mono et regarder la liste des commandes disponibles avec :
mono YouTubeJukebox.exe --help
Téléchargement
Si l’application vous intéresse, vous pouvez la télécharger ci-dessous :
Télécharger YouTube Jukebox v1.0.1
Versions précédentes de l'application :
Télécharger YouTube Jukebox v1.0.0
Ce projet est ouvert à toute contribution sur le dépôt GitHub YouTube Jukebox 😉