Catégories
Web

Mes « marques ta-pages » de la semaine

Marques-pages
Catégories
Gstreamer Open-source Planet-libre Video Web

Encodage de vidéo WebM en ligne de commande

Le format multimédia WebM fait beaucoup parler de lui ces derniers temps. Sous l’impulsion de Google, il a pour objectif de devenir le standard libre pour la diffusion de fichier vidéo sur Internet. Sans entrer dans les polémiques de qualité et des problèmes de licence, nous allons dans ce billet voir comment encoder un vidéo dans un format WebM en ligne de commande en utilisant le framework GStreamer, fourni en standard sous GNU/Linux.

WebM, c’est quoi donc ?

En fait WebM est un conteneur multimédia, une enveloppe au même titre que OGG, MP4  ou AVI. Quand on parle de fichiers au « format WebM », cela sous entant l’utilisation des codecs audio Vorbis et vidéo VP8 (racheté il y a quelques mois par Google à la societé On2).

Avant de tester l’encodage d’un fichier WebM sur votre distribution GNU/Linux. Sous Ubuntu, il faut d’abord vérifier que vous disposez de la dernière version PPA de GStreamer:

sudo add-apt-repository ppa:gstreamer-developers

sudo aptitude update

sudo aptitude upgrade

sudo aptitude install gstreamer0.10-x gstreamer-tools gstreamer0.10-plugins-base gstreamer0.10-plugins-good gstreamer0.10-plugins-bad gstreamer0.10-plugins-bad-multiverse gstreamer0.10-plugins-ugly gstreamer0.10-plugins-ugly-multiverse gstreamer0.10-ffmpeg gstreamer0.10-alsa gstreamer0.10-sdl

Enfin on vérifie que l’on a les bons plugins:

# gst-inspect | grep webmmux

matroska: webmmux: WebM muxer

 

# gst-inspect | grep vp8enc

vp8: vp8enc: On2 VP8 Encoder

 

gst-inspect | grep vorbisenc

vorbis: vorbisenc: Vorbis audio encoder

Passons maintenant aux choses sérieurses…

Encodage au format WebM

Pour mes test j’ai utilisé une bande annonce du film « Prince of persia » en qualité HD 1080p récupérée sur le site HDTrailers.

J’utilise ensuite la pipeline (ligne de commande) suivante pour effectuer l’encodage:

gst-launch -t filesrc location=pp_rltA_1080.mov ! progressreport \

! decodebin name=decoder decoder. \

! queue ! audioconvert ! vorbisenc quality=0.5 \

! queue ! webmmux name=muxer decoder. \

! queue ! ffmpegcolorspace ! vp8enc quality=5 speed=2 \

! queue ! muxer. muxer. ! queue ! filesink location=pp_rltA_1080-Q5.webm

La qualité vidéo par défaut (option quality=5) n’est pas terrible, on obtient de meilleurs résultats en l’augmentent. Voici un tableau comparatif:

Format Codecs Taille Aperçu (clique pour agrandir)
Source HQ .mov Audio: AAC 48 Khz
Video: H.264
126 Mo
WebM Audio: Vorbis 

Video: VP8 « Quality 5 »

24 Mo
WebM Audio: Vorbis 

Video: VP8 « Quality 6 »

30 Mo
WebM Audio: Vorbis 

Video: VP8 « Quality 7 »

40 Mo
WebM Audio: Vorbis 

Video: VP8 « Quality 8 »

61 Mo
WebM Audio: Vorbis 

Video: VP8 « Quality 9 »

73 Mo
WebM Audio: Vorbis 

Video: VP8 « Quality 10 »

92 Mo

Je trouve que la paramètre quality=7 est un bon compromis taille/qualité. Il faut noter que la source est d’un  qualité nettement supérieure (je ne connais pas les paramètre H.264 utilisés).

Comparaison avec les codecs Theora et H.264

Pour compléter ce petit test de WebM, nous allons comparer maintenant le résultat obtenu avec le paramètre quality=7 et les codecs Theora (avec une qualité égale à 7) et X.264 (avec une qualité de 23 équivalente).

Voici les lignes de commandes utilisées, pour l’encodage en WebM (VP8/Vorbis):

gst-launch -t filesrc location=pp_rltA_1080.mov ! progressreport \

! decodebin name=decoder decoder. \

! queue ! audioconvert ! vorbisenc quality=0.5 \

! queue ! webmmux name=muxer decoder. \

! queue ! ffmpegcolorspace ! vp8enc quality=7 speed=2 \

! queue ! muxer. muxer. ! queue ! filesink location=pp_rltA_1080-Q7.webm

puis en OGG (Theora/Vorbis):

ffmpeg2theora -v 7 –optimize pp_rltA_1080.mov -o pp_rltA-1080-Q7.ogg

et enfin en MP4 (X.264/FAAC):

x264 –tune animation –crf 23 -o pp_rltA-1080-Q7.mp4 pp_rltA_1080.mov

On obtient les résultats suivants:

Format Codecs Taille Aperçu (clique pour agrandir)
WebM Audio: Vorbis 

Video: VP8 « Quality 7 »

40 Mo
OGG Audio: Vorbis 

Video: Theora « -v 7 »

57 Mo
MP4 Audio: AAC 

Video: X.264 « CRF 23 »

56 Mo

Que peut on en déduire ? Niveau qualité, le format H.264 garde une longueur d’avance (mais pour combien de temps). Theora est en dessous. Par contre le taux de compression est bien meilleur avec le codec VP8 mais encore faut il être sur que l’on peut comparer les paramètres utilisés…

A vous de vous faire une idée !

Conclusion

Bien que « jeune » ce format de fichier semble avoir un bel avenir. Surtout si Google arrive à l’imposer comme un « standard industriel » (sic). Avec des leviers comme YouTube et Google Chrome, j’ai peu de doute sur le résultat des courses qui ne se fera pas sur un plan technique mais sur la capacité de chacun de défendre son format.

Catégories
Image Reseau Web

9 cartes du réseau Internet

Pour commencer la semaine, quelques belles cartes du réseau Internet que j’ai trouvé sur la toile pour illustrer une présentation. Certaines sont plus belles qu’utiles mais elle valent toutes le coup d’œil.

Catégories
Reseau

Un nouveau livre sur Zabbix 1.8

Je suis en train de lire le dernier livre de Richards Olups sur Zabbix 1.8, l’outil de supervision réseau open-source qui apparait comme un sérieux concurrent du « mastodon » Nagios.

Ce manuel de référence, en Anglais, balaye toutes les fonctions de Zabbix en détaillant étape par étape l’installation, la configuration et l’utilisation.

Si vous voulez vous faire une idée par vous même, il est possible de télécharger gratuitement le deuxième chapitre au format PDF.

Je reviens rapidement vers vous dès que je trouve le temps de finir le livre !

PS: merci à Pack Publisher de m’avoir gracieusement fourni la version e-book de cet ouvrage.

Catégories
Open-source Video

Installation de FFMpeg avec support WebM sous Ubuntu

Plus la peine de tout celà… La version 0.6 de FFMpeg supporte nativement WebM !

WebM est un format multimedia qui risque de mettre tout le monde d’accord dans la « gueguerre » des codecs vidéos pour la diffusion sur le Web.

WebM est libre, gratuit, basée sur les codecs vidéo VP8 et audio Vorbis et il est soutenu par… Google.

Voici donc un script shell permettant d’installer ce nouveau format sur votre système Ubuntu: ffmpeginstall-with-webm.sh

et la procédure d’installation associée:

[shell]

wget http://svn.nicolargo.com/ubuntupostinstall/trunk/ffmpeginstall-with-webm.sh

chmod a+x ffmpeginstall-with-webm.sh

./ffmpeginstall-with-webm.sh

[/shell]

Le script fait les choses suivantes:

  • Installation de la dernière version de X.264 (git)
  • Installation du codec VPX (VP8) (git)
  • Installation de FFmpeg version SVN-23210 et le patch WebM en version RC3

Pour tester ce nouveau codec, vous pouvez utiliser la commande suivante:

[shell]

ffmpeg -i source.avi -f webm -vcodec libvpx destination.webm

[/shell]

Je reviendrai surement sur le sujet WebM, notamment pour parler qualité du codec vidéo VP8…

Catégories
Web

Mes « marques ta-pages » de la semaine

Quelques liens à découvrir pendant ma semaine et demi de congés ! 🙂
Retour du blog le mardi 25 mai !
Marques-pages
Catégories
Open-source Web

Spideroak, un sérieux concurrent à Dropbox

Spideroak est un service en ligne de sauvegarde, synchronisation et partage de données. La fonction qui m’intéresse particulièrement est de pouvoir synchroniser des répertoires entres plusieurs machines.

Spideroak fonctionne sur le principe suivant: on commence par installer le client Spideroak sur une machine (GNU/Linux, Mac OS X ou Windows). Au premier lancement, le client va créer un compte utilisateur auquel sera associé une clé de chiffrement permettant de s’assurer que vous serez le seul à pouvoir accéder à vos données (même la société Spideroak…). Il va ensuite vous demander le nom de votre machine (je vous conseille de choisir un nom facile à reconnaitre, surtout si vous avez plusieurs machines) et la liste des répertoires à sauvegarder. On se retrouve donc avec, sur le serveur,  une association « Nom de machine / Répertoire de données ». A partir du moment ou le client est installé sur au moins deux machines, on peut passer à l’étape de la configuration de la synchronisation.  Il suffit de choisir une source (« Nom de machine 1 / Répertoire de données X ») et une destination (« Nom de machine 2 / Répertoire de données Y »). A partir de ce moment là, toute modification (ajout, modification, suppression) d’un fichier dans le répertoire local Y de la machine 2 sera répercutée sur le répertoire X de la machine 1 (et vice et versa).

On voit ici la flexibilité de Spideroak par rapport à Dropbox. En effet, Dropbox ne permet que de synchroniser un seul répertoire (appelé Dropbox par défaut). Tandis qu’avec Spideroak, il est possible de synchroniser autant de répertoire que nécessaire, Par exemple, un répertoire « Documents » d’un PC sous Linux avec un répertoire « Mes Documents » d’un pauvre PC sous Windows. Dans le même ordre d’idée il est possible de sélectionner les répertoires à synchroniser sur un PC donnée: il n’est par exemple pas indispensable de stocker sa collection de photos sur son PC du boulot mais il peut être utile de l’avoir sur son PC portable perso…

Voici pour mieux comprendre un petit screencast ou je partage un répertoire « test » entre mes PC Desktop et Laptop:

Source du screencast au format H.264 (720p).
D’autres screencast proposées par Spideroak.

Tout comme avec DropBox, il est également possible d’accéder en lecture à ses données à partir d’un simple navigateur Web ou à partir d’une application iPhone.

Spideroak propose gratuitement 2 Go de stockage (comme Dropbox), par contre l’offre payante est plus compétitive car on a 100 Go pour $10 par mois (ou $100 à l’année). Il faut ensuite compter $10 par tranche de 100 Go supplémentaire.

La société Spideroak ne distribue pas son client sous licence libre (ce qui est bien dommage mais il y a des chances que cela change dans le futur). Par contre elle met a disposition, sous licence GPLv3, une liste de logiciels développés autour de ce projet.

Cliquer ici pour installer et tester Spideroak sur votre machine.

J’attends vos retours !

Catégories
Image Open-source Systeme

Mon desktop du moment

Voici mon bureau sous Ubuntu 10, sans applications:

Mon bureau sous Ubuntu 10.04 (sans appli) on Twitpic

avec applications:

Mon bureau sous Ubuntu 10.04 (avec appli) on Twitpic

Quelques informations:

  • Ubuntu Desktop 10.04
  • Thème Ambiance
  • Wallpaper: Petroleum night
  • Screenlets: DigiClock, ClearCalendar, WaterMark
  • Applications: FireFox 3.6.3, Empathy 2.30, Pino 0.2.7

Et vous ? Cela donne quoi ?

Partager vos desktops sous TwitPic et laisser un commentaire avec le lien !

Catégories
Web

Mes « marques ta-pages » de la semaine

Marques-pages

Catégories
Hardware Open-source

Installation Ubuntu Serveur 10.04 sur HP Proliant DL160 G6

Voici le bloc note de l’installation de la dernière version d’Ubuntu « Server » (Lucid 10.04) sur un HP Proliant DL160 G6.

En route…