I used to think UPnP was a but of a pointless technology, but with MP and Myth using it i can now see some of the things that are possible with a nice open protocal like this.
I am c0diq the author of the Platinum UPnP SDK. Let me know if you need help with it. I am about to post a new version that should help in adding support for UPnP Media Servers that are not just filesystem based.
This is very interresting stuff indeed. And it would be awesome if it would also do real time encoding for devices that don't take all formats (like the xbox 360.. hint hint).
How is the implementation of a UPnP server coming along in MP?
I am interested in having the TVServer running in the background of my media server using XBMC as my client. With XBMC I would want to be able to control live tv, as well as schedule recordings. Playing back recorded tv could be done already with the video sharing that are already in place. Its the live tv that I would like to see controlled from XBMC.
From everything I have read over the past 3 days, UPnP is now supported in XBMC and the only thing left is getting is support on the MP side. Am I correct when assuming that once UPnP support is implemented for live tv it will also enable a UPnP device to change the channel and contrll the time shifting etc etc?
FYI; The Consumer Electronics Association's R7 Home Network Committee has released a new standard, CEA-2014, Web-based Protocol and Framework for Remote User Interface on UPnP™ Networks and the Internet (Web4CE).
In short, the standard allows a UPnP-capable home network device to provide its interface (display and control options) as a Web page to display on any other device connected to the home network. That means that you can control a home networking device through any browser-based communications method for CE devices on a UPnP home network using Ethernet and a special version of HTML called CE-HTML.
"The upcoming era of the digital home, in which products will be connected through a UPnP home network, will see users accessing a variety of features and applications from various products in their home," says Mark Walker, Senior Platform Architect, Intel Corp. "In addition, consumer products are extending their functionality by providing direct access from consumer devices and home network PCs to Internet-based news and entertainment services delivered to the home over broadband networks such as ADSL and cable. Currently, however, there is no single cross-industry standard that simultaneously ensures home network device interoperability and a good user experience with Internet Services. The new CEA-2014 standard addresses both needs".
FYI; XBMC (and XBMC_PC) now also have a built-in UPnP AV MediaServer (based on the Platinum C++ UPnP SDK, and implemented by c0diq, same as XBMC's built-in UpnP ControlPoint/Client). I sure hope Team-MediaPortal devlopers get interested in UPnP too soon...
It is probebely possible to port XBMC's version of libPlatinum to MediaPortal as a loadable library or DLL without having to convert the C++ code to C#(?). libPlatinum source code in XBMC is compiled into a library called libUPnP to make it modular and portable to other projects. The Xbox version does not support multicast packets so the UPnP-server in XBMC instead just uses a hack that send broadcast packets every 7 seconds, this hack can however be disabled in XBMC_PC (which is a Windows PC port of the XBMC GUI) so you might want to look at that version.XBMC_PC (and the libPlatinum_PC library project for that) can also be compiled directly with normal Microsoft Visual Studio 2003, while the Xbox version of XBMC also requires the XDK (Xbox Development Kit software compiler).
You can down the latest libUPnP source code for XBMC in a rar archive from here (link)