SMsoft – informatica e dintorni

varie su OSX, GNU/Linux e l'Open Source

ffmpeg: creare un video con un’immagine ed un file audio

Nel caso serva creare un file video a partire da un’immagine ed un file audio è possibile utilizzare il famoso ffmpeg nel seguente modo:

ffmpeg -i file.mp3 -loop_input -f image2 -i foto.jpg -t 180 video.avi

In questo caso il file audio è file.mp3, l’immagine è foto.jpg ed il video finale sarà video.avi.
In particolari le opzioni servono a:
-loop_input: ripete l’immagine per un tempo indefinita.
-f image2 -i: crea un video da un’immagine
-t 180: la durata dell’audio in secondi

enjoy

Installare su Debian Lenny una versione di ffmpeg aggiornata e con piu’ codec

La versione di ffmepg presente nei repository ufficiali Debian, al momento è la r11872 con la seguente configurazione:

configuration: --enable-gpl --enable-libfaad --enable-pp --enable-swscaler
 --enable-x11grab --prefix=/usr --enable-libgsm --enable-libtheora
--enable-libvorbis --enable-pthreads --disable-strip --enable-libdc1394
--disable-armv5te --disable-armv6 --disable-altivec --disable-vis --enable-shared
--disable-static

Se vi occorre una versione più aggiornata, ma soprattutto con maggiori codec (es mp3, x264), potete installare quella presente nel repository www.debian-multimedia.org. La versione attualmente presente in questo repository è la r13582 con la seguente configurazione:

configuration: --prefix=/usr --libdir=${prefix}/lib --shlibdir=${prefix}/lib
--bindir=${prefix}/bin --incdir=${prefix}/include/ffmpeg --enable-shared
--enable-libmp3lame --enable-gpl --enable-libfaad --mandir=${prefix}/share/man
--enable-libvorbis --enable-pthreads --enable-libfaac --enable-libxvid
--enable-postproc --enable-libamr-nb --enable-libamr-wb --enable-x11grab
--enable-libgsm --enable-libx264 --enable-liba52 --enable-libtheora
--extra-cflags=-Wall -g -fPIC -DPIC --cc=ccache cc --enable-swscale
--enable-libdc1394 --enable-nonfree --disable-mmx --disable-stripping
--enable-avfilter --enable-libdirac --disable-decoder=libdirac
--enable-libschroedinger --disable-encoder=libschroedinger --disable-altivec
--disable-armv5te --disable-armv6 --disable-vis

Innanzitutto va inserito il nuovo reporitory nel file /etc/apt/sources.list:

deb http://www.debian-multimedia.org lenny main
deb-src http://www.debian-multimedia.org lenny main

va poi effettuato il classico aggiornamento:

apt-get update

ed installata la chiave del nuovo repository:

apt-get install debian-multimedia-keyring

va eventualmente rimosso ffmpeg:

apt-get remove ffmpeg libavcodec51  libavdevice52  libavformat52
apt-get autoremove

e poi installato nuovamente con:

apt-get install libfaad2-0 libmp4v2-0 libfaac0 alsamixergui toolame lame
libmp3lame0 libdvdnav4 libdvdread3 libdvdcss2  ffmpeg

enjoy

Convertire un flv in mp3 con ffmpeg

Sicuramente conoscete ffmpeg, una soluzione multipiattaforma per la conversione tra diversi formati audio/video. Non mi dilungherò ora su come recuperare ed installare ffmpeg (onLine ci sono centinaia di how-to).
Tra gli altri formati, ffmpeg consente anche l’estrazione di mp3 da filmati flv.
Innanzitutto verifichiamo il formato audio presente nel file flv con:

ffmpeg -i inputvideo.flv

dovreste vedere qualcosa del tipo:

Duration: 00:03:55.50, start: 0.000000, bitrate: 64 kb/s
    Stream #0.0: Video: flv, yuv420p, 320x240, 10.00 tb(r)
    Stream #0.1: Audio: mp3, 22050 Hz, mono, 64 kb/s

che indica chiaramente che l’audio è già in formato mp3. In questo caso l’estrazione può essere fatta con:

ffmpeg -i inpuvvideofile.flv -acodec copy outputaudiofile.mp3

Nel caso invece l’audio sia in un differente formato, possibile effettuare la conversione/estrazione con:

ffmpeg -i inpuvvideofile.flv outputaudiofile.mp3

che utilizzerà un bitrate di 64kb/s. Per modificare il bitrate (es 128kb/s) sarà possibile utilizzare:

ffmpeg -i inpuvvideofile.flv -ab 128k outputaudiofile.mp3

Ricompilare ffmpeg su Debian Lenny con il supporto mp3

Se avete installato ffmpeg su Lenny da repository vi sarete accorti che non tutti i formati sono supportati. Per aggiungere il supporto ai formati più diffusi bisogna ricompilare ffmpeg procedendo in questo modo.
Aggiungere e configurare il repository debian-multimedia:

# wget http://www.debian-multimedia.org/pool/main/d/debian-multimedia-keyring
            /debian-multimedia-keyring_2008.10.16_all.deb
# dpkg -i debian-multimedia-keyring_2008.10.16_all.deb

Modificare il file /etc/apt/sources.list aggiungendo:

deb http://www.debian-multimedia.org lenny main
deb-src http://www.debian-multimedia.org lenny main

Aggiornare apt con:

# apt-get update

Installare checkinstall:

# apt-get install checkinstall

Installare le dipendenze di ffmpeg:

# apt-get build-dep ffmpeg

Installare altri pacchetti che ci serviranno per la compilazione:

# apt-get install libfaac-dev libmp3lame-dev libx264-dev libxvidcore4-dev

Installare subversion per scaricare l’ultima versione di ffmpeg:

# apt-get install subversion

Scaricare l’ultima versione di ffmpeg:

# svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg

Configurare e compilare ffmeg:

# cd ffmpeg/
# ./configure --enable-libmp3lame --enable-libtheora --enable-libx264 \
  --enable-libgsm --enable-postproc --enable-libxvid --enable-libfaac \
  −-enable-pthreads --enable-libvorbis --enable-libfaad --enable-gpl \
  --enable-x11grab --enable-nonfree
# make

Ora creiamo un pacchetto .deb di ffmpeg per installarlo e distribuirlo più facilmente su diverse LinuxBox:

# checkinstall

Ora installiamo il pacchetto .deb appena creato:

# dpkg -i *.deb
Bene, ora possiamo provare a codificare i nostri file.  Enjoy

Page optimized by WP Minify WordPress Plugin