[Soci SLIP] come aggiungere un logo ad un video con ffmpeg
llcfree
llcfree a gmail.com
Dom 17 Giu 2012 19:10:53 CEST
Magari lo sapete fare tutti, ma io ci ho impiegato una vita a scoprire
come aggiungere il logo della licenza creative common ad un filmato.
Da terminale, su una sola riga:
ffmpeg -sameq -i test_noaudio.mp4 -vf "movie='88x31.png' [logo];
[in][logo] overlay=10:10 [out]" out.mp4
^^^
questo comando produce un video (out.mp4) della stessa qualita' (-sameq)
del file di input (test_noaudio.mp4) dopo aver aggiunto il logo
(88x31.png) in alto a sinistra, con un margine di 10 pixel in
orizzontale e in verticale rispetto al bordo.
ffmpeg2theora out.mp4
^^^
questo comando genera out.ogv a partire da out.mp4
Per piazzare il logo in una posizione diversa, bisogna pensare un
momentino, tenendo conto che main_w e main_h si riferiscono,
rispettivamente, alla larghezza (Width) e all'altezza (Height) della
finestra del video, mentre overlay_w, overlay_h si riferiscono alla
larghezza e all'altezza del logo.
In alto a destra:
ffmpeg -i test.mp4 -vf "movie='88x31.png' [logo]; [in][logo]
overlay=main_w-overlay_w-10:10 [out]" out.mp4
In basso a sinistra:
ffmpeg -i test.mp4 -vf "movie='88x31.png' [logo]; [in][logo]
overlay=10:main_h-overlay_h-10 [out]" out.mp4
In basso a destra:
ffmpeg -i test.mp4 -vf "movie='88x31.png' [logo]; [in][logo]
overlay=main_w-overlay_w-10:main_h-overlay_h-10 [out]" out.mp4
In tutti i casi, con un margine di 10x10 pixel dal relativo bordo.
Occhio che io sono impazzita perche' usavo una versione di ffmpeg che
non aveva i filtri (-vf) e continuava a darmi errore. Il bello di ffmpeg
e' che ad ogni versione cambia quasi tutto e i suggerimenti in rete si
sognano ben dal dire a quale versione si riferiscono, come se
quest'informazione fosse un optional... Comunque, la versione che sto
usando io e' quella di debian squeeze (dopo aver aggiunto non-free,
ahime' ...):
ffmpeg version , Copyright (c) 2000-2011 the FFmpeg developers
built on Nov 23 2011 10:04:36 with gcc 4.4.5
configuration: --enable-libdc1394 --prefix=/usr --extra-cflags='-Wall
-g ' --cc='ccache cc' --enable-shared --enable-libmp3lame --enable-gpl
--enable-libvorbis --enable-pthreads --enable-libfaac --enable-libxvid
--enable-postproc --enable-x11grab --enable-libgsm --enable-libtheora
--enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libx264
--enable-libspeex --enable-nonfree --disable-stripping --enable-avfilter
--enable-libdirac --disable-decoder=libdirac --enable-libschroedinger
--disable-encoder=libschroedinger --enable-version3 --enable-libopenjpeg
--enable-libvpx --enable-librtmp --extra-libs=-lgcrypt --disable-altivec
--disable-armv5te --disable-armv6 --disable-vis
libavutil 50. 43. 0 / 50. 43. 0
libavcodec 52.123. 0 / 52.123. 0
libavformat 52.111. 0 / 52.111. 0
libavdevice 52. 5. 0 / 52. 5. 0
libavfilter 1. 80. 0 / 1. 80. 0
libswscale 0. 14. 1 / 0. 14. 1
libpostproc 51. 2. 0 / 51. 2. 0
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile
options] outfile}...
Loredana
Maggiori informazioni sulla lista
Soci