Я использую Python3, subprocess и ffmpeg для преобразования нескольких изображений PNG в одно видео.Использование ffmpeg с подпроцессом Python3 для преобразования нескольких PNG в видео
У меня есть 400 PNG с номером «00001.png».
Этот вызов для одного конкретного изображения для аа одного кадра-видео работает:
subprocess.call(["ffmpeg","-y","-r","24","-i", "00300.png","-vcodec","mpeg4", "-qscale","5", "-r", "24", "video.mp4"])
Однако, когда я пытаюсь некоторые методы увиденные онлайн для вызова всех моих изображений отформатированных как «### . ## PNG»с помощью "% 05d.png", как показано ниже, он больше не работает:
subprocess.call(["ffmpeg","-y","-r","24","-i", "%05d.png","-vcodec","mpeg4", "-qscale","5", "-r", "24", "video.mp4"])
Я получаю сообщение об ошибке: "%05d.png: No such file or directory"
.
У меня есть ощущение, что приведенный выше синтаксис правилен Python2 и не работает на моем python3, но не может найти правильный синтаксис python3 в любом месте.
Заранее спасибо за вашу помощь
где вы видите ''% 05d.png? '? В Linux может работать '* .png', потому что' Bash' преобразует его в список файлов с именами, соответствующими '* .png'. Я видел что-то вроде «% 05d.png» 'только с конвертером изображений« ImageMagic ». – furas
Синтаксис ffmpeg выглядит нормально. Может быть, его нужно каким-то образом избежать. @furas ffmpeg принимает этот синтаксис (http://ffmpeg.org/ffmpeg-formats.html#Examples-1) для последовательностей изображений. – Mulvya
Я пробовал этот «подпроцесс», и это сработало для меня. Потому что у меня были более короткие имена 001.png - 003.png в подпапке «test», поэтому я использовал «test /% 03d.png». Запустил ли сценарий в папке с изображениями? – furas