Lavalink 4 lit YouTube grâce à un plugin, pas tout seul : sa source YouTube intégrée est obsolète et doit rester désactivée. Installez le plugin de source YouTube (dev.lavalink.youtube:youtube-plugin), mettez youtube: false sous lavalink.server.sources et activez le plugin sous plugins.youtube. Sur nos serveurs, cela ne suffisait pas : YouTube demandait une connexion. Connectez donc le plugin une fois avec un compte Google de rechange et conservez le refresh token. Avec la version 1.18.2, la connexion seule ne suffit pas non plus (voir « Version 1.18.2 et la connexion » plus bas). Sur l’un de nos propres serveurs Lavalink, le 6 novembre 2026, avec la 1.18.2, les correctifs non publiés et un serveur de chiffrement, le plugin a trouvé les 12 morceaux de test mais n’a pu en lancer aucun avant la connexion, et a lancé chacun des 10 tests terminés après elle (15 secondes chacun, sans salon vocal).
Pourquoi YouTube échoue sur un serveur Lavalink
La documentation du plugin indique que YouTube signale certaines requêtes et leur demande de « se connecter pour confirmer que vous n’êtes pas un robot ». C’est ce que nous avons vu sur nos serveurs. Sans connexion, le plugin trouvait chaque morceau de test par recherche et par lien, puis chacun de ses clients était refusé au moment de le lire :
Client [WEB] failed: This video requires login.
Client [TVHTML5_SIMPLY] failed: Sign in to confirm you’re not a bot
Client [TVHTML5] failed: This video requires login.
Client [WEB_EMBEDDED_PLAYER] failed: This video is unavailable
dev.lavalink.youtube.AllClientsFailedException: (yts.version: 1.18.2) All clients failed to load the item.
Dans notre test, la recherche fonctionnait sans connexion ; la lecture, non. Votre bot voit le morceau démarrer puis échouer aussitôt avec une exception de piste.
Deux autres choses interrompent la lecture de temps en temps, et la documentation du plugin traite les deux :
- Le chiffrement de la signature. YouTube change souvent le code qui déverrouille ses flux. Le plugin peut confier ce travail à un serveur de chiffrement distant (
remoteCipher), comme le projet open source yt-cipher. - Les clients. Le plugin parle Ă YouTube comme plusieurs applications (
WEB,MWEB,ANDROID_VR,TVet d’autres) et les essaie dans l’ordre où vous les listez. SeulTVutilise la connexion pour la lecture, et seuls les clients prévus pour cela peuvent chercher.
Version 1.18.2 et la connexion
La connexion est utilisée par le client TV, et le client TV de la version 1.18.2 a un problème connu : depuis août 2026, YouTube lui répond « The page needs to be reloaded » (ticket n° 226 dans le dépôt GitHub du plugin, toujours ouvert le 6 novembre 2026). Les développeurs du plugin ont fusionné un correctif le 19 août 2026, un correctif pour les flux sans durée le même jour et un correctif des connexions au chiffrement le 17 septembre 2026, mais aucune version les contenant n’était sortie le 6 novembre 2026. Le README du plugin explique comment charger à la place une build d’un commit précis : le hash du commit comme version, avec snapshot: true. Regardez d’abord la page des versions pour en trouver une plus récente.
Installer le plugin sur votre propre Lavalink
- Ajoutez le plugin Ă
application.ymlsouslavalink.plugins, avec la version des releases GitHub du plugin. La 1.18.2 (27 juillet 2026) est la plus récente au 6 novembre 2026. Elle a le problème du client TV décrit plus haut : lisez cette section avant de choisir la version :
lavalink:
plugins:
- dependency: "dev.lavalink.youtube:youtube-plugin:1.18.2"
snapshot: false
server:
sources:
youtube: false
- Activez le plugin et donnez-lui ses clients :
plugins:
youtube:
enabled: true
allowSearch: true
clients:
- MUSIC
- ANDROID_VR
- WEB
- WEBEMBEDDED
- TV
oauth:
enabled: true
- Ajoutez au besoin un serveur de chiffrement sous
plugins.youtube.remoteCipher(urletpassword), comme le décrit le README du plugin. - Démarrez Lavalink. La console affiche un code et une adresse : ouvrez
https://www.google.com/device, saisissez le code et autorisez l’accès avec un compte Google de rechange. Les auteurs du plugin préviennent que le compte peut être résilié : n’utilisez donc jamais le vôtre. - La console affiche ensuite
OAUTH INTEGRATION: Token retrieved successfully. Store your refresh token as this can be reused.avec le token entre crochets. Copiez-le dansapplication.ymlpour que le node ne redemande pas après un redémarrage :
oauth:
enabled: true
refreshToken: "PASTE_THE_TOKEN_HERE"
- Redémarrez Lavalink. Avec un token valide, il journalise
YouTube access token refreshed successfully.
Le refresh token ouvre ce compte Google : gardez application.yml privé.
Sur une offre Lavalink PlayNHost
L’installation fait déjà la partie plugin : le plugin YouTube 1.18.2 avec correctifs PlayNHost est dans plugins sous le nom youtube-plugin-1.18.2-playnhost1.jar, la source YouTube propre à Lavalink est désactivée, la connexion est activée, et le plugin utilise un serveur de chiffrement que nous exploitons sur notre propre réseau. Les correctifs sont les changements du client TV, du chiffrement et de la durée des flux que les développeurs du plugin ont fusionnés en août et septembre 2026 mais pas encore publiés. Vous ne faites qu’une chose : la connexion.
- Ouvrez votre serveur dans le panel et cliquez sur Démarrer dans Console.
- Repérez la ligne
OAUTH INTEGRATION: To give youtube-source access to your account, go to https://www.google.com/device and enter code XXXX-XXXX, ouvrez l’adresse, saisissez le code et autorisez l’accès avec un compte Google de rechange. - Quand la console affiche
Token retrieved successfully, copiez le token entre crochets, arrêtez le node et ajoutez-le sousoauth:dansapplication.yml, dans Files, comme à l’étape 5 ci-dessus. Respectez l’indentation. - Redémarrez le node et vérifiez que
YouTube access token refreshed successfullyapparaît.
Laissez plugins.youtube.remoteCipher.url tel quel : le panel l’écrit à chaque démarrage, et l’adresse ne fonctionne que depuis nos serveurs. Une réinstallation conserve votre application.yml, avec le token dedans.
Que YouTube serve ou non un morceau à un serveur, c’est la décision de YouTube, et elle change sans préavis. Nous gardons le node et le plugin en état de marche ; nous ne pouvons pas promettre ce que YouTube autorise. Si vous ne voulez pas de YouTube du tout, mettez enabled: false sous plugins:, youtube:.
Messages YouTube dans la console
| Message | Ce que cela signifie et que faire |
|---|---|
OAUTH INTEGRATION: To give youtube-source access to your account, go to https://www.google.com/device and enter code ... | Le plugin attend la connexion. Suivez les étapes ci-dessus. |
OAUTH INTEGRATION: The device token has expired. OAuth integration has been canceled. | Le code n’a pas été saisi à temps. Redémarrez le node pour en obtenir un nouveau. |
YouTube access token refreshed successfully | Le refresh token enregistré fonctionne. |
Refreshing YouTube access token failed | Le token ne fonctionne plus, souvent parce que le compte a été déconnecté ou que le token a été mal copié. Supprimez refreshToken, redémarrez et reconnectez-vous. |
This video requires login. ou Sign in to confirm you’re not a bot après Client [...] failed: | YouTube refuse de servir le serveur sans connexion. Connectez le plugin, ou vérifiez que le token enregistré fonctionne encore. |
All clients failed to load the item. | Tous les clients de votre liste ont été refusés. Les lignes Client [...] failed: à côté donnent la raison de chacun. |
The page needs to be reloaded du client TVHTML5 | Le problème du client TV de la version 1.18.2 décrit plus haut. |
Autres moyens d’avoir de la musique sans YouTube
Le même node peut lire depuis des sources qui n’exigent aucune connexion. Sur nos offres, Bandcamp, Twitch, Vimeo, Niconico et les liens http directs sont activés dès le départ. Des plugins comme LavaSrc ajoutent d’autres sites, dont certains demandent vos propres clés d’API : Comment ajouter des plugins à Lavalink.
Ensuite
- Configurer le node : Comment héberger un serveur Lavalink 24h/24 (24/7).
- Connectez votre bot : Comment connecter votre bot Discord Ă Lavalink.
- Autres erreurs : Erreurs Lavalink et leur signification.
- Offres : Hébergement Lavalink.



