Sulla Programmazione

Quattro chiacchere sulla programmazione e sulle bit-tecnologie con Fabrizio Cipriani

Generazione batch di thumbnails da file video in Windows con FFmpeg

Esistono vari modi per estrarre fotogrammi (o thumbnails dai video in modo automatico, ad esempio Thumbnail me.

Tuttavia se vogliamo fare tutto da script, o integrare la procedura nel codice di una nostra applicazione, poche possono rivaleggiare con la grezza potenza del più famoso software open-source per l'elaborazione dei video, FFmpeg.

FFmpeg

FFmpeg è disponibile per vari sistemi operativi, la versione per Windows è scaricabile a questo indirizzo: http://ffmpeg.zeranoe.com/builds/

Una volta scaricato, possiamo generare una thumbnail di tutti i video presenti in una cartellina del proprio hard disk con una semplice linea di comando digitata dal prompt, ad esempio:

for %d in (*.mp4) do ffmpeg -i "%d" -ss 00:05:00 -s 160x120 -vframes 1 "%~nd.png"

Il comando sopra prende tutti i file video con estensione *.mp4 nella cartellina corrente, e li passa a ffmpeg con i parametri:

  • -i "%d": il file video mp4 (specificato dal parametro %d passato dal comando batch for)
  • -ss 00:05:00: posiziona il video al quinto minuto (parametro seek)
  • -s 160x120: indica la dimensione del fotogramma
  • -vframes 1: estrae un unico frame
  • "%\~nd.png": nome del file in cui salvare la thumbnail.

Nell'ultimo caso abbiamo sfruttato la simpatica opzione %\~n del comando batch for, che prende la variabile %d e ne estrae il nome del file senza estensione. Questo ci permette di appendere un'altra estensione, .png, che è quella che vogliamo dare al file della thumbnail.

Comments