Como adicionar uma marca d'água como um loop usando a sobreposição deslizante ffmpeg

0

Estou usando a sobreposição de ffmpeg para adicionar uma marca d'água (.PNG) a um clipe de vídeo. Essa marca d'água deve deslizar de cima para baixo do vídeo repetidamente como um loop, passando pela duração do vídeo. Eu poderia configurar para adicionar a marca d'água para deslizar de cima para baixo.

Meu problema: ele desliza apenas uma vez. Não recomeça como um loop.

Meu código:

ffmpeg -i test.mkv -loop 1 -i watermark.png -filter_complex "overlay=x=0:y='if(gte(t,0), -H+(t)*20, NAN)':shortest=1" output.mkv

Poderia, por favor, ajudar-me a corrigir este problema?

Obrigado

Anoma

    
por Anoma 08.03.2016 / 05:31

1 resposta

0

Use

ffmpeg -i test.mkv -loop 1 -i watermark.png \
-filter_complex "overlay=x=0:y='if(gte(t,0), ((H+h)\/5)\*mod(t\,5)-h, NAN)':shortest=1" \
output.mkv

5 segundos é o período da expressão acima. Altere os dois 5 s para alterar o período.

A menos que você esteja trabalhando com arquivos com registros de data e hora negativos, como segmentados ou arquivos divididos usando ffmpeg -ss no modo copy , você pode pular a função gte .

ffmpeg -i test.mkv -loop 1 -i watermark.png \
-filter_complex "overlay=x=0:y='((H+h)\/5)\*mod(t\,5)-h':shortest=1" \
output.mkv
    
por 08.03.2016 / 07:17