Я искал несколько дней, чтобы найти это решение. Все, что я нашел, это способы добавить логотип в первые секунды или через несколько секунд или только между определенными частями (например, между 30 и 210 секундами).
Итак, главный вопрос: Как добавить мой логотип за последние 60 секунд в видео с ffmpeg? У меня много видеороликов различной длины, и я просто хочу, чтобы последние 60 секунд накладывались на логотип .png (в данном случае также в левой нижней части экрана).
В настоящее время я использую то, что вы видите ниже, которое работает отлично (показывает логотип всегда, кроме как между 30-210 секундами видео), но, как я уже упоминал в заголовке, это не делает именно то, что я хочу.
-i video.mp4 -vf "movie=/logo.png [watermark]; [in][watermark] overlay=1:main_h-overlay_h-1:enable=not(between'(t,30,210)') [out]"
overlay
а такжеenable
не имеют возможности ссылаться на конец или продолжительность видео. Вам нужно будет использовать дополнительную команду (возможно,ffprobe
а такжеgrep
, такие как описано в этом ответе ), чтобы извлечь продолжительность, а затем использовать это для генерацииffmpeg
команда с правомbetween
ценности.источник
grep
: ты можешь использоватьffprobe
в одиночестве. Увидеть один из другие ответы в ссылке, которую вы предоставили.ffprobe
определить длину, а затемffmpeg
Команда с использованием продолжительности вы получили отffprobe
,