Wiki Ubuntu-it

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

Versione 28 del 28/08/2022 10.53.17

Nascondi questo messaggio

Guida verificata con Ubuntu: 20.04 22.04

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:

  1. rotazione dei file video;
  2. eliminazione audio dai file video;
  3. registrazione audio/video di una sessione X di un dispositivo TV;

  4. riproduzione multimediale;
  5. conversione da un formato a un altro;
  6. aggiungere sottotitoli.

Installazione

Interfaccia a riga di comando

Codec video

Per utilizzare la codifica in alta qualità seguire i seguenti paragrafi inerenti alle proprie versioni di Ubuntu.

  • Consultare questa pagina per eventuali pacchetti di versioni librerie libx264 diverse in base alla release di Ubuntu.
    Questa pagina per eventuali pacchetti di versioni librerie libx265 diverse in base alla release di Ubuntu.

Ubuntu 22.04

Ubuntu 20.04

Ubuntu 18.04

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}...
  1. 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
  2. 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.

Ulteriori risorse


CategoryMultimedia