Dimensione: 2492
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 }}} dove ''0.0'' indica il desktop. È possibile registrare solo una porzione del desktop indicando l'offset: {{{ |
* È possibile registrare solo una porzione del desktop indicando l'offset: {{{ |
Linea 82: | Linea 142: |
}}} dove ''0.0'' indica il desktop, ''XX'' l'offset X e ''YY'' l'offset Y. |
}}} dove ''0.0'' indica il desktop, ''XX'' l'offset X e ''YY'' l'offset Y. |
Linea 88: | Linea 146: |
È 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 }}} {{{#!wiki note L'opzione -newsubtitle deve essere necessariamente posizionata dopo il nome del file in uscita.}}} {{{#!wiki tip Per una gestione più pratica dell'aggiunta dei sottotitoli è consigliabile l'utilizzo del software [[Multimedia/Video/AggiungereSottotitoli|Avidemux]].}}} = Ulteriori risorse = * [[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 89: | 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.