Используйте movie
фильтр для загрузки изображения APNG и установите его loop=0
на бесконечный цикл:
movie=test.png:loop=0
Итак, всего:
ffmpeg -y -i input.mp4 \ -filter_complex \ 'movie=test.png:loop=0[animation]; \ [0:v][animation]overlay=x=100:y=100:shortest=1' \ out.mp4
Я создал программу, которая накладывает анимированный PNG поверх видео. Он использует ту же технику - посмотрите README для примера.