Как конвертировать видео в маску с помощью ffmpeg? - PullRequest
0 голосов
/ 08 апреля 2019

Я хочу синтезировать видео с предварительно разработанным шаблоном.

структура шаблона

окончательный результат похож на видео ниже

результат : это видео, которое я синтезировал с использованием moviepy (модуль Python для редактирования видео).Но это занимает слишком много времени для использования в производстве.

Итак, мне нужно наложить эти видео на одно видео.

Текущие проблемы

  • Как преобразовать видео в маску с помощью ffmpeg?
  • Как объединить эти видео в одно видео с помощью ffmpeg?

1 Ответ

0 голосов
/ 08 апреля 2019

Используйте

ffmpeg -i cat.mp4 -i bg1.mp4 -i mask1.mp4 -i fg1.mp4 -filter_complex "[2]negate[a];[1][a]alphamerge[frame];[0][frame]overlay=format=auto[framed];[3]mergeplanes=0x00010200:format=yuva420p[fg];[framed][fg]overlay" out.mp4

Основной порядок операций: 1) прикрепить маску к видео bg, 2) наложить этот результат поверх содержимого. 3) наложить FG поверх второго результата.

Для достижения наилучших результатов также создайте маску для видео на переднем плане, и, если вы это сделаете, используйте alphamerge, как я сделал для видео bg, вместо плоскостей слияния, как я сделал.

Мне пришлось инвертировать маску BG, поскольку участки, выделенные белым цветом, представляют видимые области маски.

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