Wednesday, November 23, 2016

Small Summary of the Debian cloud sprint in Seattle

Last week I was In Seattle for the first Debian cloud team sprint The aim of it was to streamline the producing of official Debian ready to use images for various cloud providers.
The three biggest cloud providers were there (Google, Amazon, Microsoft Azure), and my humble self was here because of the work I have been doing producing Debian base boxes for Vagrant.
 During the three days the spring took we did the following:
* Reviewed the current state of cloud images and their build tools
After a demonstration of the vmdebootstrap and fai-diskimage creation tools, agreed we should try fai-diskimage as a default tool. Since a consensus here seemed to be reached I refrained myself from advocating packer or virt-install too much 
 * Reviewed the current state of cloud-init in Debian and 
considering its non working state in stable, thought about an upgrade in Debian Stable
Agreed about having unattended super axes by default inside the team,and proposed it to debian-devel
 * Reviewed all the bugs of the debian-cloud virtual package.
As with probably every so sprint, getting to bring all the people in one room brings a lot of synergies which couldn't happen on a mailing list. Also we noticed a lot of interest for Debian from the respective cloud providers which is interesting considering Debian is "only" a community based distribution.
Seattle is also a nice town, with lots of pine trees and bicycle lanes, looked to me like Canada, a troll statue(?) though I didn't have the time to see that much of it.

Sunday, November 20, 2016

Créer un clip vidéo (waveform) pour n'importe quel mp3 avec ffmpeg/avconv

J'avais envie de créer pour une collection de fichiers audio une vidéo  affichant une courbe audio, afin d'avoir quelque chose de mieux à afficher sur youtube qu'un bête logo.
( le resultat final est visible ici: )

En utilisant ffmpeg et son filtre "showvaves", on arrive a un résultat assez convaincant.

ffmpeg -i mon_fichier.wav -filter_complex "[0:a]showwaves=s=720x576:mode=cline:rate=12:scale=log:colors=Black|LightBlue,format=yuv420p[v]" -map "[v]" -map 0:a -c:v libx264 -c:a aac -b:a 192k ma_video.mp4

Cette commande va créer a partir d'un fichier wav un video au format mp4, en utilisant les bons codecs que recommande youtube (x264 pour la video, aac pour l'audio)
La vidéo sera en résolution DVD ce qui est largement suffisant a mon avis pour le web, mais vous pouvez remplacer 720x576
par 1920×1080 si vous voulez absolument du full hd.

Maintenant que l'on a une belle courbe audio, pourquoi ne pas ajouter une image en fond ?
Cette fois ci nous allons utiliser le filtre "blend" avec un fichier mon_logo.jpg, qui devra être à la même résolution que le fichier audio (ici 720x576 donc) L'image sera ici en arrière plan, car mon_logo.jpg est specifié en deuxième paramètre sur la ligne de commande.

ffmpeg -i ma_video.mp4 -i mon_logo.jpg -filter_complex "blend=all_mode=overlay:all_opacity=0.7" ma_video_logo.mp4