Usando o overlay
filtro de vídeo para adicionar um logotipo a um vídeo:
ffmpeg -i video.mp4 -i logo.png -filter_complex "[0:v][1:v]overlay" \
-codec:a copy out.mp4
Para entender esse comando, você precisa saber o que é um especificador de fluxo e ler a Introdução à filtragem FFmpeg ajudará. [0:v]
refere-se ao (s) fluxo (s) de vídeo da primeira entrada ( video.mp4
) e [1:v]
ao fluxo de vídeo da segunda entrada ( logo.mp4
). É assim que você pode dizer overlay
quais entradas usar. Você pode omitir [0:v][1:v]
e overlay
ainda funcionará, mas recomenda-se que seja explícito e não confie em padrões possivelmente desconhecidos.
Por padrão, o logotipo será colocado no canto superior esquerdo.
Usando -codec:a copy
vai transmitir copiar o áudio. Isso simplesmente retira o som do áudio em vez de recodificá-lo. Pense nisso como um "copiar e colar" do áudio.
Movendo o logotipo
Este exemplo moverá o logotipo 10 pixels para a direita e 10 pixels para baixo:
ffmpeg -i video.mp4 -i logo.png -filter_complex "[0:v][1:v]overlay=10:10" \
-codec:a copy out.mp4
Este exemplo moverá o logotipo 10 pixels do lado direito e 10 pixels para baixo:
ffmpeg -i video.mp4 -i logo.png -filter_complex \
"[0:v][1:v]overlay=main_w-overlay_w-10:10" -codec:a copy out.mp4
main_w
refere-se à largura da entrada "principal" (plano de fundo ou [0:v]
) e overlay_w
refere-se à largura da entrada "sobreposição" (o logotipo ou [1:v]
). Portanto, no exemplo, isso pode ser traduzido para overlay=320-90-10:10
ou overlay=220:10
.
Cronometrando a sobreposição
Alguns filtros podem lidar com a edição da linha do tempo, que permite usar expressões aritméticas para determinar quando um filtro deve ser aplicado. Consulte para ffmpeg -filters
ver quais filtros suportam a edição da linha do tempo.
Este exemplo mostrará o logotipo até 30 segundos:
ffmpeg -i video.mp4 -i logo.png -filter_complex \
"[0:v][1:v]overlay=10:10:enable=between(t\,0\,30)" -codec:a copy out.mp4
Se você deseja desbotar o logotipo, consulte a resposta da mark4o .