Приведенный ниже код работает нормально, но мне не удается запустить увеличение изображения в определенное время. т.е. я хочу, чтобы увеличение было эффективным в течение 5 секунд, а не сразу, когда начинается фоновое видео.

ffmpeg  -i background.avi  -i image.png \
-filter_complex "1:v]scale=8000x4000,setsar=1/1,zoompan=z='min(zoom+0.005,10)':d=125:s=530x680,trim=duration=3[v1];[0:v][v1]overlay=20:20" \
-c:v libx264 output.avi

1 ответ1

0

использование

ffmpeg  -i background.avi -loop 1 -i image.png \
  -filter_complex 
       "[1:v]scale=8000x4000,setsar=1/1,zoompan=z='if(gte(in,125),min(pzoom+0.005,10),1)':d=1:s=530x680,
            trim=duration=3[v1];[0:v][v1]overlay=20:20"
  -c:v libx264 output.avi

Поскольку вы применяете это к видео, pzoom является правильной переменной для использования. d следует установить равным 1, поскольку оно представляет продолжительность интервала эффекта масштабирования для каждого отдельного кадра. Обязательно используйте последнюю версию ffmpeg. В более ранних версиях была ошибка, из-за которой pzoom не работал правильно.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .