Несколько источников видео объединены в один

Я ищу эффективный способ сделать следующее:

Используя несколько исходных видео (примерно одинаковой длины), мне нужно сгенерировать выходное видео, состоящее из всех исходных источников каждый работает в своей области (например, связка PIP нескольких разных размеров). Таким образом, конечный результат состоит в том, что все оригиналы работают бок о бок, каждый в своей области / блоке.

Исходный и выходной файлы должны быть flv , а платформа, которую я использую, - Windows (dev на Windows 7 64bit, развертывание на Windows server 2008).

Я просмотрел avisynth , но, к сожалению, он не может обрабатывать flv , и ни один из плагинов и сплиттеров flv, которые я пробовал, не работал.

Мой текущий процесс использует ffmpeg следующим образом:

  1. Используйте ffmpeg для генерации 25 png в секунду для каждого видео, изменяя размер оригинала по мере необходимости.
  2. Используйте пространство имен System.Drawing , чтобы объединить каждый набор кадров в новое изображение, начиная со статического фона, затем загружая каждый кадр в изображение и отрисовывая фон Графический объект - дает мне объединенные кадры.
  3. Используйте ffmpeg для объединения сгенерированных изображений в видео.

Все это требует большого количества операций ввода-вывода (что является моим узким местом в обработке данных на данный момент), и я чувствую, что должен быть более эффективный способ достижения моей цели. У меня нет большого опыта обработки видео, и я не знаю, какие есть варианты.

Кто-нибудь может предложить более эффективный способ их обработки?

9
задан Oded 28 September 2011 в 11:03
поделиться