Russian Qt Forum

Qt => Мультимедиа => Тема начата: shedy2 от Сентябрь 06, 2014, 23:13



Название: QML видеочат (RTMP/RTP/RTSP)
Отправлено: shedy2 от Сентябрь 06, 2014, 23:13
Всем привет. Есть веб-проект, который позволяет своим пользователям общаться в видеочате, пишу десктопный клиент на Qt 5.3 QML.

Уже всё написал, остался видеочат и у меня ступор, ничего не компилируется, ничего не собирается, или просто крешится. Может у кого есть пример из коробки реализации воспроизведения потока видео и трансляции камеры? Или подскажите куда копать, с чем вы уже работали и у вас получилось

Пробую пока вот этот проект запустить https://github.com/RSATom/QmlVlcDemo/ , но он постоянно крэшится (и другие с vlc что-то не запускает).
Может у меня знаний каких не хватает? Что почитать? Гуглю уже 2 недели, где-то даже посты создавал, пока глухо..

Добра всем :)


Название: Re: QML видеочат (RTMP/RTP/RTSP)
Отправлено: RSATom от Сентябрь 07, 2014, 17:23
Привет.
Вот если бы был хотя бы call stack в момент падения приложения - может я и смог бы помочь чем то...


Название: Re: QML видеочат (RTMP/RTP/RTSP)
Отправлено: shedy2 от Сентябрь 08, 2014, 01:24
QMLVLCDemo запустил, в гитхабе отписался, что не так делал


Название: Re: QML видеочат (RTMP/RTP/RTSP)
Отправлено: shedy2 от Сентябрь 08, 2014, 01:28
Привет.
Вот если бы был хотя бы call stack в момент падения приложения - может я и смог бы помочь чем то...

Подскажите, как я понимаю RTMP поток я проиграю с помощью QmlVLC, но отправить не смогу?


Название: Re: QML видеочат (RTMP/RTP/RTSP)
Отправлено: RSATom от Сентябрь 08, 2014, 06:58
QmlVlc изначально разрабатывался как вспомогательная библиотека для воспроизведения видео, соответственно функционала связанного с отправкой там просто нет. Но на самом деле, эта библиотека всего лишь очень тонкий враппер вокруг libvlc api, соответственно весь функционал, которого не хватает, очень легко можно добавить с помощью libvlc api. Поэтому вопрос переходит в другую плоскость, - можно ли создать rtmp сервер с помощью libvlc. Насколько я знаю, с протоколом rtmp связаны некоторые проблемы лицензирования, и поэтому он не реализован в libvlc (но могу ошибаться). Если же использовать rtsp  - то в соответствии с http://stackoverflow.com/questions/4900929/libvlc-simple-c-streaming это вполне возможно.