Creazione Video Da Sequenza di Immagini Timelapse

Già mi ero cimentato qualche volta con la creazione di un video tramite sequenza di immagini timelapse, usando dei tool che in automatico mi creavano il flusso video da una sequenza di immagini.

Questa volta, da buon smanettone :P, ho voluto utilizzare solo la potenza della shell di Linux e strumenti OpenSource come ffmpeg.

L’hardware a disposizione non è stato uno dei migliori. Ho dovuto utilizzare il mio vecchio Asus EeePC 701 dotato di una misera telecamera da  640×480 px … e tanta pazienza :D.

1) Cattura Immagini Timelapse

Per la cattura delle immagini dalla videocamera ho usato il tool sviluppato da Ubuntu: cheese  e l’utility scrot per quanto riguarda la cattura delle immagine tramite screenshot.

Il mio script non fa altro che lanciare cheese in background a tutto schermo e catturare le immagini ogni 5 sec via scrot. So che esistono molti altri metodi per catturare le immagini direttamente dalla fotocamera senza effettuare lo screenshot, ma nel mio caso avevo bisogno di mostrare anche al pubblico le immagini che stavo riprendendo.

[sourcecode language=”bash”]
#!/bin/sh

/usr/bin/cheese &

while true
do
scrot /media/photo/’%H%M%S.png’
sleep 5
done

[/sourcecode]

2) Creazione Flusso Video

Se tutto è andato nel verso giusto avremo le nostre .png pronte per essere unite tra loro per creare il flusso video vero e proprio. FFMPEG è proprio il tool che fa a caso nostro, infatti basta dare questo piccolissimo comando per avere il video finale.

[sourcecode language=”bash”]
$ ./ffmpeg -i ../media/photo/%*.png -r 15 -vb 4096k out.mp4
[/sourcecode]

Dove:

  •  -i ../media/photo/%*.png  indica la sorgente (nel nostro caso le immagini) da cui assemblare il video
  •  -r 15 indica il frame rate che vogliamo utilizzare
  • -vb 4096k  indica il birate da utilizzare

Nel caso volessimo aggiungere anche una base musicale (non guasta mai) basta inserire un altro piccolo flag:

[sourcecode language=”bash”]
$./ffmpeg -i out.mp4 -i my_music.mp3 -vcodec codec -acodec codec output_video_with_music.avi -newaudio
[/sourcecode]

Questo è il mio timelapse effettuato durante la Sagra del Pecorino di Filiano 2013. Buona visione!

2 risposte a “Creazione Video Da Sequenza di Immagini Timelapse”

  1. Paissan Roberto
    WhatsApp 3316287237

    oggetto : Creazione Video Da Sequenza di Immagini Timelapse.

    uso linux ZORIN 15.3 Lite, PC vecchio come il cucco, HP intel Centrino 2, 4 gb di ram.

    mia esigenza: fare un video di quello che vedo sullo schermo,
    quello che succede sullo schermo 60 secondi ridurlo a 2 secondi,
    per esempio se ho 8 ore di video, fare un filmatino di pochi minuti, 2 secondi di filmatino ogni minuto reale, 60 minuti reali diventano, 1 minuto e 20 secondi.
    ho visto questo tuo e volevo chiederti aiuto

    https://www.vitadastudente.it/2013/09/14/creazione-video-timelapse-sequenza-immagini/

    sono un +50enne, ma sempre uno studente scapestrato, e non smetto mai di avere voglia di imparare.

    Complimenti per il blog.

    Se trovi un attimo di tempo per darmi le dritte, grazie.

    1. Ciao Roberto,
      Grazie per aver lasciato un commento. Se posso esserti di aiuto in qualche modo sara’ ben felice di darti una mano.
      Quello che vuoi fare tu lo si puo’ fare facilmente con il seguente comando:

      ffmpeg -i input.mp4 -filter:v “setpts=0.5*PTS” -an output.mp4

      dove “setpts=0.5*PTS” velocizza del doppio il video.
      Se vuoi renderlo ancora piu’ veloce ti basta aumentare il numero Eg: 0.8 o 1.2 ecc..

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.