Como mostrar a imagem de sobreposição em um determinado período de tempo com ffmpeg

4

Estou adicionando uma imagem de superposição a um vídeo, o que funciona, mas gostaria de mostrá-la apenas em um determinado período de tempo:

ffmpeg -i video2.mp4 -i logo.png -filter_complex \
"[0:v][1:v]overlay=10:10:enable=between(t\,0\,30)" -codec:a copy out2.mp4

Isso mostra o erro

key 'enable' not found
    
por Sanket990 07.02.2014 / 06:23

1 resposta

10

A sintaxe parece certa para mim. Use aspas simples para não ter que escapar da expressão:

ffmpeg -i input.mp4 -i watermark.png -filter_complex \
"[0:v][1:v] overlay=10:10:enable='between(t,1,2)'" output.mp4

Se você não tiver uma opção enable , certifique-se de usar uma versão 2.0 ou superior do ffmpeg. A edição da linha do tempo só é suportada lá (consulte Changelog ).

Se você quiser várias imagens sobrepostas, use algo assim:

ffmpeg -i input.mp4 -i watermark.png -i watermark2.png -filter_complex \
"[0:v][1:v] overlay=10:10:enable='between(t,1,2)' [tmp]; [tmp][2:v] overlay=20:20:enable='between(t,2,3)'" output.mp4
    
por 10.02.2014 / 08:42

Tags