Ускорьте преобразование неподвижного изображения в видео с помощью FFMpeg или другого программного обеспечения?

Ускорьте преобразование неподвижного изображения в видео с помощью FFMpeg или другого программного обеспечения?

У меня есть большой файл изображения 8k 360 градусов, который я недавно отрендерил. Для демонстрации я хочу преобразовать его в несколько минут видео, чтобы люди могли просмотреть его в VR 360 viewer на YouTube. Однако это оказывается чрезвычайно медленным процессом.

В настоящее время я использую ffmpeg:ffmpeg -loop 1 -i input.png -pix_fmt yuv420p -c:v libx264 -preset ultrafast -r 24 -threads 128 -t 1 output.mp4

Это дает мне только около 1FPS на моем (достаточно быстром) ноутбуке и немного больше на моем более мощном настольном процессоре. Я пробовал использовать GPU, однако FFMPEG выдал ошибку, заявив, что моя карта GTX не может обработать изображение 8192x8192. Так что сейчас я застрял с часами кодирования для нескольких минут видео — есть ли более быстрые способы сделать это?

Кстати, я использую Linux, у меня есть доступ к игровой карте (хотя она может быть бесполезной, как упоминалось ранее). На данный момент я ограничен FOSS/бесплатным программным обеспечением - платных приложений нет. Предпочтительно, чтобы я сделал это в ffmpeg. У меня есть диск NVME SSD, поэтому я не ожидаю, что чтение данных станет узким местом, но, возможно, это так?

решение1

Если это всего лишь одно неподвижное изображение, просто визуализируйте короткий сегмент, а затем создайте из него более крупный файл.

ffmpeg -loop 1 -framerate 24 -i input.png -pix_fmt yuv420p -c:v libx264 -preset veryfast -t 5 5s.mp4

а потом

ffmpeg -stream_loop 50 -i 5s.mp4 -c copy 255s.mp4чтобы получить файл длительностью 255 секунд.

Связанный контент