C ++ - RTSP клиент с QT GUI, используя Live555 Lib, что еще мне нужно?
-
29-09-2019 - |
Вопрос
Мне нравится смотреть посмотреть потоковое видео с моим приложением, я делаю в Qt, сначала я проверил VLC, но его GPL, а также мне не нужен весь свой вариант, то я видел, что он использует Live555, который LGPL для потоковой передачи, мой вопрос Могу ли я использовать эту библиотеку в приложении MT QT? и как
Решение
Прежде всего, какая платформа вы работаете?
Вы можете использовать Live555 Только для целей RTSP / RTP. Live555 Однако не содержит никаких декодеров и т. Д.
VLC использует Live555 внутри RTSP afaik, но также содержит кучу других плагинов, декодеров, демультиплексоров и т. Д.
Вам все еще нужен медиа-структуры для обработки конкретного декодирования формата медиаформации, демультиплексирование, рендеринга и т. Д. В Windows это может быть выполнено с помощью DirectShow. В этом сценарии вы можете обернуть Live555 в исходном фильтре DirectShow и построить медиапроводы. Чтобы получить видео для отображения в вашем приложении QT, вам нужно будет рассмотреть вопрос о том, как вы будете родительными окнами Video Render Render in DirectShow на вашем приложении QT.
Еще один кроссплатформенный медиа-структуры, с которыми я не знаком gstreamer..
Редактировать:
Вы смотрели на Qt Фонон вообще? Похоже, что они начали интегрировать мультимедиа в рамки, хотя вам придется исследовать, если они поддерживают RTSP, и если нет, как получить данные массовой информации, полученные через Live555, в корпус Qt Media.
Другие советы
Да, вы можете использовать библиотеки Live555, которые являются LGPL в вашем приложении. Frontend может быть реализован с помощью QT, MFC или Java. Live555 предоставляет API для создания сеансов RTSP, а для реализации аудио / видео, вероятно, вам может потребоваться переопределить несколько функций. Пройдите через пример приложения, предоставляемые Live555 в его папке TestProgs.
Если вы делаете коммерческое приложение, не забудьте включить лицензию Live555 в ваших выпусках.