QtUPnP a C++ framework, based on QT5, to build easily an UPnP control point. It focuses on the UPnP/AV standards.
-
QtUPnP a C++ framework, based on QT5, to build easily an UPnP control point. It focuses on the UPnP/AV standards. For this, a set of classes are created to handle easily media servers and media renderers and to hide the UPnP protocol. Of course UPnP protocol (UPnP/AV use UPnP) is implemented and your can handle every compatible devices.
The source codes are available at https://github.com/ptstream/QtUPnP.
For a better description, unzip https://github.com/ptstream/QtUPnP/blob/master/upnp/Doc/html.zip and choose index.html. It has been tested on Windows and Linux.This framework use only QT API, no other system dependent API .
-
trying to compile it with Qt5.9 (latest available from Arch Repository) I get
$ qmake upnp.pro $ make g++ -c -pipe -std=c++11 -O2 -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -fno-plt -fPIC -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_XMLPATTERNS_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -DQT_SCRIPT_LIB -DQT_SCRIPTTOOLS_LIB -DQT_CORE_LIB -I. -isystem /usr/include/qt -isystem /usr/include/qt/QtWidgets -isystem /usr/include/qt/QtGui -isystem /usr/include/qt/QtXmlPatterns -isystem /usr/include/qt/QtNetwork -isystem /usr/include/qt/QtXml -isystem /usr/include/qt/QtScript -isystem /usr/include/qt/QtScriptTools -isystem /usr/include/qt/QtCore -I. -isystem /usr/include/libdrm -I/usr/lib/qt/mkspecs/linux-g++ -o upnpsocket.o upnpsocket.cpp upnpsocket.cpp: In member function 'const QByteArray& QtUPnP::CUpnpSocket::readDatagrams()': upnpsocket.cpp:117:5: error: 'CWaitingLoop' has not been declared CWaitingLoop::wait (m_wait * 100, QEventLoop::ExcludeUserInputEvents); ^~~~~~~~~~~~ upnpsocket.cpp:117:39: error: 'QEventLoop' has not been declared CWaitingLoop::wait (m_wait * 100, QEventLoop::ExcludeUserInputEvents); ^~~~~~~~~~ make: *** [Makefile:1450: upnpsocket.o] Error 1