Тайловый фильтр для libav/avconv

Есть ли способ использовать libav/avconv для дублирования эффекта фильтра плитки в FFMPEG?

Я пытаюсь создать полосу изображений слева направо с одним изображением на каждые десять секунд видеовхода.

Мой план состоит в том, чтобы сначала сгенерировать изображения, а затем создать полосу изображений. Предпочтительно я хочу использовать libav вместо ffmpeg. Пока я создал это:

avconv -i video.mp4 -vf scale=320:-1,fps=1/10 -q:v 6 img%03d.jpg

который создает образы. Но тогда я знаю только, как создать образ с помощью ffmpeg, используя:

ffmpeg -i img%03d.jpg -filter_complex tile=6x1 output.jpg

Поэтому, если у кого-нибудь есть советы о том, как переписать только вторую или обе команды для использования avconv, я приветствую любые советы :)


person Mathjoh    schedule 16.04.2018    source источник
comment
Почему вы не хотите использовать ffmpeg вместо этого?   -  person llogan    schedule 16.04.2018
comment
@LordNeckbeard Сервер, на котором он работает, использует образ докера Google Cloud App Engine, который, как я полагаю, основан на Ubuntu 14.XX и не поставляется с ffmpeg. Таким образом, использование avconv избавляет меня от настройки полной ручной загрузки в файле докеров.   -  person Mathjoh    schedule 17.04.2018
comment
Разве нельзя использовать статическую сборку?   -  person llogan    schedule 17.04.2018
comment
@LordNeckbeard конечно. Я просто надеялся избежать этого. Я не так хорош в создании файлов докеров и считаю установку двоичных файлов из статических сборок довольно грязной и трудоемкой.   -  person Mathjoh    schedule 18.04.2018
comment
В avconv отсутствуют многие функции, присутствующие в ffmpeg, включая фильтр плитки (и сотни других). Неаккуратным, монотонным решением было бы использование исходного фильтра цвета в качестве фона и одного фильтра наложения на изображение для ручного размещения каждого изображения. Или используйте другой инструмент, такой как montage от imagemagick, если он доступен в вашем докере.   -  person llogan    schedule 20.04.2018
comment
В итоге я получил статическую сборку ffmpeg. Спасибо за ваши ответы @LordNeckbeard   -  person Mathjoh    schedule 23.04.2018
comment
Вы можете добавить это как ответ, так как вы нашли приемлемое решение.   -  person llogan    schedule 23.04.2018


Ответы (1)


Поскольку в libav/avconv не было фильтров, поддерживающих мои требования, самым простым решением было переключиться на статическую сборку ffmpeg.

Затем команды стали такими:

ffmpeg -i video.mp4 -vf scale=320:-1,fps=1/10 -q:v 6 img%03d.jpg

а также

ffmpeg -i img%03d.jpg -filter_complex tile=6x1 output.jpg
person Mathjoh    schedule 26.04.2018