Делаю распределённую систему камер видео наблюдения. Каждая камера подключена к компьютеру на котором бежит демон выполняющий захват видео и возможно обработку этого самого видео. Демон предоставляет клиентам "сервисы", такие например как цветное видео, ч/б видео, детектор движения и т.д.. Теперь собственно вопросы:
1) Как лучше организовать обмен видео данными между демоном и клиентами. На локальном компьютере, как мне кажется, наилучшим вариантом является shared memory, хотя хотелось бы прозрачности в плане подключения к локальному и к удалённому компьютеру.
2) Как организовать обмен вспомогательными данными: как рассказать клиенту какие "сервисы" предоставляет данный сервер, какие параметры видео (размер, цветовое пространство и т.д. и т.п.) ?
Пишу на линуксе, перенос на другие платформы не важен, но не помешает писать более менее портабельно.
П.С. скорость очень важна.