GStreamer динамический композитор
У меня есть вопрос относительно моей реализации следующей спецификации:
- Отображение N видеопотоков в разных видах на экране.
- "N" = количество потоков. Будет указано количество доступных камер.
- "view" = созвездие композитора (двойное деление, тройное деление, картинка в картинке, ...)
- Должно быть возможно переключиться на другое представление во время выполнения.
Мое текущее решение:
- Создать элементы стока и композитора и добавить + связать их вместе в классе "
Streamer
" - Создание N объектов класса "
Camera
", который содержитElementPtr
для источника, распада, разбора и декодирования. - Добавление и связывание каждого элемента каждого
Camera
msgstr "объект в вышеупомянутый конвейер, который приводит к нескольким площадкам композитора. Сохранение указателя на соответствующую панель композитора в каждом "
Camera
"объект. (???)-> При переходе на другое представление я просто:
Редактировать свойства этих колодок (
xpos
,ypos
...) пока трубопровод еще работает. (???)- Шоу скрыть
Camera
"объект, если необходимо (alpha
имущество)
Итак, мой вопрос:
Правильно ли я подхожу к проблеме? (Особенно отмеченные "(???)" точки кажутся мне довольно подозрительными... Могу ли я улучшить производительность переключения между двумя видами (поскольку он все еще довольно глючный и медленный).
Заранее спасибо!