É possível autocrop bordas pretas de um vídeo com ffmpeg?

9

Eu acho que tem um filtro de vídeo "blackness", que pode determinar se uma seqüência de imagens é preta. Talvez também tenha um filtro para determinar os valores de corte automaticamente para remover as bordas pretas das bordas de um vídeo. Ou talvez seja possível de alguma forma escrever um script usando o filtro "negritude".

    
por Konstantin 24.06.2014 / 16:04

3 respostas

13

Sim, é possível.

Primeiro, reproduza seu vídeo para ver se está tudo bem:

ffplay -i YourMovie.mp4 -vf "cropdetect=24:16:0"

Os valores do filtro cropdetect são:

cropdetect=limit:round:reset

limit = black threshold (default 24)
round = output resolution must be divisible to this
reset = after how many frames the detection process will start over

Se tudo der certo, corte:

ffmpeg -i YourMovie.mp4 -vf "crop=640:256:0:36" YourCroppedMovie.mp4

Fonte e mais informações: René Calles blog renevolution.com

    
por 24.06.2014 / 17:14
9

De: link

ffmpeg -i input -t 1 -vf cropdetect -f null - 2>&1 | awk '/crop/ { print $NF }' | tail -1
    
por 20.02.2015 / 18:59
2

Colocando as outras duas respostas juntas em um script:

#!/bin/sh
#ffmpeg_zoom ver 20180128202453
I="$@";X=${I##*.};O=${I%.*}_zoomed.${X};f=$(which ffmpeg 2>/dev/null)
if [ ! "$f" ]||[ "$f" = '' ];then echo "Install ffmpeg";exit 1;fi
C=$($f -i "$I" -t 1 -vf cropdetect -f null - 2>&1|awk '/crop/{print $NF}'|tail -n1)
echo $f -i "$I" -vf "$C" "$O"; $f -i "$I" -vf "$C" "$O"

Esta questão tem algum ffmpeg relevante exemplos

    
por 28.01.2018 / 21:27