Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati

Versione 2 del 28/01/2012 22.57.18

Nascondi questo messaggio

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

FFmpeg è un versatile programma a riga di comando per codificare e convertire una multitudine di formati video e audio che può essere usato anche per la registrazione audio/video di una sessione X o di un dispositivo TV e per la riproduzione multimediale.

Installazione

Per installare FFmpeg è sufficiente installare il pacchetto ffmpeg con le relative dipendenze.

Per poter utilizzare la codifica in alta qualità tramite il codec x264 è necessario installare i pacchetti x264 e libx264-116 presenti nel componente universe.

È inoltre possibile utilizzare graficamente FFmpeg tramite la GUI winff presente nel componente universe.

Utilizzo

Conversione

Sintassi:

ffmpeg -i nome_file_ingresso -opzioni nome_file_uscita

esempio:

ffmpeg -i file.avi -acodec vorbis -ab 128 -vcodec theora -aspect 16:9 -r 128 -s 512x288 file.ogg

per ottenere un elenco delle opzioni disponibili:

ffmpeg -h

per ottenere un elenco dei formati disponibili:

ffmpeg -formats

per ottenere un elenco dei codec disponibili:

ffmpeg -codecs

Estrazione audio da video

Per estrarre una traccia audio da un video basta usare la stessa sintassi usata per la conversione audio/video avendo l'accortezza di specificare solamente codec e formati audio per il file di uscita:

ffmpeg -i video.avi -opzioni audio.mp3

esempio:

ffmpeg -i video.avi -acodec libmp3lame -ab 256 audio.mp3

Riproduzione

Per riprodurre un filmato è sufficiente eseguire il seguente comando:

ffplay -opzioni nome_file

per ottenre un elenco delle opzioni di ffplay:

ffplay -h

Registrazione di una sessione X

Per registrare il proprio desktop:

ffmpeg -f x11grab -i :0.0 nome_file_uscita

ffmpeg -f x11grab -i :0.0+10,20 nome_file_uscita

dove '0.0' indica il display, 'XX' l'offset X e 'YY' l'offset Y. In mancaza

Conversione con x264

Il più facile metodo per codificare in alta qualità un video è usando la libreria libx264 inclusa con l'installazione di FFmpeg.
Obbligatorio è leggere la guida all'encoding prima di provare i seguenti preset.
Si avranno, così, sufficienti risorse per capire come muoversi nella conversione.
Si possono aggiugere opzioni ai comandi visualizzati.
Si possono trovare una list di altri preset avviabili nella cartella /usr/share/ffmpeg.

Esistono due tipi di codifica. A singolo passaggio, per una conversione nella media o a doppio passaggio, per una conversione più precisa.
Il terzo esempio mostrato permette di codificare in alta qualità per i lettori audio/video e iPod.

  • Codifica a singolo passaggio CFR (fattore percentuale costante) usando il preset hq.

    ffmpeg -i input.avi -acodec libfaac -ab 128k -ac 2 -vcodec libx264 -vpre hq -crf 22 -threads 0 output.mp4

É indicata per una codifica generica, ma non permette di determinare la dimensione del file compresso finale. Usare -cfr per impostare la qualità. Valori consigliati tra 18 e 28, il valore più basso genera un file di qualità maggiore ma più grande..

  • Codifica a due passaggi usando i preset fastfirstpass e hq.

    ffmpeg -i input.avi -pass 1 -vcodec libx264 -vpre fastfirstpass -b 512k -bt 512k -threads 0 -f rawvideo -an -y /dev/null && ffmpeg -i input.avi -pass 2 -acodec libfaac -ab 128k -ac 2 -vcodec libx264 -vpre hq -b 512k -bt 512k -threads 0 output.mp4

Viene usata quando si vuole configurare un determinato bitrate o per configurare la grandezza del file compresso finale. La codifica a due passaggi fornisce la migliore qualità su video di durata elevata, distribuendo correttamente il bitrate medio, su tutta la durata del video, a costo di un maggior tempo di codifica. Usato solitamente per codifica di video di durata elevata e per lettori portatili con limiti al bitrate, come l'ipod..

  • Codifica a due passaggi per ipod a 640x480 usando i preset fastfirstpass, hq e ipod640.

    ffmpeg -i input.avi -pass 1 -an -vcodec libx264 -vpre fastfirstpass -vpre ipod640 -b 512k -bt 512k -s 640x480 -threads 0 -f rawvideo -y /dev/null && ffmpeg -i input.avi -pass 2 -acodec libfaac -ab 128k -ac 2 -vcodec libx264 -vpre hq -vpre ipod640 -b 512k -bt 512k -s 640x480 -threads 0 output.mp4

Si dovranno usare i programmi qt-faststart, MP4Box o AtomicParsley per fare video compatibili con iTunes.

Esempi di conversione

AUDIO

Conversione

Comando da terminale

Il seguente convertirà audio1.aac con audio1.mp3 con audio rate 22.05 Khz e audio bitrate 32 Khz CON METADATA

AAC --> MP3

ffmpeg -i audio1.aac -ar 22050 -ab 32 -map_meta_data audio1.mp3:audio1.aac audio1.mp3

Il seguente convertirà audio1.aac to audio1.mp3 con audio rate 22.05 Khz e audio bitrate 32 Khz SENZA METADATA

AAC --> MP3

ffmpeg -i audio1.aac -ar 22050 -ab 32 audio1.mp3

WMV --> MP3

ffmpeg -i audio1.wmv audio1.mp3

WMV --> FLV

ffmpeg -i audio1.wmv audio1.flv solo il flusso audio

Il seguente convertirà audio1.amr file con audio1.mp3 con audio rate 22.05 Khz

AMR --> MP3

ffmpeg -i audio1.amr -ar 22050 audio1.mp3

VIDEO

Conversione

Comando da terminale

MOV --> FLV

ffmpeg -i movie1.mov movie1.flv

Mpeg --> FLV

ffmpeg -i movie1.mpeg movie1.flv

Il seguente convertirà movie1.avi file con movie1.flv e ridimensionerà la risoluzione video a 500x500

AVI --> FLV

ffmpeg -i movie1.avi -s 500×500 movie1.flv

Il seguente convertirà movie1.3gp file con movie1.flv e terrà l'originale configurazione del file e disabiliterà l'audio.

3GP --> FLV

ffmpeg -i movie1.3gp -sameq -an movie1.flv

MPEG --> 3GP

ffmpeg -i movie1.mpeg -ab 8.85k -acodec libamr_wb -ac 1 -ar 16000 -vcodec h263 -s qcif movie2.3gp

Aggiornare i pacchetti

  1. Rimuovere i pacchetti principali:

    sudo apt-get remove ffmpeg x264 libx264-dev
  2. aggiornare x264:

    cd ~/x264
    make distclean
    git pull
  3. reinstallare x264 aggiornato:

    ./configure
    make
    sudo checkinstall --pkgname=x264 --pkgversion "1:0.svn`date +%Y%m%d`" --backup=no --default
  4. Aggiornare FFmpeg:

    cd ~/ffmpeg
    make distclean
    svn update
  5. Reinstallare FFmpeg aggiornato:

    ./configure --enable-gpl --enable-version3 --enable-nonfree --enable-pthreads --enable-libfaac --enable-libfaad --enable-libmp3lame --enable libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libx264 --enable-libxvid --enable-x11grab
    make
    sudo checkinstall --pkgname=ffmpeg --pkgversion "4:0.5+svn`date +%Y%m%d`" --backup=no --default

Disinstallare interamente il programma

  1. Aprire un terminale e inserire il seguente comando:

    sudo apt-get remove x264 ffmpeg build-essential subversion git-core checkinstall yasm texi2html libfaac-dev libfaad-dev libmp3lame-dev libsdl1.2-dev libx11-dev libxfixes-dev libxvidcore4-dev zlib1g-dev
  2. Eliminare le cartelle ~/ffmpeg e ~/x264 nella propria home.


CategoryNuoviDocumenti