Difference between revisions of "UPnP"

From MythTV Official Wiki
Jump to: navigation, search
m (Troubleshooting)
(Misc cleanup)
Line 1: Line 1:
'''Universal Plug and Play''' ('''UPnP''') media sharing is an extremely easy method of sharing media (pictures/video/audio) on your network as it features automatic-discovery and does not require any configuration. As with most things which are very convenient, the security of any given implementation is an issue to which careful attention should be paid.
+
'''Universal Plug and Play''' ('''UPnP''') media sharing is an extremely easy method of sharing media (pictures/video/audio) on your network as it features automatic discovery and does not require any configuration. As with most things which are very convenient, the security of any given implementation is an issue to which careful attention should be paid.
  
 
== Introduction==
 
== Introduction==
Universal Plug and Play is a set of computer network protocols from the [http://www.upnp.org UPnP Forum]. The goals of UPnP are to allow UPnP devices on a network to detect each other and connect seamlessly, and to simplify the implementation of networks in the home (data sharing, communications, and entertainment) and corporate environments. The UPnP architecture supports zero-configuration, which implies no need for manual configuration on the user's end. There are typically three types of UPnP AV (Audio/Video) device control protocols (also called profiles); "UPnP AV MediaServer" whose sole purpose is to share content, "UPnP AV MediaRenderer" which renders content and exposes an interface to control the playback, and a "UPnP AV MediaServer ControlPoint" which can detect/find "UPnP AV MediaServers" and browse them to read media from them. A DMP (Digital Media Player) typically only implements a UPnP AV MediaServer ControlPoint, to be able to play files from UPnP AV MediaServers. For a more detailed explanation please read the "Developers notes on UPnP" at the bottom of this page.
+
Universal Plug and Play is a set of computer network protocols from the [http://www.upnp.org UPnP Forum]. The goals of UPnP are to allow UPnP devices on a network to detect each other and connect seamlessly, and to simplify the implementation of networks in the home (data sharing, communications, and entertainment) and corporate environments.
 +
 
 +
The UPnP architecture supports zero-configuration, which implies no need for manual configuration on the user's end. There are typically three types of UPnP AV (Audio/Video) device control protocols (also called profiles); "UPnP AV MediaServer" whose sole purpose is to share content, "UPnP AV MediaRenderer" which renders content and exposes an interface to control the playback, and a "UPnP AV MediaServer ControlPoint" which can detect/find "UPnP AV MediaServers" and browse them to read media from them. A DMP (Digital Media Player) typically only implements a UPnP AV MediaServer ControlPoint, to be able to play files from UPnP AV MediaServers.
 +
 
 +
For a more detailed explanation see [[Developers Notes on UPnP]].
  
 
==UPnP in MythTV==
 
==UPnP in MythTV==
MythTV [[Release_Notes_-_0.20|versions starting from 0.20]] have a built-in UPnP-server (a so called "UPnP AV MediaServer" device). UPnP AV MediaServers are where you store and share your media (pictures/videos/audio/music) from. So you can share MythTV media files to any UPnP-client (a so called "UPnP AV MediaServer ControlPoint" device) on your local-network, as long as that UPnP-client is not behind a firewall or you have opened the ports for UPnP in your firewall. That UPnP-client can then play those media files if it supports those MythTV codecs/container formats.
+
MythTV [[Release_Notes_-_0.20|versions starting from 0.20]] have a built-in UPnP server (a so called "UPnP AV MediaServer" device). UPnP servers are where you store and share your media (pictures/videos/audio/music) from. So you can share MythTV media files to any UPnP client (a so called "UPnP AV MediaServer ControlPoint" device) on your local-network, as long as the UPnP client is not behind a firewall or you have opened the ports for UPnP in your firewall. The UPnP client can then play those media files if it supports those MythTV codecs/container formats.
  
==Compatible UPnP AV MediaServer ControlPoints (UPnP clients)==
+
==Compatible UPnP Clients==
There are UPnP AV MediaServer ControlPoints (UPnP clients) available for most operating systems and many hardware platforms. UPnP AV MediaServer ControlPoints can be categorized as either software-based or hardware-based. Software-based UPnP clients can be run on PCs (personal computers), mainly on Win32, Linux, BSD, Unix or Mac platform. Hardware-based UPnP-clients may run on a stand-alone (or any specific hardware) DMP (Digital Media Player), like for example a DVD-player with built-in network-controller to stream media files over the network. Currently, there are more software-based UPnP clients than hardware-based ones, but chances are that will change in the future.
+
There are UPnP AV MediaServer ControlPoints (UPnP clients) available for most operating systems and many hardware platforms. UPnP clients can be categorized as either software-based or hardware-based. Software-based UPnP clients can be run on PCs (personal computers), mainly on Win32, Linux, BSD, Unix or Mac platform. Hardware based UPnP clients may run on a stand alone (or any specific hardware) DMP (Digital Media Player). For example, a DVD player with a ethernet interface to stream media files over the network.
  
===UPnP-client software:===
+
===UPnP Client Software===
 
* [http://andromote.de Andromote], a control point/Media Renderer for the Android Platform.
 
* [http://andromote.de Andromote], a control point/Media Renderer for the Android Platform.
 
* [http://plugplayer.com PlugPlayer], a control point/Media Renderer for the iPhone and iPod touch.
 
* [http://plugplayer.com PlugPlayer], a control point/Media Renderer for the iPhone and iPod touch.
Line 24: Line 28:
 
* [http://xbmc.org/ XBMC]  (formerly X Box Media Center). Free client for XBox, Mac OS X, Linux and Windows. Has built in [http://xboxmediacenter.com/wiki/index.php?title=UPnP_Sharing UPnP] from the Platinum UPnP C++ SDK.
 
* [http://xbmc.org/ XBMC]  (formerly X Box Media Center). Free client for XBox, Mac OS X, Linux and Windows. Has built in [http://xboxmediacenter.com/wiki/index.php?title=UPnP_Sharing UPnP] from the Platinum UPnP C++ SDK.
  
===UPnP-client hardware:===
+
===UPnP Client Hardware===
 
UPnP client players have their own MythTV wiki page: [[UPnP Client Info]]
 
UPnP client players have their own MythTV wiki page: [[UPnP Client Info]]
 
* [http://usa.asus.com/product.aspx?P_ID=sPkRGUeRrpiVYl5K Asus O!Play R1]
 
* [http://usa.asus.com/product.aspx?P_ID=sPkRGUeRrpiVYl5K Asus O!Play R1]
Line 42: Line 46:
 
* [http://us.zyxel.com/web/product_family_detail.php?PC1indexflag=20060802112123&CategoryGroupNo=PDCA2007032 ZyXEL DMA-1000], a wired, HD-capable media player.
 
* [http://us.zyxel.com/web/product_family_detail.php?PC1indexflag=20060802112123&CategoryGroupNo=PDCA2007032 ZyXEL DMA-1000], a wired, HD-capable media player.
  
===UPnP-clients software/hardware not yet tested with MythTV:===
+
===UPnP Clients software/hardware not yet tested with MythTV:===
 
* [http://www.slimdevices.com/su_downloads.html Slimserver]: a non-tested free open source UPnP-client (and server) from Slim Devices for Windows, Linux and Mac OSX. (Comment by news: Up to my knowledge they use their proprietary protocol and not uPnP)
 
* [http://www.slimdevices.com/su_downloads.html Slimserver]: a non-tested free open source UPnP-client (and server) from Slim Devices for Windows, Linux and Mac OSX. (Comment by news: Up to my knowledge they use their proprietary protocol and not uPnP)
 
* [http://gmrender.nongnu.org/ GMediaRender], a free open source UNIX/Linux media renderer.
 
* [http://gmrender.nongnu.org/ GMediaRender], a free open source UNIX/Linux media renderer.
Line 55: Line 59:
 
* [http://netgear.com/Products/Entertainment/DigitalMediaPlayers/EVA8000.aspx NETGEAR EVA8000], a wireless HD-capable media player supporting a range of formats.
 
* [http://netgear.com/Products/Entertainment/DigitalMediaPlayers/EVA8000.aspx NETGEAR EVA8000], a wireless HD-capable media player supporting a range of formats.
  
===UPnP-clients server/hardware not (yet?) compatible with MythTV:===
+
===UPnP Clients server/hardware not (yet?) compatible with MythTV:===
 
* [http://www.sonos.com Sonos Zone Player] is a UPnP-client which can't play its content on any non-Sonos device (it uses some propritory protocol to stream audio).
 
* [http://www.sonos.com Sonos Zone Player] is a UPnP-client which can't play its content on any non-Sonos device (it uses some propritory protocol to stream audio).
 
* [http://www.computervideo.net/nov04-1.html Elgato eyeHome] hardware is not a UPnP client. It seems to use the iRDMI (ShoutCast?) protocol, plus other proprietary stuff (ports 1055-1059)
 
* [http://www.computervideo.net/nov04-1.html Elgato eyeHome] hardware is not a UPnP client. It seems to use the iRDMI (ShoutCast?) protocol, plus other proprietary stuff (ports 1055-1059)
Line 67: Line 71:
 
* Make sure you have a value for <b>MusicLocation</b> and/or <b>VideoStartupDir</b> set for your backend hostname if your frontend and backend are on different machines.
 
* Make sure you have a value for <b>MusicLocation</b> and/or <b>VideoStartupDir</b> set for your backend hostname if your frontend and backend are on different machines.
 
* Make sure you have a route for 239.0.0.0/8 out your lan nic BEFORE mythbackend starts (route add -net 239.0.0.0/8 eth0).  It seems it won't work if you add the route later.
 
* Make sure you have a route for 239.0.0.0/8 out your lan nic BEFORE mythbackend starts (route add -net 239.0.0.0/8 eth0).  It seems it won't work if you add the route later.
* Playstation 3's (ps3) take a while to find the backend, and searching can help, but the PS3 (f/w 2.17) isn't actually sending the packet everytime you search. You can tcpdump for udp packets to 239.255.255.250 to watch for it. `tcpdump ether host {ps3 mac addr}` also works well.
+
* The Playstation 3 can take a while to find the backend. Searching can help, but the PS3 (f/w 2.17) isn't actually sending the packet everytime you search. You can tcpdump for udp packets to 239.255.255.250 to watch for it. `tcpdump ether host {ps3 mac addr}` also works well.
  
 
==See Also==
 
==See Also==

Revision as of 21:48, 14 September 2010

Universal Plug and Play (UPnP) media sharing is an extremely easy method of sharing media (pictures/video/audio) on your network as it features automatic discovery and does not require any configuration. As with most things which are very convenient, the security of any given implementation is an issue to which careful attention should be paid.

Introduction

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, and to simplify the implementation of networks in the home (data sharing, communications, and entertainment) and corporate environments.

The UPnP architecture supports zero-configuration, which implies no need for manual configuration on the user's end. There are typically three types of UPnP AV (Audio/Video) device control protocols (also called profiles); "UPnP AV MediaServer" whose sole purpose is to share content, "UPnP AV MediaRenderer" which renders content and exposes an interface to control the playback, and a "UPnP AV MediaServer ControlPoint" which can detect/find "UPnP AV MediaServers" and browse them to read media from them. A DMP (Digital Media Player) typically only implements a UPnP AV MediaServer ControlPoint, to be able to play files from UPnP AV MediaServers.

For a more detailed explanation see Developers Notes on UPnP.

UPnP in MythTV

MythTV versions starting from 0.20 have a built-in UPnP server (a so called "UPnP AV MediaServer" device). UPnP servers are where you store and share your media (pictures/videos/audio/music) from. So you can share MythTV media files to any UPnP client (a so called "UPnP AV MediaServer ControlPoint" device) on your local-network, as long as the UPnP client is not behind a firewall or you have opened the ports for UPnP in your firewall. The UPnP client can then play those media files if it supports those MythTV codecs/container formats.

Compatible UPnP Clients

There are UPnP AV MediaServer ControlPoints (UPnP clients) available for most operating systems and many hardware platforms. UPnP clients can be categorized as either software-based or hardware-based. Software-based UPnP clients can be run on PCs (personal computers), mainly on Win32, Linux, BSD, Unix or Mac platform. Hardware based UPnP clients may run on a stand alone (or any specific hardware) DMP (Digital Media Player). For example, a DVD player with a ethernet interface to stream media files over the network.

UPnP Client Software

  • Andromote, a control point/Media Renderer for the Android Platform.
  • PlugPlayer, a control point/Media Renderer for the iPhone and iPod touch.
  • 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).
  • djmount, a free open source Linux client, which presents all MediaServers in a filesystem so that files can be played using any media player.
  • GeeXboX, a free embedded Linux LiveCD-based Media Player distribution which can be used on an x86 or PowerPC hardware. GeeXboX can also be installed to a disk drive, USB disk, or CF flash.
  • Media Manager, from Roxio, which is used for transferring media to smart phones, such as the Blackberry Curve.
  • MediaCloud, a player for Mac OS X (AppleTV plugin also available).
  • Platinum UPnP SDK, a cross-platform dual license open source/commercial UPnP Media Control/Renderer/Server SDK for Windows, Linux, Mac. (This is what XBMC uses).
  • Intel UPnP AV open Test and Development Tools, UPnP UDP-Sniffer/Device-Spy/Device-Builder code generator.
  • XBMC (formerly X Box Media Center). Free client for XBox, Mac OS X, Linux and Windows. Has built in UPnP from the Platinum UPnP C++ SDK.

UPnP Client Hardware

UPnP client players have their own MythTV wiki page: UPnP Client Info

UPnP Clients software/hardware not yet tested with MythTV:

  • Slimserver: a non-tested free open source UPnP-client (and server) from Slim Devices for Windows, Linux and Mac OSX. (Comment by news: Up to my knowledge they use their proprietary protocol and not uPnP)
  • GMediaRender, a free open source UNIX/Linux media renderer.
  • JRiver Media Center, a commercial Media Control/Renderer/Server for Windows.
  • Musicmatch Jukebox, a commercial MediaServer UPnP MediaServer and music-player for Windows.
  • Nero ShowTime, a commercial Media Control/Renderer/Server for Windows.
  • VLC media player, a free open source cross-platform media player that has a UPnP-client (via the CyberLink UPnP plugin).
  • WinAmp, a free closed source media player for Windows, using the commercial On2Share UPnP plugin.
  • Microsoft Windows Media Player (WMP), a free closed source media player for Windows, using the commercial On2Share UPnP plugin.
  • D-Link DSM-320, MediaLounge Wireless Media Player, (stand-alone hardware player).
  • D-Link DSM-320RD, MediaLounge Wireless Media Player with DVD and Card Reader, (stand-alone hardware player).
  • NETGEAR EVA8000, a wireless HD-capable media player supporting a range of formats.

UPnP Clients server/hardware not (yet?) compatible with MythTV:

  • Sonos Zone Player is a UPnP-client which can't play its content on any non-Sonos device (it uses some propritory protocol to stream audio).
  • Elgato eyeHome hardware is not a UPnP client. It seems to use the iRDMI (ShoutCast?) protocol, plus other proprietary stuff (ports 1055-1059)
  • Archos 605 wifi plays music fine. It can browse videos, but many aren't playable. .VOB files seem to work.
  • Canola has the ability to play audio from UPnP servers but the plugin specifically says MythTV is not supported.
  • D-Link DSM-330 DiVx Connected HD Media Player - UPnP not supported
  • XBOX 360 According to GreyFoxx, this does not work 8/21/09 - Works perfect

Troubleshooting

  • Make sure you set the proper external IP in mythtv-setup, otherwise you will be able to see your server via UPnP, but the file location urls will contain the default 127.0.0.1 IP address.
  • Make sure you have a value for MusicLocation and/or VideoStartupDir set for your backend hostname if your frontend and backend are on different machines.
  • Make sure you have a route for 239.0.0.0/8 out your lan nic BEFORE mythbackend starts (route add -net 239.0.0.0/8 eth0). It seems it won't work if you add the route later.
  • The Playstation 3 can take a while to find the backend. Searching can help, but the PS3 (f/w 2.17) isn't actually sending the packet everytime you search. You can tcpdump for udp packets to 239.255.255.250 to watch for it. `tcpdump ether host {ps3 mac addr}` also works well.

See Also

Developers Notes on UPnP

External Links