Archive:UPnP/Media source: Difference between revisions

From Official Kodi Wiki
Jump to navigation Jump to search
>Gamester17
>Gamester17
Line 29: Line 29:


====Commercial UPnP MediaServers====
====Commercial UPnP MediaServers====
* [http://www.twonkyvision.com TwonkyMedia], by TwonkyVision, a commercial UPnP Media Server for Windows and Linux, (can interface to the 3rd party applications iTunes, WinAmp, and Adobe Photoshop Album, can even run as a service on Windows).
* [http://www.twonkyvision.com TwonkyMedia], by TwonkyVision, a commercial UPnP Media Server for Windows and Linux, (can interface with the third-party applications iTunes, WinAmp, and Adobe Photoshop Album, can even run as a service on Windows).
* [http://www.on2share.com On2Share], a commercial UPnP MediaServer plugin for MCE (Microsoft XP Windows Media Center Edition).
* [http://www.on2share.com On2Share], a commercial UPnP MediaServer plugin for MCE (Microsoft XP Windows Media Center Edition).
* [http://www.snapstream.com/products/beyondtv/ SnapStream BTV/BeyondTV], a commercial Media Control/Renderer/Server and PVR for Windows.
* [http://www.snapstream.com/products/beyondtv/ SnapStream BTV/BeyondTV], a commercial Media Control/Renderer/Server and PVR for Windows.

Revision as of 16:27, 20 September 2006

UPnP media sharing is an extremely easy method of sharing your media (pictures/video/audio) on your network as it features automatic-discovery and does not require any configuration.


UPnP introduction

UPnP (short for "Universal Plug and Play") is a set of computer network protocols from the UPnP Forum. The goals of UPnP are to allow UPnP devices on a network to detect each other and connect seamlessly, without the need for manual configuration on the users end. For a more detailed explaination please read the "Developers notes on UPnP" at the bottom of this page. There are typically three types of UPnP AV (Audio/Video) device control protocols (also called profiles); "UPnP AV MediaServer" which sole purpose is to share content, "UPnP AV MediaRenderer" which render content to exposes an interface to control the playback, and a "UPnP AV MediaServer ControlPoint" which can detect/find "UPnP AV MediaServer" and browse them to read media from them. A DMP (Digital Media Player) like XBMC typically only implements a UPnP AV MediaServer ControlPoint.


UPnP in XBMC

XBMC has (since the 10 of July 2006) a built-in UPnP-client (a so called "UPnP AV MediaServer ControlPoint" device) which can auto-detect any UPnP-server (a so called "UPnP AV MediaServer" device) on your local-network, as long as that UPnP-server is not behind a firewall or you have opened the ports for UPnP in your firewall. You can very simply add one or more UPnP shares via the "Add Source" function with the context-menu (white-button on your controller) in XBMC under each of the the My Pictures/My Videos/My Music sections.


Compatible UPnP MediaServers (UPnP-servers)

UPnP AV MediaServers is where you store and share your media (pictures/videos/audio/music) from, and there are UPnP MediaServers available for most operating-systems and many hardware-platforms. UPnP AV MediaServers can be either be categorized as software-based or hardware-based. Software-based MediaServer can be run on PC (personal-computer), mainly on Win32, Linux, BSD, Unix or Mac platform. And, hardware-based MediaServers may run on any NAS (Network Attached Storage) or any specific hardware for delivering media future, like for example a PVR (Personal Video Recorder). Currently, there are more software-based MediaServers than hardware-based, but chances are that will change in the future.

UPnP MediaServer software

Free UPnP MediaServers

  • Windows Media Connect, Microsoft's free closed source UPnP MediaServer for Windows.
  • TVersity, a free closed source UPnP AV Media Server for Windows, (also features nice on-the-fly transcoding funcationlity and can share internet audio/video contents too).
  • Allegro Media Server (AMS), a free closed source UPnP MediaServer for Windows and Macintosh, (can interface to the third-party application iTunes).
  • Philips Media Manager (Streamium), a free closed source UPnP MediaServer for Windows and Macintosh.
  • GeeXboX ushare, a free open source UPnP MediaServer for Linux and NSLU2.
  • GMediaServer, a free open source UPnP MediaServer for Linux.
  • mediatomb, a free open source UPnP MediaServer for Linux.
  • CyberMediaGate, a free open source UPnP MediaServer for Windows/Macintosh/Lunux/UNIX, (reference implementation of UPnP MediaServer integrates into MythTV PVR for Linux)
  • PyMedS, a free open source Python UPnP MediaServer for Windows/Macintosh/Lunux/UNIX.
  • Cidero Internet Radio Server, a free open source Java UPnP MediaServer for Windows/Macintosh/Lunux/UNIX (Internet Radio Server only, SHOUTcast by default).
  • Platinum UPnP SDK, a dual license open source/commercial UPnP Media Control/Renderer/Server SDK for Windows, Linux, Mac. This is what XBMC uses.

Commercial UPnP MediaServers

  • TwonkyMedia, by TwonkyVision, a commercial UPnP Media Server for Windows and Linux, (can interface with the third-party applications iTunes, WinAmp, and Adobe Photoshop Album, can even run as a service on Windows).
  • On2Share, a commercial UPnP MediaServer plugin for MCE (Microsoft XP Windows Media Center Edition).
  • SnapStream BTV/BeyondTV, a commercial Media Control/Renderer/Server and PVR for Windows.
  • Nero MediaHome (part of Nero Premium), a commercial Media Control/Renderer/Server for Windows, (also features nice on-the-fly transcoding funcationlity and media organizing).
  • Cyberlink PowerCinema, a commercial Media Control/Renderer/Server for Windows, (also features nice media organizing funcationlity).
  • MusicMatch, a commercial MediaServer UPnP MediaServer (and music-player) for Windows, (also features nice media organizing funcationlity).
  • Digital5 Media Server, a commercial UPnP MediaServer for Windows, (also features nice media organizing funcationlity).
  • Elgato AV Media Streaming Server, a commercial UPnP MediaServer plugin for EyeTV (Elgato PVR software for Macintosh), (also features nice media organizing funcationlity).
  • AwoX, provides a family of commercial UPnP products and solutions.

UPnP MediaServer hardware

UPnP MediaServer software and hardware not compatible with XBMC

  • Sonos Zone Player, Sonus Zone Player is a UPnP MediaServer which can't play it's content on any non-sonos device, (it uses some propritory protocol to stream audio).
  • Rhapsody, by RealNetworks, a commercial UPnP MediaServer for Win/Mac, (Rhapsody requires an WMDRM-ND encrypted DRM connection).
  • Slimserver: a free open source MediaServer from Slim Devices for Windows, Linux and Mac OSX. Can see UPnP servers, but is not one itself.

Installing and Configuring Windows Media Connect on your PC

This step-by-step tutorial will walk you through the installation and setup of Windows Media Connect, a free UPnP MediaServer for Windows. In order to use this option, you need to have the following:

  • An XBMC build newer than 10 July 2006
  • Windows Media Connect from Microsoft, available here or here.

The first step is to download and install Windows Media Connect on your computer. This easy-to-use software allows you to share media (pictures, videos, music/audio) on your PC using the UPnP protocol, which is also supported by many stand-alone network players.

After installing Windows Media Connect, simply run the included setup utility included with it. The first screen that appears should look something like the one to the right. For now, simply choose Next.

Wmc1.jpg

Wmc2.jpg

The next step is to choose which folders are going to be shared with XBMC. It offers you the option of using the default folders. In this case, we are going to choose which folders to share.

Also, be sure to select Automatically start folder sharing when Windows starts.

Next, choose the folders that you would like to share, by selecting Add and choosing as many folders as you like. You can share entire drives or just individual folders. In this example, I have shared my Music folder.

After you are done, select Finish. You should now see a Windows Media Connect icon in your tray, indicating that the server is running.

Wmc3.jpg

Setting up UPnP Shares in XBMC

Configuring UPnP Shares in XBMC is as easy as setting up any other type of share. In this example, we are going to add the Music folder shared above to My Music, although you can use the exact same procedure to add a share to My Videos or My Pictures.

First, open My Music. Your screen should look something like the one displayed to the right, although your shares may be different.

Wmc4.jpg

File:Wmc5.jpg

Then, open the context menu by pressing the White button on your controller and select Add Source.

Then choose Browse and then Add Network Location. Choose Windows Media Connect as the Protocol and then Browse for the Server Address. Select the UPnP:// option and then you should see your computer's name. Select your computer and at this time, a help balloon should appear in the tray on your computer advising you that a new device has been connected.

Wmc6.jpg

Wmc7.jpg

You should see Unknown Device appear, as is displayed to the left. Select the device and choose Allow.

Back on your Xbox, you may have to press back (the B button) and reselect your computer name in order to make the shares appear. Then, select the share that appears and name it. At this point, the share whould appear in My Music.


Developers notes on UPnP

UPnP (Universal Plug and Play) is a set of royalty-free computer network protocols from the UPnP Forum. UPnP is built upon open, internet-based communication standards such as SSDP, HTTP, XML, SOAP, etc. (which means that any developer/programmer can make a device or software for any operating-system/platform in any program-language by following the UPnP standards and it should automaticly be compatible with all other UPnP devices). UPnP achieves this by defining and publishing UPnP device control protocols (also called profiles). One profile called UPnP Gateway is what routers implements to let computers automatically discover them or even control them by opening/closing ports on a firewall for example. Another profile which is not to be confused with the previous one is UPnP AV (for audio/video) which defines a set of functionalities to share/control and render content on a local network. There are typically three types of devices in UPnP AV (Audio/Video); a MediaServer which is a 'slave' device which sole purpose is to share content, a MediaRenderer which is a 'slave' device that can render content, and a UPnP MediaServer ControlPoint which is the 'master' that can detect/find UPnP MediaServers and control them (browse). UPnP MediaServers ControlPoint is not an actual UPnP device as it cannot be detected by other UPnP devices. A UPnP MediaRenderer ControlPoint is the 'master' that can detect/find and control UPnP MediaRenderers. A DMP (Digital Media Player) like XBMC typically only implements a UPnP MediaServer ControlPoint.

If you are a C/C++ programmer and like to make a UPnP MediaServer (or even add new UPnP features to XBMC) then we recommend you checkout the Platinum UPnP SDK, available on SourceForge.net. Platinum UPnP SDK is a free and open source software development kit that lets you easily create a UPnP MediaServer, MediaRenderer or Contol Point, it also happens to be that it is from this SDK that XBMC got its UPnP-client code from, (XBMC's UPnP MediaServer Control Point was also firstly implemented into XBMC by the author of the Platinum UPnP SDK, Sylvain a.k.a. c0diq). You should also visit the official UPnP™ Forum. Other good links for developers can be found at the bottom of the UPnP article on Wikipedia.

UPnP is the future of networked entertainment and are leading the way to an interconnected lifestyle. The UPnP™ Forum currently consists of almost 800 members (which consists of vendors, industry leaders in consumer electronics, computing, home automation, home security, appliances, printing, photography, computer networking, and mobile products), including companies such as; Microsoft, Intel, AMD, Adobe, Belkin, Cisco, LinkSys, D-Link, 3com, Fujitsu, IBM, NEC, RealNetworks, ReplayTV, ...and many, many more huge coperations. Membership of the UPnP™ Forum free.

Much information about comatibility can be found on the Digital Living Network Alliance (DLNA) website. DLNA is a specification that allows the sharing of music, photo, and video files over the home network, between different consumer electronics and PC products.. The DLNA like the UPnP™ Forum made from consists of vendors, industry leaders in consumer electronics, etc. Their goal make sure different UPnP devices work together without problem, they feature a "DLNA CERTIFIED™" certificate for products that have passed their interoperability testing standards, that includes guidelines which should be followed when making a UPnP device. Membership of DLNA free.

PS! Feature request to any willing developers out there; "UPnP Remote User Interface Client" support in XBMC, so that XBMC could control UPnP MediaServers which also has a "UPnP Remote User Interface Server" such as HTPC applications like SnapStream BeyondTV (and possible MediaPortal in the future) and other PVR softwares/devices, (control functions and commands such as record, schedule, play, pay, stop, fast-forward, etc.)