11#include "libmythbase/mythconfig.h"
14#include <QScriptEngine>
23#include "libmythbase/mythversion.h"
50 LOG(VB_UPNP, LOG_INFO,
"MediaRenderer(): Begin");
61 if (!pHttpServer->listen(nPort))
63 LOG(VB_GENERAL, LOG_ERR,
"MediaRenderer: HttpServer Create Error");
65 pHttpServer =
nullptr;
76 pHttpServer->RegisterExtension(pHtmlServer);
89 QScriptEngine* pEngine = pHtmlServer->ScriptEngine();
91 pEngine->globalObject().setProperty(
"Frontend" ,
92 pEngine->scriptValueFromQMetaObject< ScriptableFrontend >() );
105 LOG(VB_UPNP, LOG_INFO,
"MediaRenderer: Creating UPnp Description");
109 device.
m_sDeviceType =
"urn:schemas-upnp-org:device:MediaRenderer:1";
124 LOG(VB_UPNP, LOG_INFO,
"MediaRenderer: Registering MythFEXML Extension.");
129 LOG(VB_UPNP, LOG_INFO,
130 "MediaRenderer::Registering AVTransport Service.");
131 m_pUPnpAVT =
new UPnpAVTransport(
RootDevice() );
135 LOG(VB_UPNP, LOG_INFO,
"MediaRenderer: Registering ConnectionManager Service.");
142 LOG(VB_UPNP, LOG_INFO,
143 "MediaRenderer::Registering RenderingControl Service.");
149 if (qEnvironmentVariableIsSet(
"MYTHTV_UPNPSCANNER"))
151 LOG(VB_UPNP, LOG_INFO,
"MediaRenderer: Registering UPnP Subscription Extension.");
168 LOG(VB_GENERAL, LOG_ERR,
169 "MediaRenderer: Unable to Initialize UPnp Stack");
172 LOG(VB_UPNP, LOG_INFO,
"MediaRenderer(): End");
QString GetSharePath(void) const
void RegisterExtension(HttpServerExtension *pExtension)
void PerformSearch(const QString &sST, std::chrono::seconds timeout=2s)
static void Enable(bool enable, UPNPSubscription *sub=nullptr)
Creates or destroys the global UPNPScanner instance.
QString m_sModelDescription
QString m_sPresentationURL
QString m_sManufacturerURL
static UPnpDevice * RootDevice()
HttpServer * m_pHttpServer
bool Initialize(int nServicePort, HttpServer *pHttpServer)
static UPnpDeviceDesc g_UPnpDeviceDesc
QString GetValue(const QString &setting)
#define LOG(_MASK_, _LEVEL_, _QSTRING_)
QStringList GetSinkProtocolInfos()
Return a QStringList containing the supported Sink Protocols.