RTMPDump: enregistrer un flux rtmp
Certains sites diffusent des vidéos avec le protocole Real Time Messaging Protocol (RTMP). Pour diverses raisons, il est utile de récupérer ce flux pour le lire hors ligne ou le convertir dans un autre format.
La plupart des lecteurs vidéos comme VLC permettent la lecture des flux RTMP mais il n'est pas possible d'avancer la vidéo (on peut seulement mettre en pause). C'est pas toujours pratique, surtout quand on a besoin de revoir un moment précis de la vidéo.
Pour voir la vidéo dans de bonnes conditions, il ne me restait plus qu'à récupérer le flux via RTMPDump, un utilitaire en ligne de commande.
Installation
RTMPDump est dans les dépots officiels Debian, pour l'installer, lancer la commande:
apt install rtmpdump
Utilisation
Il existe de nombreuses options à RTMPDump mais je n'utilise qu'une seule commande pour récupérer ma vidéo:
rtmpdump -r 'rtmp://url-du-flux.com/video.flv' -o '/tmp/video.flv' --resume ;
- -r url: url du flux à capturer.
- -o output: pour définir le nom du fichier de sortie.
- --resume: pour reprendre un enregistrement incomplet.
La fin du téléchargement devrait afficher "Download complete". On peut maintenant lire la vidéo hors ligne ou l'encoder si besoin. Il est possible de l'intégrer dans un script pour récupérer automatiquement ses vidéos.
Bien évidemment il faut connaître l'URL du flux. Si on ne la connaît pas, on peut utiliser par wireshark (c'est plutôt bien documenté).
Ressources
Pour connaître toutes les options de RTMPDump:man rtmpdump
2016 nIQnutn CC-BY