Convertisseur Youtube : Comment ça marche ?

Il existe différents convertisseurs Youtube qui sont gratuitement accessibles en ligne. Ceux-ci permettent de convertir les vidéos Youtube en un autre format de fichier (mp3, mp4, 3GP, etc.) que l’internaute pourra ensuite télécharger sur son smartphone ou son ordinateur. Mais qu’en est-il exactement du mode de fonctionnement d’un convertisseur youtube ?

Une approche identique utilisée par tous

S’il existe plusieurs sites web intégrant des convertisseurs Youtube différents, tous fonctionnent par contre selon le même principe :

  • 1. obtenir un lien direct vers la vidéo Youtube à télécharger,
  • 2. télécharger un des liens du fichier : Youtube stocke des fichiers audios m4a ou webm sur ses serveurs,
  • 3. appeler le convertisseur avec des paramètres prédéfinis,
  • 4. et enfin, renvoyer le fichier final à l’utilisateur.

Obtention du lien direct et téléchargement de la vidéo Youtube

La première étape consiste à obtenir les informations de base concernant la vidéo à télécharger. Ces informations comprennent une liste des vidéos connexes, les commentaires, les liens vers des emplacements d’où la vidéo peut être téléchargée, etc. En effet, les pages Youtube respectent une convention qui permet de déterminer l’emplacement de la vidéo à partir d’une clé (le paramètre ?v=”…” dans l’url de la page fournie par l’utilisateur).
L’application web demande ensuite le fichier des emplacements de téléchargement et reçoit un flux XML contenant des liens vers des formats (vidéos et audios) de différentes qualités. Enfin, le format voulu est téléchargé et converti par le codec intégré au site web.
Youtube tente de masquer autant que possible les emplacements de téléchargement de ses vidéos afin de limiter la violation des droits d’auteurs. Tous les liens ainsi téléchargés sont donc temporaires, ce qui implique de nombreuses étapes sous-jacentes durant le processus.
Tout ce qui précède est réalisable à l’aide des outils habituels de développement que sont un langage de programmation web comme PHP ou Python, un codec comme Lame Mp3 Encoder ou FFmpeg, et un SGBD (système de gestion de Base de Données) comme Mysql ou MongoDB si nécessaire.

Contraintes liées aux sites ayant un taux élevé de téléchargements

Les petits sites (ceux qui ne reçoivent que quelques demandes de téléchargements toutes les 10 minutes) peuvent se contenter d’exécuter un simple script en Python et rediriger la sortie vers le serveur hôte.
Pour les sites qui reçoivent des milliers de requêtes par jour et utilisant par conséquent une architecture distribuée, l’utilisation de Youtube-DL (un programme de base en ligne de commande) avec du code modifié peut être une solution. Des copies de fichiers peuvent ensuite être réalisées vers un serveur de stockage (Voir : API Youtube mp3 )  pour réduire les requêtes vers Youtube.

Enfin, il faut noter que la conversion de vidéos Youtube vers d’autres formats de fichiers comme le mp3 est illégale sauf pour les vidéos qui ne sont pas protégées par le droit d’auteur.