devdev / in the loop

Ritagliare (crop) un video con FFmpeg

**Questa è una serie di articoli legati a FFmpeg, semplici comandi per fare editing video da riga di comando, che è più cool**

In questo post vedremo come effettuare il ritaglio (crop) in un video utilizzando il magnifico tool FFmpeg. Per farlo, il comando da lanciare ha una sintassi molto semplice, che andremo velocemente ad analizzare. Eccola:

ffmpeg -i input.mp4 -filter:v "crop=w:h:x:y" output.mp4

Cominciamo. Dato un file input.mp4 , diciamo a FFmpeg di utilizzare un filtro video -filter:v  di tipo crop. A quest’ultimo aggiungiamo quattro variabili w:h:x:y:

  • w (width) indica la larghezza in pixel del rettangolo che andremo a croppare, ed è uguale quindi alla larghezza del video che avremo come risultato.
  • h (height) indica l’altezza in pixel del rettangolo che andremo a croppare, ed è uguale quindi all’altezza del video che avremo come risultato.
  • x è la coordinata orizzontale, in pixel, dalla quale inizierà il ritaglio. È, in sostanza, la distanza in pixel dalla sinistra del video originario dalla quale partirà il ritaglio. Naturalmente, il primo pixel parte da zero.
  • y è la coordinata verticale, in pixel, dalla quale inizierà il ritaglio. È, in sostanza, la distanza in pixel dall’alto del video originario dalla quale partirà il ritaglio. Naturalmente, il primo pixel parte da zero.

Come abbiamo già visto -i input.mp4  indica semplicemente a ffmpeg il video sul quale lavorare, mentre l’ultimo elemento, output.mp4 , sarà il video risultante dal nostro ritaglio (crop).

Vediamo qualche esempio:

Avendo un video fullhd, 1920×1080, vogliamo ritagliare un quadrato 1080×1080 partendo da sinistra del video originario:

ffmpeg -i input.mp4 -filter:v "crop=1080:1080:0:0" output_1080_quadrato.mp4

Se invece volessimo ritagliare lo stesso video quadrato 1080×1080 ma al centro del video originario, dovremmo calcolare la variabile x in questo modo: (1920-1080)/2 = 420 pixel

ffmpeg -i input.mp4 -filter:v "crop=1080:1080:420:0" output_1080_quadrato_centro.mp4

Come avrete notato, non c’è alcun vincolo rispetto al ratio del video risultante, possiamo ottenere qualsiasi rapporto video.

Ps. non dimenticate le virgolette “” !

 

Questo articolo ti è stato utile?
In the loop – LETTURA 3 MINUTI Come installare telnet su Mac?
Vediamo come installare il client telnet sul Mac.
In the loop – LETTURA 20 MINUTI Guida GDPR per sviluppatori
In questi ultimi anni, noi sviluppatori siamo stati molto a contatto con tutto ciò che riguarda l’adeguamento GDPR. Se non…
In the loop – LETTURA 3 MINUTI Xcode errore “xcrun: error: unable to find utility “simctl”, not a developer tool or in PATH”
Quando proviamo ad utilizzare i tool da linea di comando di Xcode, potremmo incorrere nell’errore: Xcode errore "xcrun: error: unable…
In the loop – LETTURA 4 MINUTI Velocizzare o rallentare un video con FFmpeg
**Questa è una serie di articoli legati a FFmpeg, semplici comandi per fare editing video da riga di comando, che…
Roba figa da
if (weekend) {
    relax();
}
la nostra newsletter, ogni tanto.