Pour tagger mes vidéos en masse avec un logo, j’ai recherché un peu sur Internet ce qui pouvait être fait en ligne de commande.
Sous Debian Jessie, il n’y a plus ni mencoder ni ffmpeg. J’avais des scripts avec le premier, faut les changer…
En remplacement, il faut installer libav-tools et utiliser la commande avconv
.
CF : https://libav.org/avconv.html
Pour avoir un maximum de compatibilité avec les lecteurs vidéo et autres platines multimédia, j’encode la sortie vidéo en MPEG-4.
Il faut bien sûr un logo de la taille attendue sur la vidéo, au format PNG. Par exemple une image de 100px par 100px avec de la transparence :
Pour insérer le logo sur la vidéo en haut à gauche (à 20px du bord) :
avconv -i $input -strict experimental -threads auto -vcodec libx264 -crf 20 -g 2
-vf "movie=$logo [watermark];[in][watermark] overlay=20:20 [out]" $output
Pour insérer le logo sur la vidéo en haut à droite :
avconv -i $input -strict experimental -threads auto -vcodec libx264 -crf 20 -g 2
-vf "movie=$logo [watermark];[in][watermark] overlay=main_w-overlay_w-
20:20 [out]" $output
Pour insérer le logo sur la vidéo en bas à gauche :
avconv -i $input -strict experimental -threads auto -vcodec libx264 -crf 20 -g 2
-vf "movie=$logo [watermark];[in][watermark] overlay=20:main_h-overlay_h-
20 [out]" $output
Pour insérer le logo sur la vidéo en bas à gauche :
avconv -i $input -strict experimental -threads auto -vcodec libx264 -crf 20 -g 2
-vf "movie=$logo [watermark];[in][watermark] overlay=main_w-overlay_w-
20:main_h-overlay_h-
20 [out]" $output
Pour insérer le logo sur la vidéo en bas au milieu :
avconv -i $input -strict experimental -threads auto -vcodec libx264 -crf 20 -g 2
-vf "movie=$logo [watermark];[in][watermark] overlay=(main_w/2)-50
:main_h-overlay_h-
20 [out]" $output
La valeur -50, c’est la taille du logo divisé par 2.
Pour réduire la résolution de la vidéo, et donc la place et la qualité :
avconv -i $input -strict experimental -threads auto -vcodec libx264 -crf 20 -g 2
-vf "movie=$logo [watermark];[in] scale=1280:720 [cropped],[cropped][watermark] overlay=(main_w/2)-50
:main_h-overlay_h-
20 [out]" $output
Pour réduire le bitrate, et donc encore la place et la qualité :
avconv -i $input -strict experimental -threads auto -vcodec libx264Â -b:v 10000k -bt:v 5000k
-vf "movie=$logo [watermark];[in] scale=1280:720 [cropped],[cropped][watermark] overlay=(main_w/2)-50
:main_h-overlay_h-
20 [out]" $output
Il ne reste plus qu’à faire le tour de toutes les vidéos à tagger… Une bonne vieille boucle en bash
sur un find
de la mort dans le dossier des vidéos… et beaucoup de temps…