Я хотел бы знать, есть ли плавный переход и исчезновение водяного знака на видео каждые x секунд / минут в течение y секунд / минут с использованием FFMPEG. Я попытался -filter_complex, чтобы увидеть, может ли он помочь, но у меня нет никакого результата.
1 ответ
Вы можете использовать петлевой фильтр.
ffmpeg -i video -loop 1 -i logo.png -filter_complex
"[1]trim=0:30,fade=in:st=0:d=1:alpha=1,fade=out:st=9:d=1:alpha=1,
loop=999:750:0,setpts=N/25/TB[w];
[0][w]overlay=shortest=1" out.mp4
Во-первых, поток изображения логотипа обрезается до продолжительности x секунд, здесь 30. Затем применяется 1-секундное усиление и постепенное исчезновение. Затухание начинается через y-1 секунд, здесь 9. Этот результат зацикливается 999 раз - используйте число, достаточное для охвата длины видео. Поскольку я обрезал 30-секундный сегмент, размер сегмента, который будет зациклен, равен duration x framerate , здесь 30 x 25 = 750 . Цикл начинается с начального кадра 0 . Наконец, фильтр цикла не очищает временные метки, поэтому setpts добавляется для получения монотонного ряда.
Поток затем накладывается на видео.
