PROJET AUTOBLOG


Le Kernel Panique (Kpanic)

Archivé

source: Le Kernel Panique (Kpanic)

⇐ retour index

Récupérer une vidéo flash (Youtube/Dailymotion/…) en 2 commandes.

samedi 20 octobre 2012 à 15:02

Voilà un « vieux » hack que j’utilise depuis des lustres, j’aurais pu le partager depuis longtemps ^^’
Testé sur Firefox et Chromium, ne fonctionne que sur Firefox.

1. Dans votre navigateur lancez la vidéo, puis lancez la commande suivante. Elle permet de récupérer tout les fichiers ouverts par libflashplayser.so (dans le processus sandbox plugin-container de firefox). En « greppant » « Fl », on récupère la vidéo que Flash est en train de recevoir et d’enregistrer dans /tmp, que celui-ci marque comme deleted pour qu’on ne voit rien dans /tmp !

lsof -p $(pgrep -f flash) | grep Fl

Récupérez le numéro de processus et le numéro du descripteur de fichier.

2. Enregistrer le flux (qui est en fait stocké dans /tmp) avec tail. « -c +0 » pour commencer du début.

tail -c +0 /proc/$PID/fd/$FID > test.flv

Un exemple complet :

lsof -p $(pgrep -f flash) | grep Fl
> plugin-co 6721 benpro   15u   REG               0,27 52137275   611934 /tmp/FlashXXaRl44C (deleted)
tail -f -c +0 /proc/6721/fd/15 > /tmp/test.flv

Quand la vidéo est fini, control+c, et voilà :)
On peut aussi faire un cp, mais si la vidéo se finit sur votre navigateur, souvent, la vidéo est supprimé ! Le tail permet d’éviter cela.