Dimensione: 8292
Commento:
|
Dimensione: 10091
Commento:
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 4: | Linea 4: |
<<Informazioni(forum="http://forum.ubuntu-it.org/index.php/topic,346297.0.html"; rilasci="11.10")>> | <<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?t=346297"; rilasci="20.04 18.04")>> |
Linea 7: | Linea 7: |
'''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. | |
Linea 9: | Linea 8: |
'''FFmpeg''' è un versatile [[AmministrazioneSistema/Terminale|programma a riga di comando]] per la codifica/decodifica di formati [[https://it.wikipedia.org/wiki/Lista_di_formati_di_file#File_video|video]] e [[https://it.wikipedia.org/wiki/Lista_di_formati_di_file#File_audio|audio]]. Può essere utilizzato per: 0. rotazione dei file video; 0. eliminazione audio dai file video; 0. registrazione audio/video di una sessione [[Hardware/Video/Xorg|X]] di un dispositivo TV; 0. riproduzione multimediale; 0. conversione da un formato a un altro; 0. aggiungere sottotitoli. |
|
Linea 12: | Linea 19: |
Per installare '''FFmpeg''' è sufficiente installare il pacchetto [[apt://ffmpeg | ffmpeg]] con le relative dipendenze. | == Interfaccia a riga di comando == |
Linea 14: | Linea 21: |
Per poter utilizzare la codifica in alta qualità tramite il codec '''x264''' è necessario installare i pacchetti [[apt://x264 | x264]] e [[apt://libx264-116 | libx264-116]] presenti nel [[Repository/Componenti|componente]] '''universe'''. | * [[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://ffmpeg | ffmpeg]]. * Per utilizzare la codifica in alta qualità tramite il codec '''x264''' installare i pacchetti [[apt://x264 | x264]] e la libreria di codifica, [[apt://libx264-152|libx264-152]] |
Linea 16: | Linea 24: |
È inoltre possibile utilizzare graficamente '''FFmpeg''' tramite la GUI [[apt://winff | winff]] presente nel [[Repository/Componenti|componente]] '''universe'''. | {{{#!wiki note Consultare questa [[https://packages.ubuntu.com/search?keywords=libx264&searchon=names | pagina]] per eventuali pacchetti di librerie diverse in base alla vostra versione di release.}}} == Interfaccia grafica == * Per utilizzare '''FFmpeg''' tramite interfaccia grafica installare il pacchetto [[apt://winff | winff]]. |
Linea 22: | Linea 35: |
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 |
In generale, la sintassi, da digitare all'interno di un [[AmministrazioneSistema/Terminale| terminale]], è la seguente: {{{ ffmpeg [global_options] {[input_options] input}... {[output_options] output}... |
Linea 30: | Linea 39: |
per ottenere un elenco delle opzioni disponibili: {{{ |
0. Un esempio base di conversione di un video da formato .avi a .mp4 senza utilizzo di opzioni globali: {{{ ffmpeg -i file.avi -f mp4 file.mp4 }}} 0. Un esempio di conversione complessa: {{{ ffmpeg -i file.avi -f mp4 -b:v 5000k -b:a 256k -c:v libx264 -preset fast -t 00:02:00 file.mp4 }}} == Opzioni == Tabelle riassuntive delle principali opzioni audio/video: ||<tablestyle="width:100%;": #cccccc -3>'''Opzioni globali''' || ||<20% #f7f7f7>'''Comando''' ||< #f7f7f7>'''Significato''' ||<:#f7f7f7>'''Esempi di valori'''|| ||-loglevel loglevel || Imposta il livello di registrazione ||<:>- || ||-v loglevel || Imposta il livello di registrazione ||<:>- || ||-report || Genera un rapporto ||<:>- || ||-max_alloc bytes || Imposta la dimensione massima di un singolo blocco assegnato||<:>- || ||-y || Sovrascrivi i file di output ||<:>- || ||-n || Non sovrascrive mai i file di output ||<:>- || ||-ignore_unknown || Ignora i tipi di flusso sconosciuti ||<:>- || ||-filter_threads || Numero di thread di filtro non complessi ||<:>- || ||-filter_complex_threads || Numero di thread per -filter_complex ||<:>- || ||-stats || Stampa progresso relazione durante la codifica ||<:>- || ||-max_error_rate || Rapporto degli errori ||<:>0.0 (nessun errore), 1.0 (100% errore massimo) tasso di errore|| ||-bits_per_raw_sample number|| Imposta il numero di bit per campione grezzo ||<:>- || ||-vol volume || Volume audio ||<:>256 (= normale) || ||<tablestyle="width:100%;" : #cccccc -3>'''Opzioni input'''|| ||<11% #f7f7f7>'''Comando''' ||< #f7f7f7>'''Significato''' ||<41%:#f7f7f7>'''Esempi di valori'''|| ||-i nome_file || Indica il file di ingresso che deve seguire l'opzione ||<:>- || ||<tablestyle="width100%;": #cccccc -3>'''Opzioni output'''|| ||<11% #f7f7f7>'''Comando''' ||< #f7f7f7>'''Significato''' ||<41% :#f7f7f7>'''Esempi di valori'''|| ||-y || Il file di ingresso verrà sostituito dal file di uscita ||<:>-|| ||-fs grandezza || Imposta la grandezza massima del filmato in byte (-fs XXX), in kB (-fs XXXk) o in MB (-fs XXXM)||<:>1048576 o 1024k o 1M|| ||-vframes frame || Imposta il numero di frame da convertire (frame = fps x s)||<:>1800 (= 1minuto a 30fps) || ||-aframes frame || Imposta il numero di frame da convertire (frame = fps x s)||<:>1800 (= 1minuto a 30fps) || ||-an || Disabilità l'audio ||<:>- || ||-vn || Disabilita il video ||<:>- || ||-target target || Specifica il target per il file ||<:>vcd - svcd - dvd - dv - dv50 - pal-vcd - ntsc-svcd || ||-aspect aspetto|| Imposta le proporzioni di aspetto ||<:>4:3 - 16:9 o 1.3333 - 1.7777 || ||-vb bitrate || Imposta il valore di bitrate per il video in bit/s (-vb XXX) o in kb/s (-vb XXXk)||<:>262144 o 256k|| ||-ab bitrate || Imposta il valore di bitrate per l'audio in bit/s (-ab XXX) o in kb/s (-ab XXXk)||<:>262144 o 256k || ||-r rate || Imposta il valore di rate del video in Hz ||<:>- || ||-ar rate || Imposta l'audio sampling rate. ||<:>- || ||-vcodec codec || Imposta il codec video per la conversione (copy=copia) ||<:>libtheora - theora - mpeg1video - mpeg4 - ... - copy|| ||-acodec codec || Imposta il codec audio per la conversone (copy=copia) ||<:>vorbis - libmp3lame - mp2float - ... - copy|| ||-newvideo || Aggiunge una traccia video al file ||<:> -i tracciaaudio.oga -i tracciavideo.ogv fileoutput.ogg -newvideo|| ||-newaudio || Aggiunge una traccia audio al file ||<:> -i tracciavideo.ogv -i tracciaaudio.oga fileoutput.ogg -newaudio || ||-newsubtitle || Aggiunge hardsub ||<:> -i video.ogg -i sottotitoli.srt fileoutput.ogg -newsubtitle || ||-vlang codice || Imposta il codice ISO 639-2 della lingua usata nella traccia video ||<:> ita - eng || ||-alang codice || Imposta il codice ISO 639-2 della lingua usata nella traccia audio ||<:> ita - eng || ||-ac canali || Imposta il numero di canali audio (stereo = 0) ||<:>- || ||-vol volume || Imposta il volume audio (256 valore default) ||<:>- || * Per ottenere un elenco delle opzioni disponibili: {{{ |
Linea 35: | Linea 102: |
per ottenere un elenco dei formati disponibili: {{{ |
* Per ottenere un elenco dei formati disponibili: {{{ |
Linea 40: | Linea 106: |
per ottenere un elenco dei codec disponibili: {{{ |
* Per ottenere un elenco dei codec disponibili: {{{ |
Linea 43: | Linea 108: |
}}} * Per una guida completa: {{{ man ffmpeg |
|
Linea 47: | Linea 116: |
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 |
* 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 -vn -opzioni audio.mp3 |
Linea 51: | Linea 119: |
esempio: {{{ ffmpeg -i video.avi -acodec libmp3lame -ab 256 audio.mp3 |
* Un esempio: {{{ ffmpeg -i video.avi -vn -acodec libmp3lame -ab 256 audio.mp3 |
Linea 58: | Linea 126: |
Per riprodurre un filmato è sufficiente eseguire il seguente comando: {{{ |
* Per riprodurre un filmato è sufficiente eseguire il seguente comando: {{{ |
Linea 64: | Linea 130: |
per ottenre un elenco delle opzioni di '''ffplay''': {{{ |
* Per ottenre un elenco delle opzioni di '''ffplay''': {{{ |
Linea 71: | Linea 136: |
Per registrare il proprio desktop: | * Per registrare il proprio desktop: {{{ ffmpeg -f x11grab -i :0.0 nome_file_uscita }}} dove ''0.0'' indica il desktop. |
Linea 73: | Linea 140: |
{{{ ffmpeg -f x11grab -i :0.0 nome_file_uscita |
* È possibile registrare solo una porzione del desktop indicando l'offset: {{{ ffmpeg -f x11grab -i :0.0+XX,YY nome_file_uscita }}} dove ''0.0'' indica il desktop, ''XX'' l'offset X e ''YY'' l'offset Y. == Registrazione da scheda TV == È possibile registrare il flusso della scheda TV a patto di avviare un qualsiasi programma per la visualizzazione TV come [[apt://tvtime | tvtime]] e di avere precedentemente abilitato i canali di registrazione audio con il mixer di sistema [[Hardware/Audio/Alsamixer | alsamixer]]. * Per registrare il flusso della scheda TV: {{{ ffmpeg -f oss -i /dev/dsp -f video4linux2 -i /dev/video0 /tmp/file.mpg }}} dove `/dev/dsp` è il dispositivo di ingresso audio e `/dev/video0` il dispositivo di ingresso TV-video. * È possibile specifiare il dispositivo di ingresso audio '''alsa''' al posto di quello '''oss''': {{{ ffmpeg -f alsa -ac 1 -i hw:1 -f video4linux2 -i /dev/video0 /tmp/file.mpg }}} dove ''hw:1'' è il dispositivo di ingresso audio. == Aggiunta di sottotitoli == * È possibile applicare ''hardsub'' ai video aggiungendo i sottotitoli da file ''softsub'': {{{ ffmpeg -i Video.ogg -i Sottotitoli.srt -scodec copy Video_hardsub.ogg -newsubtitle |
Linea 77: | Linea 162: |
{{{ ffmpeg -f x11grab -i :0.0+10,20 nome_file_uscita }}} |
{{{#!wiki note L'opzione -newsubtitle deve essere necessariamente posizionata dopo il nome del file in uscita.}}} |
Linea 81: | Linea 165: |
dove '0.0' indica il display, 'XX' l'offset X e 'YY' l'offset Y. In mancaza | {{{#!wiki tip Per una gestione più pratica dell'aggiunta dei sottotitoli è consigliabile l'utilizzo del software [[Multimedia/Video/AggiungereSottotitoli|Avidemux]].}}} |
Linea 83: | Linea 168: |
== Conversione con x264 == Il più facile metodo per codificare in alta qualità un video è usando la libreria libx264 inclusa con l'installazione di FFmpeg.<<BR>> Obbligatorio è leggere la [[http://rob.opendot.cl/index.php/useful-stuff/ffmpeg-x264-encoding-guide/|guida all'encoding]] prima di provare i seguenti preset.<<BR>> Si avranno, così, sufficienti risorse per capire come ''muoversi'' nella conversione.<<BR>> Si possono aggiugere opzioni ai comandi visualizzati. <<BR>> Si possono trovare una list di altri preset avviabili nella cartella `/usr/share/ffmpeg`.<<BR>> |
= Ulteriori risorse = |
Linea 90: | Linea 170: |
Esistono due tipi di codifica. A singolo passaggio, per una conversione nella media o a doppio passaggio, per una conversione più precisa.<<BR>> Il terzo esempio mostrato permette di codificare in alta qualità per i lettori audio/video e iPod. |
* [[Multimedia/Audio/FFmpeg/Dpg|Convertire video in formato .dpg]] * [[http://ffmpeg.org | Sito ufficiale di FFmpeg(en)]] * [[http://ffmpeg.org/ffmpeg.html | Wiki ufficiale di FFmpeg (en)]] * [[http://dmsimpleapps.blogspot.ro/ | dmMediaConverter: ottima GUI per FFmpeg (en)]] * [[https://sites.google.com/site/ffmulticonverter/download | FF Multi Converter: altra GUI per FFmpeg (en)]] * [[http://it.wikipedia.org/wiki/ISO_639-2|Lista codici ISO 639-2]] |
Linea 93: | Linea 177: |
* 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 }}} ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Piccole/note.png,,center)>> ||<style="padding:0.5em; border:none;">''É 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 }}} ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Piccole/note.png,,center)>> ||<style="padding:0.5em; border:none;">''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 }}} ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Piccole/note.png,,center)>> ||<style="padding:0.5em; border:none;">''Si dovranno usare i programmi qt-faststart, MP4Box o AtomicParsley per fare video compatibili con iTunes''. || == Esempi di conversione == ||||||<tablewidth="80%">'''AUDIO'''|| ||Conversione|| Comando da terminale|| ||||||<tablewidth="80%" #FF8080>'''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|| ||||||<tablewidth="80%" #FF8080>'''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|| ||||||<tablewidth="80%" #FF8080>'''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|| ||||||<tablewidth="80%">'''VIDEO'''|| ||Conversione|| Comando da terminale|| ||MOV --> FLV|| ffmpeg -i movie1.mov movie1.flv || ||Mpeg --> FLV|| ffmpeg -i movie1.mpeg movie1.flv|| ||||||<tablewidth="80%" #FF8080>'''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|| ||||||<tablewidth="80%" #FF8080>'''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|| <<Anchor(aggiornamento)>> = Aggiornare i pacchetti = 0. Rimuovere i pacchetti principali:{{{ sudo apt-get remove ffmpeg x264 libx264-dev }}} 0. aggiornare x264:{{{ cd ~/x264 make distclean git pull }}} 0. reinstallare x264 aggiornato:{{{ ./configure make sudo checkinstall --pkgname=x264 --pkgversion "1:0.svn`date +%Y%m%d`" --backup=no --default }}} 0. Aggiornare FFmpeg: {{{ cd ~/ffmpeg make distclean svn update }}} 0. 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 = 0. 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 }}} 0. Eliminare le cartelle ~/ffmpeg e ~/x264 nella propria home. |
|
Linea 172: | Linea 178: |
CategoryNuoviDocumenti | CategoryMultimedia |
Problemi in questa pagina? Segnalali in questa discussione
Introduzione
FFmpeg è un versatile programma a riga di comando per la codifica/decodifica di formati video e audio. Può essere utilizzato per:
- rotazione dei file video;
- eliminazione audio dai file video;
registrazione audio/video di una sessione X di un dispositivo TV;
- riproduzione multimediale;
- conversione da un formato a un altro;
- aggiungere sottotitoli.
Installazione
Interfaccia a riga di comando
Installare il pacchetto ffmpeg.
Per utilizzare la codifica in alta qualità tramite il codec x264 installare i pacchetti x264 e la libreria di codifica, libx264-152
Consultare questa pagina per eventuali pacchetti di librerie diverse in base alla vostra versione di release.
Interfaccia grafica
Per utilizzare FFmpeg tramite interfaccia grafica installare il pacchetto winff.
Utilizzo
Conversione
In generale, la sintassi, da digitare all'interno di un terminale, è la seguente:
ffmpeg [global_options] {[input_options] input}... {[output_options] output}...
Un esempio base di conversione di un video da formato .avi a .mp4 senza utilizzo di opzioni globali:
ffmpeg -i file.avi -f mp4 file.mp4
Un esempio di conversione complessa:
ffmpeg -i file.avi -f mp4 -b:v 5000k -b:a 256k -c:v libx264 -preset fast -t 00:02:00 file.mp4
Opzioni
Tabelle riassuntive delle principali opzioni audio/video:
Opzioni globali |
||
Comando |
Significato |
Esempi di valori |
-loglevel loglevel |
Imposta il livello di registrazione |
- |
-v loglevel |
Imposta il livello di registrazione |
- |
-report |
Genera un rapporto |
- |
-max_alloc bytes |
Imposta la dimensione massima di un singolo blocco assegnato |
- |
-y |
Sovrascrivi i file di output |
- |
-n |
Non sovrascrive mai i file di output |
- |
-ignore_unknown |
Ignora i tipi di flusso sconosciuti |
- |
-filter_threads |
Numero di thread di filtro non complessi |
- |
-filter_complex_threads |
Numero di thread per -filter_complex |
- |
-stats |
Stampa progresso relazione durante la codifica |
- |
-max_error_rate |
Rapporto degli errori |
0.0 (nessun errore), 1.0 (100% errore massimo) tasso di errore |
-bits_per_raw_sample number |
Imposta il numero di bit per campione grezzo |
- |
-vol volume |
Volume audio |
256 (= normale) |
Opzioni input |
||
Comando |
Significato |
Esempi di valori |
-i nome_file |
Indica il file di ingresso che deve seguire l'opzione |
- |
Opzioni output |
||
Comando |
Significato |
Esempi di valori |
-y |
Il file di ingresso verrà sostituito dal file di uscita |
- |
-fs grandezza |
Imposta la grandezza massima del filmato in byte (-fs XXX), in kB (-fs XXXk) o in MB (-fs XXXM) |
1048576 o 1024k o 1M |
-vframes frame |
Imposta il numero di frame da convertire (frame = fps x s) |
1800 (= 1minuto a 30fps) |
-aframes frame |
Imposta il numero di frame da convertire (frame = fps x s) |
1800 (= 1minuto a 30fps) |
-an |
Disabilità l'audio |
- |
-vn |
Disabilita il video |
- |
-target target |
Specifica il target per il file |
vcd - svcd - dvd - dv - dv50 - pal-vcd - ntsc-svcd |
-aspect aspetto |
Imposta le proporzioni di aspetto |
4:3 - 16:9 o 1.3333 - 1.7777 |
-vb bitrate |
Imposta il valore di bitrate per il video in bit/s (-vb XXX) o in kb/s (-vb XXXk) |
262144 o 256k |
-ab bitrate |
Imposta il valore di bitrate per l'audio in bit/s (-ab XXX) o in kb/s (-ab XXXk) |
262144 o 256k |
-r rate |
Imposta il valore di rate del video in Hz |
- |
-ar rate |
Imposta l'audio sampling rate. |
- |
-vcodec codec |
Imposta il codec video per la conversione (copy=copia) |
libtheora - theora - mpeg1video - mpeg4 - ... - copy |
-acodec codec |
Imposta il codec audio per la conversone (copy=copia) |
vorbis - libmp3lame - mp2float - ... - copy |
-newvideo |
Aggiunge una traccia video al file |
-i tracciaaudio.oga -i tracciavideo.ogv fileoutput.ogg -newvideo |
-newaudio |
Aggiunge una traccia audio al file |
-i tracciavideo.ogv -i tracciaaudio.oga fileoutput.ogg -newaudio |
-newsubtitle |
Aggiunge hardsub |
-i video.ogg -i sottotitoli.srt fileoutput.ogg -newsubtitle |
-vlang codice |
Imposta il codice ISO 639-2 della lingua usata nella traccia video |
ita - eng |
-alang codice |
Imposta il codice ISO 639-2 della lingua usata nella traccia audio |
ita - eng |
-ac canali |
Imposta il numero di canali audio (stereo = 0) |
- |
-vol volume |
Imposta il volume audio (256 valore default) |
- |
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
Per una guida completa:
man ffmpeg
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 -vn -opzioni audio.mp3
Un esempio:
ffmpeg -i video.avi -vn -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
dove 0.0 indica il desktop.
È possibile registrare solo una porzione del desktop indicando l'offset:
ffmpeg -f x11grab -i :0.0+XX,YY nome_file_uscita
dove 0.0 indica il desktop, XX l'offset X e YY l'offset Y.
Registrazione da scheda TV
È possibile registrare il flusso della scheda TV a patto di avviare un qualsiasi programma per la visualizzazione TV come tvtime e di avere precedentemente abilitato i canali di registrazione audio con il mixer di sistema alsamixer.
Per registrare il flusso della scheda TV:
ffmpeg -f oss -i /dev/dsp -f video4linux2 -i /dev/video0 /tmp/file.mpg
dove /dev/dsp è il dispositivo di ingresso audio e /dev/video0 il dispositivo di ingresso TV-video.
È possibile specifiare il dispositivo di ingresso audio alsa al posto di quello oss:
ffmpeg -f alsa -ac 1 -i hw:1 -f video4linux2 -i /dev/video0 /tmp/file.mpg
dove hw:1 è il dispositivo di ingresso audio.
Aggiunta di sottotitoli
È possibile applicare hardsub ai video aggiungendo i sottotitoli da file softsub:
ffmpeg -i Video.ogg -i Sottotitoli.srt -scodec copy Video_hardsub.ogg -newsubtitle
L'opzione -newsubtitle deve essere necessariamente posizionata dopo il nome del file in uscita.
Per una gestione più pratica dell'aggiunta dei sottotitoli è consigliabile l'utilizzo del software Avidemux.