More specificaly the UPnP AV (UPnP = Universal Plug and Play Protocol, and AV = Audio/Video) services.
Note! No one on Team-XBMC is currently planning on coding this so it's an available to any programmer(s).
UPnP standard is a collection of connectivity and communication protocols, these are UPnP AV:
- UPnP MediaServer DCP - the UPnP-server that share multimedia data-files to UPnP-clients on the network.
- UPnP MediaServer ControlPoint - UPnP-client, auto-detects UPnP-servers and browse/stream from them.
- UPnP Remote User Interface (RUI) - Client (sends) and server (recieves) remote control-commands.
- UPnP MediaRenderer DCP - which is a 'slave' device that can render content, (digital audio/video player).
- UPnP RenderingControl DCP - control MediaRenderer settings; volume, brightness, RGB, sharpness...).
Personaly I really like to see UPnP MediaServer and RUI server support in MediaPortal because then a UPnP MediaServer ControlPoint and RUI client could be implemented into XBMC (Xbox Media Center) and thus XBMC will be able to auto-detect MediaPortal 'servers' on the network to stream from them and control MediaPortal remotly over the network via the XBMC GUI (to send command such as record, schedule, play, stop, change channel) and thus be able to function as a front-end for MediaPortal, (you could then have one MediaPortal PC function as a back-end hub and have several Xboxes in the house which could control MediaPortal from each one of them). Of course XBMC is not the only thing that would benifit from UPnP MediaServer and Remote UI support in MediaPortal, but because UPnP is an open standard anyone who add MediaServer ControlPoint to their application or device would in theory be able to stream audio/video/pictures from MediaPortal, and you could for example make a small application (with a RUI client) for PDA or TabletPC that simply functions as a remote control for MediaPortal, (and that application would also be compatible with other UPnP devices that feature a RUI server-side.
Some "About" information on UPnP (Universial Plug'n'Play), for developers and end-users alike:
UPnP (Universial Plug and 'Play) looks set to be the default standard among media-share network-protocols of the future, it's an open and free spec/format developed by the Digital Living Network Alliance (DLNA), (Formely: Digital Home Working Group). Those who are familiar with Apple's Bonjour/ZeroConf (formely: Rendezvous) protocol will understand the basic concept of UPnP as it works in a very similar way from the end-users point-of-view, however UPnP is designed to compete with Bonjour/ZeroConf, and UPnP is much more aimed from the start to be an open community project. Basicaly the MediaServer ControlPoint and MediaRenderer is the network-client (and digital-media-player) which will automaticly detect/find all UPnP-MediaServers on the local-network through multicast/broadcast and you can then stream audio/video/pictures from them, (UPnP can also be used over the internet if a "UPnP Internet Gateway Device" is implemented too). Then is also RUI (Remote User Interface) part which can be implemented into both the client and the server, when RUI is supported by both the client can fully control the server, (and act like a remote-control device). Because UPnP is an fre and open standard a UPnP-client can auto-detect and stream from all UPnP-servers without any configuration/settings have to be made by the end-user, plus any software of hardware developer can implement the UPnP standard into their application/device. Philips/Sony has already revieled UPnP standalone set-on-top-boxes, D-Link has unvieled a UPnP-enabled "Central Home Storage Drive", and on the software side latest MusicMatch, also SnapStream's BTV and even Microsoft's Media Center Extenders feature UPnP support. So far the UPnP forums has over 40 members, (among them giants like Intel, AMD, Microsoft, IBM, HP, DELL, Sony, Nokia, Samsung, Panasonic).
For a more detailed overview on the basic concept behind UPnP I recommend you read this:
"UPnP (Universal Plug and Play)" Article on Wikipedia (link)".
Quote:What are the benefits of UPnPâ„¢ technology?
* Media and device independence. UPnPâ„¢ technology can run on any medium including phone line, power line, Ethernet, RF, wireless, and 1394.
* Platform independence. Vendors use any operating system and any programming language to build UPnPâ„¢ products.
* Internet-based technologies. UPnPâ„¢ technology is built upon IP, TCP, UDP, HTTP, and XML, among others.
* UI Control. UPnPâ„¢ architecture enables vendor control over device user interface and interaction using the browser.
* Programmatic control. UPnPâ„¢ architecture also enables conventional application programmatic control.
* Common base protocols. Vendors agree on base protocol sets on a per-device basis.
* Extendable. Each UPnPâ„¢ product can have value-added services layered on top of the basic device architecture by the individual manufacturers.
Official UPnP websites (with free specs, source code, samples and SDK's):
www.upnp.org and DLNA (Digital Living Network Alliance)
DLNA Home Networked Device Interoperability Guidelines v1.0 PDF
DLNA Overview and Vision White Paper (PDF)
DLNA Use Case Scenarios White Paper (PDF)
Universal Plug and Play in Windows XP (Microsoft TechNet)
Description of Universal Plug and Play Features in Windows XP (MSDN)
Hosting Devices on Windows XP Using Universal Plug and Play (MSDN)
Other resourses: source code exampels, full applications and more:
UPnP official specs, source and SDK's (it's free): www.upnp.org/www.upnp.com
Intel's UPnP SDK/toolset (donno if open source?, but it's free to use for non-commercial software): http://developer.intel.com/ial/upnp/
CyberLink for C++ http://sourceforge.net/projects/clinkcc/
Yet Another UPnP Control Point http://sourceforge.net/projects/upnp2k/
UPnP SDK for Linux http://sourceforge.net/projects/upnp/
Linux UPnP Internet Gateway Device http://sourceforge.net/projects/linux-igd/
Linux UPNP Internet Gateway http://sourceforge.net/projects/ligd/
SharpIGD (Internet Gateway Device) http://sourceforge.net/projects/sharp-igd/
openIGD (Internet Gateway Device) http://sourceforge.net/projects/openigd/
Pseudo ICS daemon http://sourceforge.net/projects/pseudoicsd/
ESDP for Linux (UPnP over Bluetooth) http://sourceforge.net/projects/esdp4linux/
igd (Internet Gateway Device) http://sourceforge.net/projects/igd/
ReplayTV Remote Control http://sourceforge.net/projects/replaytvremote/[/quote]