PROJET AUTOBLOG


Planet-Libre

source: Planet-Libre

⇐ retour index

Comète : Youtube-dl ou l'alternative au plugin flash pour télécharger des vidéos

jeudi 10 janvier 2013 à 15:31

Utilisateur ravi et convaincu d'OpenBSD sur mon serveur perso et ceux du boulot depuis quelques années, j'ai récemment sauté le pas pour enfin installer également l'OS au poisson qui pique sur ma station de glandouille à la maison. Seulement voilà, pas de plugin "Flash pourri" pour OpenBSD en 64 bits...

Je me moque complètement de cette techno-crado et m'en passerais volontier mais étant aussi passionné par la musique, je passe quand même pas mal de temps à explorer Youtube à la recherche de jolies vidéos de grateux écœurants de virtuosité ou de concerts en tout genre. Je me suis donc mis en quête d'un petit outil simple comme je les aime et je suis tombé sur le fabuleux Youtube-dl.

C'est un outil écrit en Python qui s'utilise en ligne de commande et qui permet de télécharger les vidéos des sites suivants:

$ ./youtube-dl --list-extractors
youtube:playlist
youtube:channel
youtube:user
youtube:search
youtube
metacafe
dailymotion
video.google
video.google:search
photobucket
video.yahoo
video.yahoo:search
DepositFiles
facebook
blip.tv:user
blip.tv
vimeo
myvideo
comedycentral
escapist
collegehumor
xvideos
soundcloud
infoq
mixcloud
stanfordoc
mtv
Youku
xnxx
plus.google
arte.tv
generic

Et oui il sait gérer les playlists ! Ce qui veut dire que vous pouvez lui demander de télécharger l'ensemble des vidéos d'une playlist ou simplement les vidéos numéro n jusqu'à n+5.

Il s'utilise de la façon suivante: Pour une vidéo donnée, on commence par lui demander d'afficher la liste des formats et tailles disponibles:

$ ./youtube-dl -F "http://www.youtube.com/watch?v=IOvFXAg3oXQ"
[youtube] Setting language
[youtube] IOvFXAg3oXQ: Downloading video webpage
[youtube] IOvFXAg3oXQ: Downloading video info webpage
[youtube] IOvFXAg3oXQ: Extracting video information
Available formats:
44      :       webm    [480x854]
35      :       flv     [480x854]
43      :       webm    [360x640]
34      :       flv     [360x640]
18      :       mp4     [360x640]
5       :       flv     [240x400]
17      :       mp4     [144x176]

On peut alors télécharger la vidéo au format voulu:

$ ./youtube-dl -f 44 -t "http://www.youtube.com/watch?v=IOvFXAg3oXQ"

L'option -f permet, vous l'aurez compris, de spécifier le format et la taille désirés tandis que l'option -t indique que l'on souhaite nommer notre fichier final avec le titre de la vidéo.

Pour une playlist complète, j'utilise cette commande:

$ ./youtube-dl -A --prefer-free-formats \\
   -t -c  "http://www.youtube.com/playlist?list=PLB88BBE39FAF18365"

L'option -A numérote chaque fichier vidéo suivant l'ordre de la playlist, --prefer-free-formats vous permettra, comme son nom l'indique, de télécharger les vidéos dans un format libre de préférence, si disponible. Et enfin -c reprend le téléchargement là où il l'avait laissé en cas d'arrêt volontaire ou non (très pratique). A noter que par défaut, youtube-dl télécharge toujours la taille de vidéo la plus élevée pour le format choisi, sauf si elle est précisée.

Cet outil possède une pléthore d'options et je vous encourage à y jeter un œil via la commande:

 $ ./youtube-dl -h

Il est également possible de créer un petit fichier de config contenant les options les plus couramment utilisées dans ~/.config/youtube-dl.conf et listées comme ceci:

-t
--prefer-free-formats
--console-title

Alors là, c'est le moment où vous me dites: "Oui c'est bien joli tout ça mais c'est pénible de devoir télécharger la vidéo en entier avant de pouvoir la lire, au moins avec "flash pourri" on pouvait la voir en streaming...".

Vous avez parfaitement raison, et c'est pourquoi je vais vous donner une petite astuce. Vous allez avoir besoin d'installer Xdialog s'il ne l'est pas déjà sur votre machine ainsi que du très connu VLC. Ensuite, copier/coller le script suivant dans un fichier que vous appelez comme vous voulez. Je l'ai appelé yt:

#!/bin/sh
Xdialog --smooth --title "Youtube-dl" --inputbox "Entrez l'URL:"  8 60 2>/tmp/input.yt
MYURL=`cat /tmp/input.yt`
if [ -n "$MYURL" ]; then
    REALURL=`${HOME}/youtube-dl -t --prefer-free-formats -g $MYURL`
    cvlc --play-and-exit --no-video-title-show --network-caching=10000 $REALURL
fi

Rendez-moi tout ça exécutable à grand coup de :

$ chmod +x yt

Exécutez-le et vous verrez une petite fenêtre apparaître vous demandant de coller l'URL de la vidéo. Validez par Ok et attendez quelques secondes. Vous visionnerez alors votre vidéo via VLC et le tout en streaming. Vous pouvez bien sûr, associer l'exécution de ce script à un raccourci clavier pour plus de souplesse.

Voilà ! en espérant vous avoir rendu service ;)

PS: ah oui j'oubliais, youtube-dl marche sur les systèmes d'exploitation du bien (*BSD, Linux...) mais aussi sur l'OS aux fenêtres sales ainsi que l'OS à la pomme pourrie (oui je sais c'était petit et mesquin...désolé...) ;)

Gravatar de Comète
Original post of Comète.Votez pour ce billet sur Planet Libre.

dada : Kernel et Torvalds : WE DO NOT BREAK USERSPACE !

jeudi 10 janvier 2013 à 14:36

linuxtorvalds.jpg

Il y a des jours comme ça où il ne fait pas bon provoquer le taulier du kernel Linux : Linus Torvalds.

On ne brise jamais l'espace utilisateur !

Le mainteneur du "Media subsystème" du kernel, Mauro Carvalho Chehab, c'est fait salement moucher par le finlandais le plus connu de la communauté libre dans un mail qui ne laisse aucun doute quant à l'état du patron de Linux.

[EN]How long have you been a maintainer? And you *still* haven't learnt the first rule of kernel maintenance?

[FR]Depuis combien de temps es-tu un mainteneur ? Et tu n'as toujours pas appris la première règle de la maintenance du kernel ?

Qui est :

[EN]If a change results in user programs breaking, it's a bug in the kernel. We never EVER blame the user programs. How hard can this be to understand?

[FR]Si une modification provoque des problèmes dans les programmes de l'utilisateur, c'est une bogue du kernel. Nous ne blâmons JAMAIS les programmes de l'utilisateur. Est-ce si compliqué à comprendre ?

Et quand le mainteneur se défend :

[EN]Shut up, Mauro. And I don't _ever_ want to hear that kind of obvious garbage and idiocy from a kernel maintainer again. Seriously.

[FR]Ferme-la Mauro. Et je ne veux plus jamais entendre ce genre de sottises et d'idioties de la part d'un mainteneur. Sérieusement.

Quelques clés pour comprendre le comportement de Linus

Lorsqu'une modification est faite sur le kernel et qu'elle fout en l'air les programmes qui s'appuient sur ce dernier, ce n'est jamais la faute des programmes mais celle du patch appliqué au kernel. Ça parait quand même fichtrement logique, surtout quand le-dit patch contient une erreur grossière.

L'énervement vient aussi du fait que le mainteneur du kernel visé essaye de défendre le point du vue strictement opposé : le patch, il est tout beau, les programmes n'ont qu'a être adapté au kernel et il n'y aura pas de problème ! Il n'en fallait pas plus pour énerver Linus.

Ajoutez à cela que le boite mail de Linus contient des rapports d'erreur faisant l'écho d'un bogue touchant toutes les applications médias de KDE... Ou comment faire péter un environnement de bureau en claquant des doigts.

Quant à Mauro Carvalho Chehab, il est mainteneur du Kernel linux depuis quelques temps déjà puisqu'il explique ici qu'il a commencé à mettre les mains dedans en 2005. Ce n'est pas vraiment un jeune mainteneur qui se prend sa première soufflante suite à une première boulette.

La fin du mail de Linus :

[EN]The fact that you then try to make *excuses* for breaking user space, and blaming some external program that *used* to work, is just shameful. It's not how we work.

[FR]Le fait est que tu essayes de faire des "excuses" pour avoir brisé l'espace utilisateur tout en blâmant quelques programmes externes qui fonctionnaient, c'est tout simplement honteux. Nous ne travaillons pas comme ça.

Je vous laisse la dernière phrase de Linus, sans la traduire : 

Fix your f*cking "compliance tool", because it is obviously broken. And fix your approach to kernel programming.

Gravatar de dada
Original post of dada.Votez pour ce billet sur Planet Libre.

Articles similaires

Slobberbone : OwnCloud Client - Client portable Windows

jeudi 10 janvier 2013 à 14:00

Certains l'auront compris, je me suis mis à OwnCloud, Si ce n'est pas le cas, je vous invite à lire ou relire les billets suivants :

Ma femme souhaitant s'en servir à son travail, rencontre un soucis, Le poste est sous Windows, jusque là, c'est ok vu qu'il y a un client pour chaque OS : http://owncloud.org/sync-clients/, mais il réponds à certaines règles de sécurité qui n'autorise pas l'installation de logiciel et du coup impossible d'installer ce client.

Qu'a cela ne tienne ! J'ai installé le client Windows en version 1.1.4 via Wine sur ma Fedora. Une fois l'installation réalisée, j'ai extrait le répertoire d'installation de l'arborescence construite par Wine ! Et voilà le travail, il ne reste plus qu'à copier le dossier sur le client Windows et lancer le fichier owncloud.exe, le reste relève de la configuration, la même que lors de l'utilisation standard !

owncloud_windows_portable

Pour ceux que ça intéresse, voici l'archive de cette version 1.1.4 : owncloud.zip

Gravatar de Slobberbone
Original post of Slobberbone.Votez pour ce billet sur Planet Libre.

cpc6128 : Un nouveau tutoriel pour le langage Linotte !

jeudi 10 janvier 2013 à 10:13

La documentation du langage Linotte est le talon d’Achille du projet.

La chose est corrigée grâce au formidable travail de Wam, un contributeur actif sur le forum.

Voici une première version de son tutoriel : Documentation_Linotte_version_2_0_3_2_0.pdf

J’en profite pour annoncer la sortie de la version 2.0.3 qui corrige des bogues mineurs et puis en même temps, de vous souhaiter une bonne année 2013 !

Qu’elle soit riche en programmes !

Voici la liste des corrections depuis la version 2.0 :

-Correction : Bogue lors de l'utilisation de l'inférence et les espèces: texte vaut "${heure}"
-Correction : Le verbe Temporiser ne marche pas avec une valeur inférieur à une seconde
-Correction : Il est possible d'arrêter des appels récursifs (correction temporaire)
-Correction : Problème de clignotement de la toile avec la Pipette
-Correction : Bogue lors de l'utilisation de l'inférence : affiche "${heure}" + "."
-Correction : Le verbe Temporiser semble ne pas marcher dans certains cas
-Correction : Exemple Fibonacci ne fonctionne pas correctement avec un nombre n très grand
-Correction : Possibilité d'avoir des infobulles sur la boitetexte
-Evolution : Ajout de l'évènement contrôle-entrée sur la boitetexte

Gravatar de cpc6128
Original post of cpc6128.Votez pour ce billet sur Planet Libre.

Ploum : Je n’ai que faire de votre business model

mercredi 9 janvier 2013 à 23:59

Cassette audio

English translation available

Le monde change et j’en suis heureux. Un petit peu tous les jours, progressivement. Parfois en pire, souvent en mieux. Une des conséquence est que certains business ne sont plus rentables. Ou ne répondent plus à une demande. Ils doivent s’adapter ou faire faillite. C’est normal, on appelle ça l’évolution de la société.

Les exemples sont innombrables. L’électricité a rendu complètement marginale l’industrie de la bougie. Dans mon pays, le nucléaire et le pétrole ont mis au chômage des milliers de mineurs de charbon. Les vendeurs de glace ont complètement disparu suite à l’invention du frigidaire.

Mais soyons plus modernes. Que sont devenues ces femmes qui répondaient à des lignes téléphoniques érotiques surtaxées dont les publicités envahissaient la gazette locale durant mon enfance ? Et ces entreprises de rencontre par téléphone dont la pub radio me tourne encore en tête ? Comment ont réagi les imprimeurs de cartes routières face à l’arrivée du GPS ?

Le GPS, parlons-en. Alors qu’il s’agissait au départ d’une option pour les voitures de luxe, facturable entre 2000€ et 5000€ il y a à peine quelques années, les GPS portables comme Tomtom et Garmin ont changé la donne. Un GPS portable, plus performant au dixième du prix ! Il y a moins de 5 ans, ce fût une révolution.

Mais achèteriez-vous des actions Tomtom ou Garmin à l’heure où n’importe quel téléphone de 150€ fait également GPS ? Avec les cartes mises à jour en temps réel, les infos trafic et votre carnet d’adresses intégré ?

Toutes ces évolutions, nous les regardons de loin, les trouvant logiques jusqu’au jour où votre propre travail se trouve dans la ligne de mire. Après la phase de déni « Le public n’accrochera pas, cela ne concerne qu’une minorité », vous vous replierez sur l’argument massue et ses nombreux dérivés : « Tout travail mérite salaire, il faut bien vivre ».

Comme si vivre de votre travail actuel était un dû, une loi immuable de la nature. Vous avez gagné votre vie car vous fournissiez un travail pour lequel des clients étaient prêt à payer. Pour autant, cela ne vous donne aucun droit moral sur le futur. Si personne ne veut plus payer pour votre travail ou si les clients arrivent au même résultat sans payer, c’est à vous de vous réinventer. Ou de mettre la clé sous le paillasson.

Vous aurez alors le réflexe de vous tourner vers l’état, d’imaginer un moyen via lequel la collectivité vous subventionnera, vous et votre industrie. À cela je répondrais : si votre service est indispensable, comme l’enseignement, la culture, les soins médicaux, alors effectivement l’état doit le prendre en charge sans le moindre impératif de rentabilité. Mais s’il ne l’est pas, il n’existera que si une clientèle assez nombreuse est prête à payer. Soyons réalistes : l’état devrait-il subventionner les bougies, les cartes routières et les GPS déliquescents ?

À ce point de la discussion, vous me mettrez certainement au défi de trouver une autre manière de gagner de l’argent avec votre travail, de vous créer un nouveau business model. Comme si le fait que je ne puisse pas en trouver soit la preuve ultime que rien ne devrait changer.

Vous savez quoi ? Je n’ai même pas envie de chercher. C’est votre travail, pas le mien. Si j’ai une idée de business model, je créerais une boîte, j’entreprendrais. Et si je n’en trouve pas, on ne pourra en tirer aucune conclusion. Peut-être que dans votre cas il n’y a plus de business model possible. Tout comme les vendeurs de glace : le métier est mort. Je vous souhaite le contraire.

Votre contre-attaque portera sur les frais liés à votre activité et en me détaillant le nombre d’heures que vous passez sur votre travail. Comme s’il s’agissait d’une justification de votre valeur. Mais rien ne vous oblige à faire ce travail. Personne ne vous force à continuer. Vous pensez être payé pour votre travail. En réalité nous travaillons pour être payé. Ne confondons pas cause et effet.

En désespoir de cause, vous vous rabattrez sur le chantage : si vous n’êtes plus payé, votre travail disparaîtra. Vous irez jusqu’à affirmer que votre industrie toute entière disparaîtra. Et bien, essayons. Si votre travail est si indispensable, une menace de fermeture devrait délier les bourses. Mais ne comptez pas trop dessus : les cimetières sont remplis de gens irremplaçables.

Au final, vous vous contenterez de me dire que j’ai tort et de me clouer le bec avec une réplique bien sentie. Mais quel que soit votre travail, il sera bientôt obsolète. Dans un an ou dans dix. Le monde change. Certains pratiquent une adaptation continue tellement subtile qu’ils ne s’en rendent pas compte. D’autres se réinventent périodiquement. Certains s’accrochent de toutes leurs forces, tentant d’empêcher l’évolution du monde pour ne pas se remettre en question. Érigeant en morale universelle ce qui n’est que vénalité.

Je crois que nous sommes tous d’accord pour dire que les personnes de cette dernière catégorie ne mérite plus notre argent.

 

Photo pas MKFautoyère

English translation available

Gravatar de Ploum
Original post of Ploum.Votez pour ce billet sur Planet Libre.

I'm richer than you! infinity loop