Come stabilizzare un video usando FFmpeg e vid.stab

FFmpeg Logo

Recentemente ho rinnovato la mia fotocamera HTC Re, una vecchia fotocamera istantanea, perché volevo fare alcuni video. I risultati sono stati molto devastanti: ho scoperto che ho una mano tremante!

Fortunatamente ci sono FFmpeg e vid.stab che mi hanno aiutato a stabilizzarli.

In questo post spiego come installare questo plugin e utilizzarlo, quindi mostrando 2 video di confronto.

HTC Re Camera è stata un’eccellente fotocamera istantanea (prodotta dal 2014 e ora fuori produzione) con la portabilità come carta vincente. Inoltre ha una stabilizzazione video ma non aiuta tanto quando corro o cammino. Quindi ho dovuto rimuovere l’agitazione dai miei video.

Come al solito, Internet aveva già una soluzione e il suo nome è vid.stab una libreria opzionale per FFmpeg (nota al piede1) o Transcode (nota al piede2). La libreria può stabilizzare e appianare i video traballanti su Linux.

Di seguito è riportato un riepilogo e il mio adattamento di 2 articoli fantastici che hanno risolto il mio problema:

  1. Stabilizzazione video tramite VidStab e FFmpeg su Linux (in inglese)
  2. Stabilizzazione del video GoPro con FFmpeg e vid.stab (in inglese)

Come stabilizzare un video usando FFmpeg e vid.stab

Installazione

In Ubuntu 18.04, FFmpeg non ha abilitato vids.tab, quindi puoi compilarlo o utilizzare meglio una build statica FFmpeg da qui che ha abilitato vid.stab:  Build statiche FFmpeg.

Lo scarico secondo il mio sistema, l’ho estratto in una cartella e collegato in uno script bash che ha tutte le impostazioni necessarie.

Comandi di stabilizzazione

Ci sono molte combinazioni e scelte, riporto le opzioni che uso, chiamate: un passo e due passi. Nel primo, FFmpeg non analizza il flusso video, è più veloce ma la qualità è migliore nel secondo.

Un passo

ffmpeg -i input.mp4 -vf vidstabtransform,unsharp=5:5:0.8:3:3:0.4 output.mp4

Due passi

ffmpeg -i input.mp4 -vf vidstabdetect=stepsize=32:shakiness=10:accuracy=10:result=transforms.trf -f null -
ffmpeg -y -i input.mp4 -vf vidstabtransform=input=transforms.trf:zoom=0:smoothing=10,unsharp=5:5:0.8:3:3:0.4 -vcodec libx264 -tune film -acodec copy -preset slow output.mp4

Finalmente questo è lo script che di solito lancio nella directory con i file video (nota al piede3):

#!/bin/bash
# Sources:
# https://trac.ffmpeg.org/wiki/Create%20a%20mosaic%20out%20of%20several%20input%20videos
# https://stackoverflow.com/questions/11552565/vertically-or-horizontally-stack-several-videos-using-ffmpeg
# https://ffmpeg.org/pipermail/ffmpeg-user/2017-August/037057.html

path="/absolute_path_of_the_downloaded_FFmpeg"

if [ -z "$1" ]
    then
        echo "Usage:" 
        echo  "stabilizator.sh filename.mp4"
        exit 0
fi

# one step
$path/ffmpeg -y -i $1 \
      -vf vidstabtransform,unsharp=5:5:0.8:3:3:0.4 ${1%.*}_oneStep.mp4

# two steps
$path/ffmpeg -y -i $1 \
      -vf vidstabdetect=stepsize=32:shakiness=10:accuracy=10:result=transforms.trf -f null -
$path/ffmpeg -y -i $1 \
      -vf vidstabtransform=input=transforms.trf:zoom=0:smoothing=10,unsharp=5:5:0.8:3:3:0.4 \
      -vcodec libx264 -tune film -acodec copy -preset slow  \
      ${1%.*}_twoSteps.mp4

Esempi

Il primo esempio è una vista panoramica di una rosa:

Il secondo è una breve corsa:


NOTE:

  • 1.  FFmpeg è una soluzione completa e multipiattaforma per registrare, convertire e trasmettere audio e video. Sito: https://www.ffmpeg.org/
  • 2. transcode è lo strumento di elaborazione del flusso video LINUX. Maggiori informazioni qui: https://linux.die.net/man/1/transcode
  • 3. Per fare ciò puoi impostare permanentemente un percorso che contiene i tuoi script, devi solo aggiungere al tuo file ~ / .profile o ~ / .bashrc questo codice: export PATH = “$ PATH: /path/to/dir
Se vuoi sostenerci, puoi farlo acquistando qualsiasi cosa dai diversi link di affiliazione che abbiamo nel nostro sito o partendo da qui oppure alcune di queste distribuzioni GNU/Linux che sono disponibili sul nostro negozio online, quelle mancanti possono essere comunque richieste, e su cui trovi anche PC, NAS e il ns ServerOne. Se ti senti generoso, puoi anche donarmi solo 1€ o più se vuoi con PayPal e aiutarmi a continuare a pubblicare più contenuti come questo. Grazie!

Hai dubbi o problemi? Ti aiutiamo noi!

Se vuoi rimanere sempre aggiornato, iscriviti al nostro canale Telegram.
Se vuoi ricevere supporto per qualsiasi dubbio o problema, iscriviti alla nostra community Facebook o gruppo Telegram.
Cosa ne pensi? Fateci sapere i vostri pensieri nei commenti qui sotto.
Ti piace quello che leggi? Per favore condividilo con gli altri.
Amazon Music
Scopri le ultime offerte per dischi ssd su Acquista su Amazon
Scopri le ultime offerte per memorie RAM DDR su Acquista su Amazon
Scopri le ultime offerte per Chromebook su Acquista su Amazon
Scopri le ultime offerte per Raspberry su Acquista su Amazon

Potrebbero interessarti anche...

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.