Russian Qt Forum
Сентябрь 24, 2022, 20:17 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Видео по сети  (Прочитано 3120 раз)
juvf
Программист
*****
Offline Offline

Сообщений: 532


Просмотр профиля
« : Октябрь 26, 2021, 13:24 »

Есть железка cpu+cam+screen

Написал Требуется написать программу отображения видео с камеры на экране в режиме онлайн. В Qt/QML с этим не должно возникнуть проблем. Но, в программе отделил мух от котлет GUI от "backend" и соединил их через сокет udp/localhost.
Теперь GUI могу запустить на любом ПК в офисе сети. Backend со всем своим специфичным железом может продолжать работать на целевом таргите на конечном устройстве.

Вопрос: как через локалхост пробросить видеопоток? Думаю тоже использовать udp. Можно как-нибудь средствами Qt/QML (QtMultimedia/QMediaPlayer/QVideoWidget) по udp пробросить трансляцию с камеры на удаленный ПК/GUI? Или придется свой велосипед изобретать?


Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #1 : Октябрь 26, 2021, 13:38 »

Возможно стоит покопаться в GStreamer (на уровне командной строки). Удовольствие ниже среднего, но шансы есть. Если получится из командной строки - остальное уже "дело техники". Привлекает что можно назначить "источник" в виде URL (там как-то чуть иначе называется, уже забыл), а он разберется с драйверами и.т.п.
Записан
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« Ответ #2 : Октябрь 26, 2021, 21:29 »

Плюсую за г-стример, там не особо сложно. Но там надо выбирать спецом кодеки, для которых есть аппаратная поддержка, чтобы не грузить ЦПУ (ЕМНИП - в Gst SDK только софтварные кодеки идут).
Записан

ArchLinux x86_64 / Win10 64 bit
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4451



Просмотр профиля WWW
« Ответ #3 : Октябрь 26, 2021, 22:59 »

а чем GStreamer лучше ffmpeg? последний слишком низкоуровневый?
Записан

Изучением C++ вымощена дорога в Qt.

UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
Johnik
Крякер
****
Offline Offline

Сообщений: 331


Просмотр профиля
« Ответ #4 : Октябрь 26, 2021, 23:40 »

не qt, но для web'a использовал этот проект:
https://github.com/mpromonet/webrtc-streamer
Записан
juvf
Программист
*****
Offline Offline

Сообщений: 532


Просмотр профиля
« Ответ #5 : Октябрь 27, 2021, 07:28 »

мдааа.... пуре qt не вкатит. Надеялся, что в качестве получателя/источника видео можно будет указать QIODevice (который есть udp сокет). Пока оставлю и камеру и отображение в слое GUI. Будет время сильная необходимость, перенесу камеру в бэкэнд.

Возможно стоит покопаться в GStreamer (на уровне командной строки).
Заинтересовало.... А почему на уровне cli? Вроде есть родные мануалы с примерами на си. Более того, нашел даже QtGStreamer с тёплоламповым qml-ем
 
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #6 : Октябрь 27, 2021, 08:44 »

Заинтересовало.... А почему на уровне cli? Вроде есть родные мануалы с примерами на си. Более того, нашел даже QtGStreamer с тёплоламповым qml-ем
Может и в базовых примерах есть, мне он был нужен для другого. Но ихнюю "концептуальную" доку лучше отложить на потом (бьет по ушам). В любом случае нужно "смонтировать" pipeline, грубо говоря цепочку кодеков, и это удобно из командной строки. Напр назначил (пока) стандартный вывод видео - и заниматься источником
Записан
qate
Супер
******
Offline Offline

Сообщений: 1148


Просмотр профиля
« Ответ #7 : Октябрь 27, 2021, 21:45 »

подобная задача решается созданием http потока, где после http заголовков идет jpg данные
на приеме поток успешно отображает браузер или свой qt код, где создается QPixmap

webrtc-streamer смотрелся недолго - до упоминаний chromium - тут жир стал капать с монитора )
Записан
Johnik
Крякер
****
Offline Offline

Сообщений: 331


Просмотр профиля
« Ответ #8 : Октябрь 28, 2021, 15:20 »

webrtc-streamer смотрелся недолго - до упоминаний chromium - тут жир стал капать с монитора )
С ним с единственным относительно просто было, и задержка видео была минимальной.
Записан
qate
Супер
******
Offline Offline

Сообщений: 1148


Просмотр профиля
« Ответ #9 : Октябрь 28, 2021, 18:29 »

мое простое решение также не имеет задержек
Записан
juvf
Программист
*****
Offline Offline

Сообщений: 532


Просмотр профиля
« Ответ #10 : Октябрь 29, 2021, 06:05 »

мое простое решение также не имеет задержек
пример?
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.062 секунд. Запросов: 23.