Arhn - архитектура программирования

Видеоинструмент командной строки для мозаичного вывода видео

Я ищу видеоинструмент командной строки, работающий в Linux, который поддерживает сценарии и может выдавать выходное видео с мозаичными видео внутри. Проблема в том, что мозаичные видео должны меняться внутри вывода. Представьте мозаичное видео 4*4, но входных видео больше, чем 16, поэтому, например, каждые 10 секунд мне приходится менять плитку в мозаике на другое видео.

Я нашел инструмент командной строки VLC и avisynth, которые могут генерировать мозаичный вывод, но, как я вижу, они не поддерживают изменение видео, описанное выше.

Кто-то знает другие варианты?

Заранее спасибо!


Ответы:


1

AviSynth может объединять видео, поэтому вы можете изменить источник видео в любое время в сценарии.

Например, в следующем примере верхнее левое видео четырех входов изменится на другое видео через 6 секунд:

v11 = AviSource("SomeSampleVideo.avi", false). \
  Crop(0, 0, 320, 240).AssumeFPS(25).ConvertToRGB32.Trim(0, 150).FadeOut(25, $FF0000)

v12 = AviSource("AnotherSampleVideo.avi", false). \
  Crop(40, 10, 320, 240).AssumeFPS(25).ConvertToRGB32.FadeIn(25, $FF0000)

v1 = v11 + v12

v2 = ImageReader("SomeSampleBitmap.bmp").Crop(20, 10, 320, 240).ConvertToRGB32
v3 = AviSource("YetAnotherVideo.avi", false).Crop(30, 30, 320, 240).ConvertToRGB32
v4 = v1.Subtract(v2)

return StackVertical(StackHorizontal(v1, v2), StackHorizontal(v3, v4))


Возможно, я неправильно понял требования..

25.05.2012

2

Обходной путь может заключаться в том, чтобы запускать ваши видео через поток UDP, сгенерированный с помощью VLC, например:

    vlc -vvv $YOUR_INPUT_VIDEO_AS_A_VARIABLE --sout='#transcode{vcodec=h264, vb=768, fps=25.0, width=1920, height=1080, scale=1, acodec=aac, ab=128, samplerate=32000}:standard{access=udp, mux=ts, dst=239.0.0.1}'

Затем включите этот поток udp в мозаику VLC, например:

   setup video1 input udp://@239.0.0.1

Позже я предполагаю, что вы можете написать скрипт, который вызывается с переменной, являющейся путем к вашему новому видео ($ YOUR_INPUT_VIDEO_AS_A_VARIABLE), в конечном итоге убивая более ранний экземпляр VLC и перезапуская его с новым видео, отправляя его на тот же адрес udp. В вашем случае вам нужно учитывать порты, например. отправка видео 1 на 239.0.0.1:1234; видео 2 на 239.0.0.1:1236; видео 3 на 239.0.0.1:1238 - и так далее.

UDP не волнует, если ничего не отправлено, поэтому я думаю, что у вас будет короткий период, когда видео не воспроизводится (время, необходимое для уничтожения старого экземпляра VLC и потоковой передачи нового видео).

Опять же, это обходной путь. Так что, возможно, это поможет, иначе забудьте об этом.

30.05.2012
Новые материалы

Коллекции публикаций по глубокому обучению
Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

Представляем: Pepita
Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

Советы по коду Laravel #2
1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

3 способа решить квадратное уравнение (3-й мой любимый) -
1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

Создание VR-миров с A-Frame
Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

Демистификация рекурсии
КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..