Я хотел бы получить некоторые идеи, как некоторые из вас подходят к этой проблеме. У меня есть робот, на котором работает linux, и использует веб-камеру (с драйвером v4l2) в качестве одного из своих датчиков. Я написал панель управления с gtkmm. И сервер, и клиент написаны на C++. Сервер - это робот, клиент - это «панель управления». Анализ изображений происходит на роботе, и я хотел бы, чтобы поток обратно видео с камеры на панели управления по двум причинам: А) для удовольствия B) для наложения анализа изображений Результатыпотоковое видео в и из нескольких источников
Так мой вопрос есть, какие хорошие способы потокового видео с веб-камеры на панель управления, а также предоставление приоритета для кода робота для его обработки? Мне неинтересно, что я пишу свою собственную схему сжатия видео и помещая ее через существующий сетевой порт, лучший сетевой порт (предназначенный для видеоданных). Вторая часть проблемы - как отображать видео в gtkmm? Видеоданные поступают асинхронно, и у меня нет контроля над main() в gtkmm, поэтому я думаю, что это было бы сложно.
Я открыт для использования таких вещей, как vlc, gstreamer или любые другие общие библиотеки сжатия, о которых я не знаю.
спасибо!
EDIT: Робот имеет процессор 1 ГГц, работающий на настольном компьютере как версия Linux, но без X11.
просто мысль: возможно ли использовать библиотеку vlc в пользовательском приложении для получения потокового видео vlc? Если это возможно, у меня может быть поток vlc, а затем анализ изображения будет получать видеоданные из петлевого соединения, а панель управления сделает то же самое, но удаленно. –
не уверен в vlc, но ffserver довольно легко вставлять. –
btw, vlc и ffserver оба основаны на ffmpeg (libavcodec/ibavformat) –