UPnP Sharing - XBMC update

Today I fixed the upnp bookmarks pb that people have encountered. I also improved the auto-discovery by autostarting the upnp client / discovery on boot (it’s an option if you don’t like it). This helps as it gives more time to discover UPnP servers before bookmarks are selected. I also cleaned up the code a bit under the hood. Btw, the UPnP sharing option is now explained in the manual.

Correction
July 10th, 2006 10:23 pm

Should the protocol text in XBMC say “UPnP (Universal Plug and Play)” instead of “Windows Media Connect (UPNP)” as the prococol is not called “Windows Media Connect”, Windows Media Connect is just one UPnP MediaServer out of many. It could confuse the end-users to thinking it that XBMC only compatible with the Windows Media Connect software.

You should probebely give some other examples of UPnP MediaServers in the XBMC manual, (and maybe even a note to how other developers can make their own using the Platinum SDK), make sure to also mention MediaServers for other platforms than Microsoft Windows, (like Mac, Linux, BSD, UNIX,. etc.), try to mention a few for windows and those other operating systems as well like; TwonkyVision, Allegro, GeeXboX uShare, etc.

Administrator
July 10th, 2006 10:43 pm

Hi,

I have renamed it UPnP Server yesterday. I originally thought that using Windows Media Connect would be easier for people who don’t necessarily understand what UPnP is but do understand what WMC is.
Your list is nice. I would add Rhapsody as a good Media server too. It provides additional features (like album art) that others don’t necessarily do. I have talked to my ex-colleagues trying to convince them to switch to Platinum. Btw, I will be posting a new version of Platinum soon.

tester
July 10th, 2006 11:37 pm

Hi, i was unable to compile the platinum SDK sources.
It seem to be missing the following file:
\upnp\PlatinumSDK\Neptune\Source\Core\NptFile.cpp

I’m using Visual Studio 2003 .NET to compile for Win32

Correction
July 11th, 2006 7:32 am

FYI, I took the time and updated the XBMC manual myself :)

tester
July 11th, 2006 7:37 am

Why don’t the Platinum SDK come with dev documentation?

PS! You checked CyberLink for C++ development package?
http://sourceforge.net/projects/clinkcc
it includes a nice progoramming guide and documentaion ;)

Administrator
July 11th, 2006 8:29 am

tester,

Yes you are correct, the NptFile.cpp is missing. I will release a new version soon. As far as the documentation is concerned, I will do it when I find time. I have a job and I do this on the side. Unless you are willing to pay for a commercial license and not use the gpl license, this will take a little time.
As far as Cyberlink vs Platinum, I designed it differently. You don’t have to see the under the hood of what’s going on unless you want to write your own device. In that case, just look at how the MediaServer works. There are some tests also in the project that shows how to initialize the upnp stack and a device, it’s litterally 4 lines of code. Can’t make it simpler than that.

Administrator
July 11th, 2006 8:33 am

Correction, thanks! But there are a few mistakes that I’ll fix. There are no Media Renderer inside xbmc yet, just a Media Server control point.

Correction
July 11th, 2006 10:52 am

oh ok, I thought the MediaRenderer was just the network-client to sream from a UPnP share, not the player. What’s does the MediaRenderer part do then exacly?

Administrator
July 11th, 2006 12:46 pm

A Media Renderer exposes an interface to control the playback. A Renderer control point can then remotely instruct it to Pause/Play/Next etc..

Correction
July 11th, 2006 2:00 pm

k, that should be relativly easy to add to XBMC then as it has a common control interface (which can be accessed from the WebServer, HTTP API, Python, and XML-skin files, etc.), to get to know that interface you are probebly best of looking at the HTTP API or just askin the other XBMC developers about it (like nad who developered the HTTP API by extending the exsiting control commands for XBMC):
http://www.xboxmediaplayer.de/cgi-bin/forums/ikonboard.pl?act=ST;f=5;t=9397

Administrator
July 11th, 2006 2:21 pm

XBMC doesn’t have a Media Renderer built-in yet. This is something that we’ll be looking after 2.0 is launched. Thanks for the info, I’ll start looking at the control API.

Stephen
July 11th, 2006 8:47 pm

I feel stupid for asking this, but I can’t get Rhapsody to work in XBMC. I select “UPnP Media Servers (Auto-Detect)” and select “Rhapsody Media Server” and see “Albums, Artists, Playlists, etc…”, but when I select a song to play, I get nothing. What could I be doing wrong? Please forgive my lack of knowledge on all of this.

July 11th, 2006 10:48 pm

Yeah well let me explain. Even though Rhapsody is a UPnP Server, they actually use a DRM on top of it. A secure protocol must be established between the device and Rhapsody for it to let it stream the content. The content is encrypted when it is being streamed to the device. A similar but different method is used by Windows Media Connect to stream protected content to ‘compatible’ devices.
XBMC cannot and will most likely never stream Rhapsody content, Windows Media protected content or any Premium content acquired on a Music store for that matter. The reason is that being open source, it cannot meet the robustness requirements imposed on device vendors by the Rhapsody service or the WMDRM-ND spec (which is what WMC implements).
Sorry.

Correction
July 12th, 2006 6:10 am

XBMC HTTPAPI (inclusing the commands) to base MediaRenderer on:
http://www.xbmc.xbox-scene.com/wiki/index.php?title=WebServerHTTP-API

Those cammands can be access without having the WebServer/HTTPAPI enabled as well.

squid
July 17th, 2006 11:39 am

Quick question? Any way of making subtitles work through UPnP?
Also, folder pics don’t show when using UPnP either, as in My Music album covers, etc.

Thanks for your hard work, it’s awesome.

Squid

Name
Mail
Website
Comment