Télécharger les vidéos sur le site de Musique Plus

Je n’ai pas la télévision par câble: pas besoin puisque j’ai Internet! Seul notre serveur multimédia est branché sur l’écran du salon. Je suis quelques émissions “classiques” sur Radio-Canada et Musique Plus et, heureusement, les deux permettent l’écoute d’une partie de leur programmation sur le web. Cependant, ces sites ne sont pas du tout adaptés à la navigation “de salon” (sans clavier, sur un grand écran). Je dois donc me débrouiller pour télécharger les épisodes sur mon serveur afin de les écouter plus tard avec XBMC.

Deux façons de s’y prendre:

Méthode 1337

  1. Démarrer une capture de packets avec Wireshark
  2. Visiter la page où se trouve le vidéo dans Firefox
  3. Attendre quelques secondes que la connexion se fasse et que le vidéo démarre
  4. Arrêter la capture et le vidéo
  5. Identifier le bon stream dans lequel se trouve la requête RTMP
  6. Identifier la demande de média dans le stream
    wireshark
  7. Séparer les paramètres de la connexion

    rtmpargs

    Tout ce qui a de plus simple.

  8. Mettre tout ça dans rtmpdump et se croiser les doigts pour que ça fonctionne

    rtmpdump

    Quelles sont les chances que ça marche du premier coup?

Tout ça est quand même compliqué pour le néophyte qui veut juste écouter son émission préférée le matin en allant à la job l’école. Heureusement, il existe un logiciel facilitant cette procédure et qui permet de sauter les étapes 1, 4, 5, 6, 7 et 8.

Méthode facile

  1. Démarrer RTMPDumpHelper en mode administrateur
  2. Visiter la page où se trouve le vidéo dans Firefox
  3. Attendre quelques secondes que la connexion se fasse et que le vidéo démarre

BOOM!

boom2

681690583001_2659993004001_MNT20130830.mp4 oh oui!

C’est aussi simple que ça! RTMPDumpHelper s’occupe de l’analyse du trafic et relaie les informations à rtmpdump: exactement ce que j’expliquais précédemment.

Bonus

Shoutout à mon collègue Benjamin Vanheuverzwijn qui a écrit Tou.tv-console-application, un excellent script Python permettant de télécharger le contenu de tou.tv

Oui mais est-ce légal

OUI! Parce que ça revient au même que d’enregistrer une émission de télévision sur une cassette VHS avec un enregistreur, ce qui est parfaitement légal au canada.

Ce qui est illégal, c’est de briser les protections présentes pour protéger le contenu (Digital Rights Management, DRM). Ces mécanismes sont présents sur les DVDs ou les vidéos achetés sur iTunes, par exemple. Dans notre cas précis, rtmpdump ne fait que demander du contenu disponible gratuitement qui n’est pas protégé (à la place du lecteur Flash de Musique Plus).

Comme le protocole RTMP ainsi que les données qui sont échangées ne sont pas protégés par un mécanisme de protection, l’utilisation de cet outil pour télécharger les émissions de Musique Plus est légal*.
* Ne représente pas un conseil juridique.

Maintenant je suis tenté d’en faire un vidéo d’une minute et de le soumettre à Musique Plus pour leur semi-concours “Geek Recherché“.  Je ne suis pas certain s’ils me trouvaient très drôle 😛

Mise-à-jour

2018-03-21: Ça se fait automagiquement avec youtube-dl