Использование ffmpeg для сборки изображений из S3 в видео - PullRequest
0 голосов
/ 10 июля 2020

Я могу легко собрать изображения с локального диска в видео с помощью ffmpeg и передать %06d filespe c. Вот как будет выглядеть типичная команда (псевдокода):

ffmpeg.exe -hide_banner -y -r 60 -t 12 -i /JpgsToCombine/%06d.JPG <..etc..>

Однако я изо всех сил пытаюсь сделать то же самое с изображениями, хранящимися в AWS S3 , без использования третьего стороннее программное обеспечение для монтирования виртуального диска (например, TNTDrive ). Папка S3, содержащая наши изображения, слишком велика для загрузки в временное хранилище объемом 20 ГБ, предусмотренное для AWS контейнеров, и мы пытаемся избежать EFS , потому что нам придется предоставлять дорогостоящую пропускную способность.

Вот как выглядят URL-адреса HTTP и S3 для каждого из наших файлов JPG:

# HTTP URL
https://massdotnet.s3.amazonaws.com/jpgs-to-combine/000000.JPG # frame 0
https://massdotnet.s3.amazonaws.com/jpgs-to-combine/000012.JPG # frame 12
https://massdotnet.s3.amazonaws.com/jpgs-to-combine/000123.JPG # frame 123
https://massdotnet.s3.amazonaws.com/jpgs-to-combine/456789.JPG # frame 456789

# S3 URL
s3://massdotnet/jpgs-to-combine/000000.JPG # frame 0
s3://massdotnet/jpgs-to-combine/000012.JPG # frame 12
s3://massdotnet/jpgs-to-combine/000123.JPG # frame 123
s3://massdotnet/jpgs-to-combine/456789.JPG # frame 456789

Есть ли способ заставить ffmpeg собрать их? Мы могли бы сгенерировать подписанный URL-адрес для каждого файла S3 и поместить несколько тысяч этих URL-адресов в командную строку с помощью фильтра конкатенации FFMPEG . Однако в какой-то момент, используя этот подход, мы столкнулись с ограничением ввода командной строки в Linux. Я надеюсь, что есть способ получше ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...