Não consigo pensar em nenhuma ferramenta que possa fazer isso como um simples comando único; você poderia, no entanto, converter suas imagens individualmente para vídeos (de duração variável) e então concatenar esses vídeos juntos - eu usaria o ffmpeg para isso.
ffmpeg -f image2 -loop 1 -i input1.png -t 6 -crf 22 -preset veryfast 01.ts
ffmpeg -f image2 -loop 1 -i input2.png -t 9 -crf 22 -preset veryfast 02.ts
ffmpeg -f image2 -loop 1 -i input3.png -t 4 -crf 22 -preset veryfast 03.ts
-t
define a duração da saída em segundos. Você também pode usar frações de segundos, então -t 2.2
lhe dará uma duração de 2,2 segundos. Se você deseja especificar o comprimento em termos de quadros de vídeo, use -vframes
of frames:v
; por padrão, este comando lhe dará 25 quadros por segundo. Em seguida, concatene os arquivos MPEG TS juntos em um único MP4:
ffmpeg -i "concat:01.ts|02.ts|03.ts" -c copy output.mp4
Claro, seria possível fazer o script disso (eu sei como faria isso no bash, mas não tenho nenhum conhecimento de scripts no Windows).