Кодирование видео на самом деле не идеальная работа для Perl - есть много частей, которые нужно собрать вместе. Я бы предложил просто использовать mencoder - вы можете использовать ввод, например, -mf type=png:fps=30 mf://frame*.png
и выходной формат, например, -of lavf -ovc lavc -lavcopts vcodec=libx264 -o whatever.mov
. Если вы хотите перезаписать звук, вы можете использовать -audiofile whatever.mp3
, а затем либо -acodec copy
, если вы хотите, чтобы он был также MP3 в фильме, или, возможно, -acodec faac
(и -faacopts
), если формат аудио в фильм должен быть AAC. Существует множество различных вариантов настройки, которые можно изучить, но это практически идеальный инструмент для работы. FFmpeg приятнее использовать во многих отношениях, но в нем нет режима ввода mf: //, что делает сборку видео из кадров гораздо более болезненной.