The UPnP Bible

Search This thread

Menneisyys

Retired Moderator
Jul 25, 2005
5,511
138
www.winmobiletech.com
Introduction

What is Universal Plug and Play (UPnP) and why you might want to make use of it? To get a nice overview what it’s all about, spend some time on reading the Digital Living Network Alliance (DLNA) tutorial’s first three pages HERE, HERE and, finally, HERE. These pages are also interlinked so you can just safely follow the “Learn how DLNA works” link at the bottom of the first page. I especially recommend the interactive “What can you do with DLNA products?” section at the bottom of the third page. Try selecting all the possible pairs to see what a particular device pair can be used for - this demo is really instructive. An example screenshot showing what for example the NAS & networked TV pairing can be used for:

DLNAWhatCanYouDo.jpg


Pretty instructive, isn't it? Again, I really recommend playing with the different pairings so that you get a clear picture of what UPnP can really be used for. In addition, please PLEASE do read the above DLNA intro (the three pages) so that you understand what UPnP is about and the terms used in this UPnP Bible. I’ve refrained from reproducing (almost) the same info in here so that I could concentrate on the more important and never-before-published subject: how this all works on the two most widely used mobile platforms: Windows Mobile and Symbian.

You might also want to take a look at the Wiki page (most importantly, the “UPnP AV (Audio and Video) standards” section) but it’s highly technical and, for a non-pro, in no way as comprehensible as the DLNA tutorial. Note that the DLNA tutorial doesn’t explain what “Controllers” are. It’s, as has also been explained in the Wiki (officially referred to by “MediaServer ControlPoint”), is like a remote controller between the source (the “MediaServer”), that is, typically a file store, and the target (the “MediaRenderer”); that is, typically, a TV set, a monitor or a home Hi-Fi.

On both Windows Mobile and Symbian (more precisely, the latest-generation, N-series Nokia handsets) all these three functionalities are supported:

  1. a phone can act as the source (“MediaServer”) of multimedia content (for example, the pictures you’ve taken with the built-in camera; the MP3’s you have on your storage card etc.)
  2. it can also act as the mediator (“MediaServer ControlPoint”) between the server and the renderer. That is, it can select the files on the server you’d like to, say, see on your TV / listen to on your home Hi-Fi etc. It also allows for basic playback control functionality like pausing/ resuming, previous / next etc.
  3. finally, it can also function as the target of the stream: the device that actually plays back the video / audio / images on its own screen / audio unit. That is, it’s also a “MediaRenderer”.

As far as the two operating systems are concerned, all these functionalities are implemented. First, a birds-eye view on what’s available and supported.

For Windows Mobile (WM), currently, there are three apps with UPnP capabilities: Nero Mobile Pro, Conduits’ Pocket Player and Rudeo Play & Control (at the time of writing - December, 2007 - no preview of CorePlayer 1.2 was available. It will also have UPnP support.)

For the newer Nokia N-series Symbian devices (N95 (8 GB ), N81, N82), the OS already has built-in, pretty impressive (no third-party, commercial apps are needed) UPnP support.

t1.png


[*]: with the N95, only starting with firmware version v20, not with previous OS’es; also see THIS. Note that the manual printed with the original N95 still reflects this (old) state.
[**]: limited presentation capabilities (while it has no problems with the much more important streaming): no library, not even file system folder-separated view

Now, let’s take a look at what functionalities the MediaRenderer-capable applications offer.

t2.png


I'll later explain what the difference between pre-fetching and streaming is.

Incidentally, the second column ("Accessible for external controllers") is also clearly visible in the following Windows Vista screenshot:

NetworkBrowserInVista.png


It shows the following UPnP servers / renderers in order: Nero MediaHome (server), N95 (server), (the notebook itself, where the screenshot has been taken), the built-in UPnP server of the Vista on the notebook, the Conduits Pocket Player (PP) renderer (!) on the “wr-x51v” PDA; the same PP on the same PDA as a server; PP as a server on the “wr-univ” and, finally, PP as a renderer on the same “wr-univ”.

1.1 Differences between traditional Remote Media Controllers (RMC’s) and full UPnP applications

Back in February, I’ve already published an extensive Bible on all non-UPnP applications. Now, let’s see what the real difference between a fully-fledged UPnP app and the, back then, reviewed remote controllers is!

First, as you may already have guessed (without even reading my previous Bible), RMC’s can only remotely control media player applications – they don’t offer built-in, local rendering (MediaRenderer) or file serving (server) capabilities. The best, UPnP-capable titles in this respect (currently, as of late December, 2007, Pocket Player 3.51 on Windows Mobile and the built-in UPnP client on the latest Nokia N-series models) offer both of these.

Second, their configuration can be much more complicated than those of UPnP clients, particularly when you need to manually (!) enter the local network address of the server (also containing the media player) you’d like to remotely control. This is true with almost all RMC’s not capable of discovery protocols to automatically discover controllable servers in the LAN. UPnP’s automatic discovery also greatly helps in this respect: you don’t need to do any manual work; just let the controller discover the servers / renderers and you’re all set.

Third, you can only remote control a Windows PC (in cases, other desktop OS’es are also supported) with those “old-fashioned” RMC’s because all the tested applications need server&renderer-side custom software to be installed. This also means it’s impossible to remote control for example Network Attached Storage (NAS) devices (file servers) or plain renderers like a flat TV. With UPnP, all these can be remote controlled.
 
  • Like
Reactions: embql

Menneisyys

Retired Moderator
Jul 25, 2005
5,511
138
www.winmobiletech.com
1.2 Available UPnP-capable software

Now, let’s take a look at what’s available on mobile platforms. Note that as far as Palm OS is concerned, not even Pocket Tunes, by far the best music player support UPnP (and CorePlayer won’t support it either) – you need to go the manual route explained in my RMC Bible for being able to stream stuff from your local UPnP network. There’s a nice thread on this all HERE.

Please, Windows Mobile users, don’t be disgruntled because of including Symbian. Some of the, especially, multimedia / entertainment-centric smartphones like the Nokia N95, N81 and N82 have excellent capabilities well worth incorporating into Windows Mobile handhelds. For example, these devices support UPnP “out of the box”, which is only available (if at all – see for example the complete lack of, say, UPnP printer support in current WinMo apps) with (expensive) third-party applications on WinMo. A direct inter-OS (operating system) comparison like this will certainly help both Microsoft decide to, finally, include UPnP in Windows Mobile (not only on non-WM WinCE 6 devices) and also shows WinMo hardware manufacturers what they should concentrate their forces on – for example, at really (!!!) lowering Wi-Fi power usage when not actively used.

The same also states for Symbian users. I know you’d rather not see Windows Mobile contents in here, but, again, such a comparison is instructive for you too because, then, you’ll know what Nokia should be told in order to improve the facilities of its client. And, as I seriously doubt anyone (except me) would write a thorough feature comparison / buglist of these two operating systems, Symbian developers can make great use of this report.

1.2.1 Windows Mobile

1.2.1.1 Conduits Pocket Player 3.51

Currently (before the release of CorePlayer 1.2 and its UPnP support) this is definitely the best and most versatile UPnP client for Windows Mobile. It has definite advantages over the alternatives: first, as opposed to the two other WM solutions, it can act as a server. Second, as opposed to Nero’s app, it can act as a pure controller (without locally rendering anything), in which it can be pretty handy at just controlling the data flow between your home entertainment devices. After all, if you do have a UPnP-enabled flat TV (with an excellent H.264 decoder), why would you want to watch the same video on the small screen of your smart phone? On the other hand, your phone is one of the best tools to actually remote control the data flow in the network - you, for example, won't need to purchase additional, UPnP-only remote controllers if you already have a UPnP remote control-capable phone in your pocket.

The UPnP interface, accessible under Browse / Network, is pretty easy to master. In addition, moving between the pages (with the left/right D-pad arrows) is very easy too – not so with, say, the much more awkward (and VERY slow!) Nero Mobile Pro, where it's very easy not to be able to click the "Back" arrow at the top of every list.

It’s only at remote controlling that I’ve found it a bit lacking: the pure remote control user interface (UI) it uses isn’t as intuitive as that of Nokia or Rudeo: you need to use a separate, list-based UI. That is, not the native, well-known and familiar playback interface, but a completely different one depicted here:

LocalPlayback3.png


In this regard, Nokia’s and the Rudeo apps are definitely better. Again, on these, you can use the well-known controls to control the multimedia stream flow between the media server and the renderer as if you played back a local stream as can be seen in the following screenshot:

N95RemoteControlGUI.png


As can also be seen, Nokia's (and Rudeo's too) not only displays the controls to control the rendering of a multimedia stream, but also displays its metadata, the progress etc. No such features are available with Pocket Player.

1.2.1.1.1 Additional screenshots & usage tips

An example of browsing my (Vista) notebook: the main category list. All these contain the usual categorization: the music list shows the traditional (example of the album view and, inside of it, the list of the individual songs) library view.

The list of videos is also shown; they, however, can’t be played back, not even WMV files (which are, by default, supported by PP with local playback) – only the sound will be heard. If playback starts at all, that is - it doesn’t seem to work on WM6 (only the list is shown, play controls don’t work) ; it does on WM5 as can also be seen in HERE (notice that the movie is being played back). Unfortunately, this also applies to viewing pictures – while their list is correctly displayed, “Play” doesn’t result in their being actually displayed.

PP is also able to use another renderer (screenshot of stepping into the menu); for example, in THIS screenshot, you can see the GUI for remote controlling a device.

1.2.1.1.2 Problems (as of version 3.51)

1. Even Western (äö, for example) accents in the title of the MP3 tags (the one needed to be displayed in the given situation) result in the clients not being able to connect. The Symbian client displays the server’s refusing the connection (“Selected device rejected the operation”):

PPAccentProblemSelectedDeviceRefuse.png


The Nero Mobile client, when run from another PPC, just crashes and immediately exits when stepping into a view that would contain an accent anywhere. From the same PPC, it “only” refuses to display anything including and after the accent. For example, if you have the album “Hilapiäles” from the artist “Pömpeli”, then, only a single “P” will be displayed as an artist name (the second letter, ö, is already accented) and only “Hilapi” as the album name.

2. When (this is a very rare case but you may still run into it, particularly if you try to remote control a Windows Mobile PDA from, say, a Symbian phone, which defaults to remote rendering) it’s controlled from an external controller and its renderer module is instructed to connect to its MediaServer module, the connection will fail. During this, it just displays a local (192.168.0.1:51524) connection message for about 30 seconds; nothing happens after this, no playback / anything.

3. When operated in direct mode (NOT remote controlled! In the latter case, it has no problems accessing MediaServers!), it can’t connect to other Windows Mobile / Symbian servers (tested with both serving-capable UPnP apps: Pocket Player itself, running on another Pocket PC, and Nokia’s UPnP app). Then, it displays a “Server Error or Access Denied” error message.
 
  • Like
Reactions: embql

Menneisyys

Retired Moderator
Jul 25, 2005
5,511
138
www.winmobiletech.com
1.2.1.2 Rudeo Play & Control 2.9.15

In my RMC Bible, I’ve already discussed the non-UPnP-capable version of this program, Rudeo Control for Windows Media Player. Rudeo Play & Control is entirely different as it’s specifically written for controlling UPnP-compliant servers and renderers – and to play back from the latter.

RudeoMain.png


(playing back a song remotely; also showing the target renderer; note that the song title is only shown at the bottom)

RudeoMainLocal.png


(playing back a song locally, also showing the target renderer)

RudeoServerlist.gif


(server list)

During install time, you can also install a server-side component, which lets for some goodies well-explained in the user guide. It, however, didn’t work with my setup (XP SP2 + WMP 11).

Other screenshots: filelist of the, in the previous screenshot, listed two servers. As can be seen, it correctly lists the categories / files. Quickly playing a title is pretty easy (if you don’t want to fuss with playlists): just tick the given song, tap and hold it and select “Checked – Add and Play” as can be seen in HERE.

It seems it has severe problems with the CPU usage even in pure remote control mode (the same on the Wizard, in pure remote control mode; the red chart is the charted Rudeo executable). The situation is even worse when it locally plays back music (Wizard example screenshot HERE); then, the CPU usage can be so high that the player really quickly chews through the battery. Note that this seems to be a generic problem with all Rudeo products: Rudeo Control for Widows Media Player also had unpredictable, sometimes very high CPU usage (see my previous RMC Bible).

Incidentally, as has already been mentioned, like Nokia’s player and as opposed to Pocket Player and Nero and, it pre-fetches the songs before playing them. This can be a bit time-consuming, largely depending on the speed / optimization of the storage card. Unlike with the Nokia, where you can set where the fetched file should be temporarily stored (either the card or the, at times, much faster built-in storage), you can’t do the same on Rudeo’s controller.

1.2.1.3 Nero Mobile Pro 1.4.0.9

I’ve already reviewed the individual audio file playback and MPEG-4 ASP/AVC playback support of Nero Mobile Pro. Unfortunately, compared to the best (and, at times, even free like TCPMP!) titles, it didn’t really excel at them.

The case is pretty much the same with UPnP. First, it only has pretty basic UPnP support. It has absolutely no MediaServer and (purely remote) MediaController capabilties, unlike all of the alternatives (note that Rudeo can’t act as a MediaServer either; Pocket Player and Nokia can). That is, it can “only” connect to other UPnP MediaServers and play back (locally render) their contents on the PDA itself. That is, you can’t use it at all to, say, remote control the communication between your UPnP-capable flat panel TV and network storage – again, unlike with all the other alternatives.


1.2.2 Symbian (Nokia N-series)

The latest Nokia N-series (that is, multimedia-centric) phones have UPnP support built-in. Before the latest (2007 Autumn / Winter) batch of multimedia Nokia phones, they - in addition to being MediaServers and the ability to send files directly to, say, UPnP printers - were only able to remote control other UPnP devices. That is, they didn’t have local, on-phone rendering (playback) capabilities. Now, with the latest models (N81, N82, N95 8GB ) and firmware upgrades of older models (N95-1 with the v20 firmware), a (pre-fetching) renderer component has also been added.

N95MainSearch.png


(main mediaserver list; as can be seen in there, it saw Conduits Pocket Player’s server on my Dell Axim x51v; Orb, Nero Mediahome and the built-in UPnP server in Vista on my notebook called “WR-NOTEBOOK”; the Conduits Pocket Player’s server on my HTC Universal and, finally, the TVersity UPnP server on my notebook.)

A quick tip: by default, when you select a (single) song on an external MediaServer to be played back on the (local) Nokia, when you click on the song, the pop-up window displayed only lists the external renderers.
 

Menneisyys

Retired Moderator
Jul 25, 2005
5,511
138
www.winmobiletech.com
N95SelectRendererFromList.png


In order to play back the title on the local Symbian device itself, you must select Play / On device instead:

N95PlaybackMenuSelectOnLocalDevice.png


Note that the other menu item in this submenu, “Via home network”, results in displaying the available renderers on the network – that is, the same dialog as above. Also note that, if you select more than one song to play back with either Mark/Unmark / Mark all viewed or with the traditional multiple selection shortcut on your particular model (for example, on the N95, holding down the pen button while navigating down with the D-pad), you will only be able to use this menu for initiating playback. Simply pressing Action on a title to be played back on another, external renderer won’t work when more than one title are selected.

Note that, in order for the other devices to see your Symbian device (that is, it can act as a MediaServer), you must manually enable “Show phone” in “Visibility in network” in the settings as can be seen in HERE. This needs to be done every time you start Tools / Connectivity / Home media – this setting, unlike with Conduits Pocket Player’s similar setting (Browse / Setting/ Enable sharing), doesn’t stick.

Still speaking of PP, it’s also worth pointing out that, in Pocket Player, sharing your own contents is, by default, disabled; therefore, you may want to click all the three list elements in Browse / Network / Settings so that they become the following:

EnableLocalSharing.png


(the second list item makes Pocket Player controllable from another MediaController. If you don't need it, just don't click it).

Finally, in addition to multimedia playback / remote control, the Symbian UPnP client excels at something the Windows Mobile clients don’t support: handling non-multimedia UPnP devices like wireless UPnP printers. To make use of them, you can just copy any document to them with “Copy to home network”:

N95CopyLocalFilesToNetwork.png


1.2.2.1 Problems with the Symbian client

Unlike with all (!) MediaServers (Windows Mobile and desktop alike), it doesn’t support media library or even file system-based file / media separation. That is, while it does have three main categories (Music, Images&Videos, Uploaded) (the latter for direct file transfer – the N95 supports it both as a client and a server – note that few other MediaController clients support this). (The same category screenshot is HERE, taken on the desktop running Cidero, which I’ll elaborate on later.)

Inside these categories, however, ALL the available files are shown without any separation (screenshots: Music; Images&Videos) – neither library-, nor file system-based. Hope the Nokia folks fix this VERY annoying issue some time and at least adds file system-based separation, if not the full Music Player library support.
 

Menneisyys

Retired Moderator
Jul 25, 2005
5,511
138
www.winmobiletech.com
1.3 Minimizing power usage – with benchmarks

1.3.1 Rendering: Pre-fetching vs. streaming

As has already been explained, a media renderer may opt for pre-fetching a file before / during playback so that it doesn’t have to stream the content all the time from the MediaServer. Two renderers follow this approach: Nokia’s and Rudeo.

Pre-fetching, while it’s certainly has its drawbacks (for example, pre-fetching huge media files may just fail because of the lack of storage space and/or can be lengthy at first), has some definite advantages; most importantly, the Wi-Fi power usage can be minimized – if it automatically powers down itself after a given inactivity time threshold. The following screenshot certainly shows this all:

N95PrefetchWifiusage.png


I’ve played back several songs during the test; the power usage peaks definitely show the boundaries of these songs. (It was slightly before the end of each song that the Wi-Fi unit was activated and the next song was quickly pre-fetched.) As can clearly be seen, the average power usage was 0.57W, which is about only 0.18W more than playing back local MP3’s (see THIS for more info & never before published benchmarks on the latter). Pretty impressive, isn’t it?

Interestingly, keeping the N95 visible (again, it defaults to being invisible) in the Wi-Fi UPnP network (as a server device) was also really battery-friendly – only consuming some 0.11W’s (that is, almost the same as without Wi-Fi).

As far as Rudeo on Windows Mobile is concerned, it also does pre-fetching, which also allows for the Wi-Fi unit’s powering down. However, as the CPU usage of Rudeo is pretty high, the overall power usage will also remain high, particularly with non-battery-friendly CPU’s like the Intel XScale PXA-2XX series (their latest, PXA-3XX series, now, Marvel-branded CPU’s are stated to be better in this respect; I've elaborated on the huge power usage increase with increasing CPU usage when compared to, in this respect, much better architectures like the newer TI OMAP platform for example HERE, in section "1.1.1.1 Battery life considerations" - worth a read!). The following acbTaskMan screenshot (measured on a Dell Axim x51v with minimal backlight and moderate sound volume) clearly shows this:

x51vPrefetchWifiusage.png


This chart shows an about 2-3-minute-long initial pre-fetch session, when all the three demo songs were pre-fetched for playback on the local PPC (about 450 mA current, with 600 mA peaks). After the fetching has completed, the player switched to regular playback and the Wi-Fi unit was powered down to idle state, but the CPU usage remained very high (20% at 624 MHz, with much higher peaks) – hence the overall ~280 mA current.

It can clearly be stated that, battery usage-wise, prefetching is WAY better than streaming solutions. The following screenshot shows Nero Mobile Pro (in minimized state – let’s not forget that its graphics takes a LOT of CPU cycles, resulting in even worse figures) streaming (MP3’s from Orb) on the Dell Axim x51v (run without a charger). As can clearly be seen, the average Amperage was around 450 mA’s, while the CPU usage at around 60% - that is, not much higher than with Rudeo (let alone the N95, which has by far the best power management). Yes, prefetching surely has definite advantages.

NeroWiFiStreamingusage.png
 

Menneisyys

Retired Moderator
Jul 25, 2005
5,511
138
www.winmobiletech.com
The situation is similarly bad with Pocket Player, which also uses streaming:

PPStreamingPowerUsageUniv.png


As can clearly be seen, the Amperage has always been around 380 mA (with the lowest backlight level and default Wi-Fi sensitivity setting) – which is still about 100 mA’s more than with Rundo and its Wi-Fi power saving by pre-fetching contents. The somewhat lower CPU usage of Pocket Player doesn’t really help in this respect.

Note that the previous screenshot has been made on the 520 MHz HTC Universal because, on the x51v, for some reason, PP has produced far worse results, where the CPU usage is way more as can also be seen in HERE. Frankly, I don’t know what this is caused by.

Note that both Nokia’s engineers and Rudeo’s developers allow for continuous playback: Nokia pre-fetches the next song while still playing the last one and Rudeo fetches all the songs (and writes to the storage card) while playing the first (few) song(s). This results in no pauses between songs (if there are more than one of them) – only the starting of the playback of the first song will be delayed.

1.3.2 Remote controlling

The situation with pure remote controlling is pretty much the same as with above. The power saving feature of the Nokia kicks in quite fast and results in about 0.15-0.17W generic power usage (that is, about 0.07 Watts more than without Wi-Fi remote control activated). Windows Mobile-based devices, in this mode, fare far better than in the previous case as can clearly be seen in the following screenshot:

WiFiRemoteControlx51v.png


As can clearly be seen, the average current is 130-150 mA (just slightly more than without doing anything and a LOT less than the ~400 mA average of active Wi-Fi streaming), which clearly shows the Wi-Fi unit is idling and the CPU usage, which is very low, doesn’t contribute much to the overall power usage.

1.3.2.1 Try disconnecting / powering down your handset when not actively remote controlling!

Finally, a quick tip. As has also been explained in the RMC Bible, you can safely disconnect / power down your handset after initiating a (fully) remote playback – that is, between, for example, a NAS and a flat TV. Then, when you need remote control again, you just power on your device, let the Wi-Fi unit reconnect and you'll almost promptly be able to regain remote control on both the server and the renderer. This is pretty much the same as with traditional, non-UPnP RMC applications and, again, is thoroughly explained in the RMC Bible.

1.4 Networking

If you plan to use your handset in a “real” home environment (to, for example, control the multimedia data flow between a flat TV and a Network Attached Storage), you’ll end up having to use Wi-Fi.

You may (depending on whether your clients are Bluetooth PAN – see below – capable) also want to use Wi-Fi if you “only” have computers on your network. Then, you’ll have somewhat more choices: you can use both infrastructure and peer-to-peer (p2p) mode between the devices. The latter doesn’t require an access point and is supported by both Windows Mobile and Symbian.

However, if you strive for better battery life, you can also use Bluetooth (BT) Personal Area Network (PAN) if and only if all your UPnP components support it. Unfortunately, there’s no widespread support for BT PAN. Symbian devices don’t support it at all; neither do Windows Mobile ones with the MS BT stack in client mode (and, unrestricted, in server mode only with an additional hack). That is, it’s only with Windows Mobile devices with the (in cases, “hacked”, post-installed) Widcomm (Broadcom) BT stack that you can use this form of very battery-friendly form of multimedia sharing / control.

Please also see the related section in the old RMC Bible for more info on all these networking-related questions. Also, let me know if you don’t know how to set up these kinds of networks - but, of course, before asking, first, read the linked article (and all the backlinked ones - I've publsihed several, extensive tutorials on creating for example peer-to-peer Wi-Fi networks).


2. Desktop UPnP apps

Should you want to play with desktop (Windows, Linux, Mac etc.) servers / controllers / renderers, you’ll want to check out the following section. Note that you will in no way need these applications for your mobile UPnP clients to operate in an already-deployed UPnP home network; I’ve only presented it to you so that you know where to look for, say, a pure, but decent and free (!) controller running on any desktop or server OS (for that, I recommend Cidero’s app). These can help a lot with quickly seeing whether a given server is accessible / visible on the network, what content it offers etc.

Another great use for these apps (in this case, Nero MediaHome) is seeing what’s happening in the UPnP network, how many users / clients have connected to your server from which local IP’s. These apps greatly help in tracking down possible networking problems. For this kind of problem fixing, I recommend Nero MediaHome the most.

In the next three subsections, I elaborate on the three main components of the UPnP architecture: (Media)Server, (Media)Controller and (Media)Renderer. In general, there’re no software products implementing all these three functionalities (unlike, say, Conduits Pocket Player on Windows Mobile). There’s On2Share Pro - UPnP AV Suite that promises to implement all of this (it has a 14-day trial and is pretty cheap: only 19.95 euros), but I’ve never managed to make it really work – neither under Windows XP nor under Vista. (I’ve tried to do this on two different desktop PC’s, using two different networking topologies – both peer-to-peer Wi-Fi and using a standard access point. A no-go. While it did list the other UPnP-capable, visible (either a server (upper listbox) or a renderer (lower listbox)) participants:

OnShareMain.jpg


(another screenshot of the lower part of the server list)

it wasn’t able to communicate with them in any way. (Note that the screenshot has been taken under Vista, using large fonts (a must on a 15" UXGA screen); this is why the lower left buttons are messed up; on XP, with normal fonts, it's correctly rendered. Also note that it displays 127.0.0.1 as the local IP, that is, localhost. This shows the computer had no active Internet connection when the app was started (I've, later, set up an Internet-less p2p Wi-Fi connection manually). Don’t let this make you think I’ve messed up the setup – in other tests, I’ve restarted it so that it received a real LAN IP address. Then, it didn’t work either.)

2.1 (Pure) Servers (MediaServers)

2.1.1 TVersity

Along with Sling (which I haven’t been able to test because it’s still not available in Europe, except for the U.K.) and Orb, TVersity is the most popular remote (WAN; that is, non-local (LAN) UPnP) streaming server, allowing for a lot of niceties; for example, dynamic radio / media transcoding. If you already know this app (because, for example, you’ve used its streaming capabilities over remote mobile networks), you’ll certainly welcome its UPnP capabilities.

TVersityMain.png


(the share config screen; the second tab, with the list of the contents on the server, looks like this – as can clearly be seen, it’s pretty complicated to navigate between the server multimedia contents as there’s no scrollbar. A screenshot of browsing TVersity on a Symbian device is HERE)

TVersity, of course, has its own discussion forum; of it, I recommend THIS thread.
 

Menneisyys

Retired Moderator
Jul 25, 2005
5,511
138
www.winmobiletech.com
2.1.2 Orb

This is probably the most widely known, free (!!!) home streaming server also compatible with Windows Mobile. It also supports UPnP. It comes with UPnP enabled by default:

OrbByDefaultEnabledUPnP.png


Unfortunately, it doesn’t have as nice debug / client configuration capabilities as Nero MobileHome either. But, at least, it’s free and, when it comes to transcoding, definitely more capable than the latter. All in all, highly recommended.

2.1.3 Nero MobileHome

It’s part of the, if you’re into AVC (H.264 / MPEG-4 Part 10) video encoding, pretty much recommended Nero 8 Ultra Edition.

Compared to the first two servers listed above, it has some goodies. For example, with the two servers, it’s impossible to see what clients have been connected, what they’re listening to / watching, what client they use etc. For example, HERE is a list of the renderers found.

The following screenshot:

NeroMediahomeStreamingInProgress.png


shows a case in where it’s even more useful: it shows what clients have connected, what they’re streaming / downloading, what they really are etc. In the shot, the first client is Conduits Pocket Player running on my x51v and streaming “02 Track 2.wma” (at 35%); the second is Nero Mobile Pro running on another Pocket PC in the network and streaming “06 Track 6.wma” (at 14%). Also, it lets you define what network interface to use for streaming.

Otherwise, it has pretty much the same capabilities as the former two servers:
- manual addition of shared media directories (note that it also supports automatic refreshing via Nero Scout)
- streams TV
- supports a remote UI
- supports transcoding

(Note that in my forthcoming Multimedia Bible I will continue elaborating on these three products: they have excellent, remote (non-UPnP), smart phone-compliant transcoding and TV/radio streaming capabilities well worth exploiting.)

2.1.4 Other servers

MediaTomb: free, open source, non-Windows

TwonkyVision Media Server (the forum is worth checking out for generic UPnP-related discussions too)

DLink Media Server

Philips Media Manager

JRiver Media Center


Note that Windows Media Connect (still recommended on the Rudeo page) 2.0 is no longer available because the same functionality is built into Windows Media Player 11 for Windows XP or Windows Vista

2.2 (Pure) controllers (MediaControllers)

Cidero - Java-language, multiplatform controller. Don’t be afraid of it being written in Java – it’s very easy to install: just download the installer EXE, run it and you’re set.

CideroMain.png


It’s a very nice and free app. As it has no built-in renderer, you must use an external one to play back multimedia content.

2.3 (Pure) Renderers

Probably the most important is the Un*x-based GMediaRender; unfortunately, it has no desktop Windows version.

Hardware-wise, Sony PlayStation 3 (PS3) is generally considered one of the best media clients / AV (for example MP4 HD) renderers.
 

shlomki

Senior Member
Nov 6, 2006
423
0
Israel
Whoa, AMAZING!
thank you!

this is very much to digest all at once, but i'll get into it and start trying it for myself :)
 

Menneisyys

Retired Moderator
Jul 25, 2005
5,511
138
www.winmobiletech.com
UPDATE (12/23/2007): There’s a nice quick summary of how a mobile device can be used for in a home environment HERE, in the first post of the thread. It’s worth a read if you still don't really understand what UPnP can be used for in everyday life. (Note that it discusses the Nokia N95 in this scenario. Of course, any other, UPnP- & remote control-capable mobile device can be utilized in exactly the same way. Also note that it still discusses the old, pre-v20 firmware of the Nokia N95. As has also been mentioned in the (currently) last post of the thread, the N95 has received real renderer capabilities in the meantime.)
 

Top Liked Posts

  • There are no posts matching your filters.
  • 1
    Introduction

    What is Universal Plug and Play (UPnP) and why you might want to make use of it? To get a nice overview what it’s all about, spend some time on reading the Digital Living Network Alliance (DLNA) tutorial’s first three pages HERE, HERE and, finally, HERE. These pages are also interlinked so you can just safely follow the “Learn how DLNA works” link at the bottom of the first page. I especially recommend the interactive “What can you do with DLNA products?” section at the bottom of the third page. Try selecting all the possible pairs to see what a particular device pair can be used for - this demo is really instructive. An example screenshot showing what for example the NAS & networked TV pairing can be used for:

    DLNAWhatCanYouDo.jpg


    Pretty instructive, isn't it? Again, I really recommend playing with the different pairings so that you get a clear picture of what UPnP can really be used for. In addition, please PLEASE do read the above DLNA intro (the three pages) so that you understand what UPnP is about and the terms used in this UPnP Bible. I’ve refrained from reproducing (almost) the same info in here so that I could concentrate on the more important and never-before-published subject: how this all works on the two most widely used mobile platforms: Windows Mobile and Symbian.

    You might also want to take a look at the Wiki page (most importantly, the “UPnP AV (Audio and Video) standards” section) but it’s highly technical and, for a non-pro, in no way as comprehensible as the DLNA tutorial. Note that the DLNA tutorial doesn’t explain what “Controllers” are. It’s, as has also been explained in the Wiki (officially referred to by “MediaServer ControlPoint”), is like a remote controller between the source (the “MediaServer”), that is, typically a file store, and the target (the “MediaRenderer”); that is, typically, a TV set, a monitor or a home Hi-Fi.

    On both Windows Mobile and Symbian (more precisely, the latest-generation, N-series Nokia handsets) all these three functionalities are supported:

    1. a phone can act as the source (“MediaServer”) of multimedia content (for example, the pictures you’ve taken with the built-in camera; the MP3’s you have on your storage card etc.)
    2. it can also act as the mediator (“MediaServer ControlPoint”) between the server and the renderer. That is, it can select the files on the server you’d like to, say, see on your TV / listen to on your home Hi-Fi etc. It also allows for basic playback control functionality like pausing/ resuming, previous / next etc.
    3. finally, it can also function as the target of the stream: the device that actually plays back the video / audio / images on its own screen / audio unit. That is, it’s also a “MediaRenderer”.

    As far as the two operating systems are concerned, all these functionalities are implemented. First, a birds-eye view on what’s available and supported.

    For Windows Mobile (WM), currently, there are three apps with UPnP capabilities: Nero Mobile Pro, Conduits’ Pocket Player and Rudeo Play & Control (at the time of writing - December, 2007 - no preview of CorePlayer 1.2 was available. It will also have UPnP support.)

    For the newer Nokia N-series Symbian devices (N95 (8 GB ), N81, N82), the OS already has built-in, pretty impressive (no third-party, commercial apps are needed) UPnP support.

    t1.png


    [*]: with the N95, only starting with firmware version v20, not with previous OS’es; also see THIS. Note that the manual printed with the original N95 still reflects this (old) state.
    [**]: limited presentation capabilities (while it has no problems with the much more important streaming): no library, not even file system folder-separated view

    Now, let’s take a look at what functionalities the MediaRenderer-capable applications offer.

    t2.png


    I'll later explain what the difference between pre-fetching and streaming is.

    Incidentally, the second column ("Accessible for external controllers") is also clearly visible in the following Windows Vista screenshot:

    NetworkBrowserInVista.png


    It shows the following UPnP servers / renderers in order: Nero MediaHome (server), N95 (server), (the notebook itself, where the screenshot has been taken), the built-in UPnP server of the Vista on the notebook, the Conduits Pocket Player (PP) renderer (!) on the “wr-x51v” PDA; the same PP on the same PDA as a server; PP as a server on the “wr-univ” and, finally, PP as a renderer on the same “wr-univ”.

    1.1 Differences between traditional Remote Media Controllers (RMC’s) and full UPnP applications

    Back in February, I’ve already published an extensive Bible on all non-UPnP applications. Now, let’s see what the real difference between a fully-fledged UPnP app and the, back then, reviewed remote controllers is!

    First, as you may already have guessed (without even reading my previous Bible), RMC’s can only remotely control media player applications – they don’t offer built-in, local rendering (MediaRenderer) or file serving (server) capabilities. The best, UPnP-capable titles in this respect (currently, as of late December, 2007, Pocket Player 3.51 on Windows Mobile and the built-in UPnP client on the latest Nokia N-series models) offer both of these.

    Second, their configuration can be much more complicated than those of UPnP clients, particularly when you need to manually (!) enter the local network address of the server (also containing the media player) you’d like to remotely control. This is true with almost all RMC’s not capable of discovery protocols to automatically discover controllable servers in the LAN. UPnP’s automatic discovery also greatly helps in this respect: you don’t need to do any manual work; just let the controller discover the servers / renderers and you’re all set.

    Third, you can only remote control a Windows PC (in cases, other desktop OS’es are also supported) with those “old-fashioned” RMC’s because all the tested applications need server&renderer-side custom software to be installed. This also means it’s impossible to remote control for example Network Attached Storage (NAS) devices (file servers) or plain renderers like a flat TV. With UPnP, all these can be remote controlled.
    1
    1.2 Available UPnP-capable software

    Now, let’s take a look at what’s available on mobile platforms. Note that as far as Palm OS is concerned, not even Pocket Tunes, by far the best music player support UPnP (and CorePlayer won’t support it either) – you need to go the manual route explained in my RMC Bible for being able to stream stuff from your local UPnP network. There’s a nice thread on this all HERE.

    Please, Windows Mobile users, don’t be disgruntled because of including Symbian. Some of the, especially, multimedia / entertainment-centric smartphones like the Nokia N95, N81 and N82 have excellent capabilities well worth incorporating into Windows Mobile handhelds. For example, these devices support UPnP “out of the box”, which is only available (if at all – see for example the complete lack of, say, UPnP printer support in current WinMo apps) with (expensive) third-party applications on WinMo. A direct inter-OS (operating system) comparison like this will certainly help both Microsoft decide to, finally, include UPnP in Windows Mobile (not only on non-WM WinCE 6 devices) and also shows WinMo hardware manufacturers what they should concentrate their forces on – for example, at really (!!!) lowering Wi-Fi power usage when not actively used.

    The same also states for Symbian users. I know you’d rather not see Windows Mobile contents in here, but, again, such a comparison is instructive for you too because, then, you’ll know what Nokia should be told in order to improve the facilities of its client. And, as I seriously doubt anyone (except me) would write a thorough feature comparison / buglist of these two operating systems, Symbian developers can make great use of this report.

    1.2.1 Windows Mobile

    1.2.1.1 Conduits Pocket Player 3.51

    Currently (before the release of CorePlayer 1.2 and its UPnP support) this is definitely the best and most versatile UPnP client for Windows Mobile. It has definite advantages over the alternatives: first, as opposed to the two other WM solutions, it can act as a server. Second, as opposed to Nero’s app, it can act as a pure controller (without locally rendering anything), in which it can be pretty handy at just controlling the data flow between your home entertainment devices. After all, if you do have a UPnP-enabled flat TV (with an excellent H.264 decoder), why would you want to watch the same video on the small screen of your smart phone? On the other hand, your phone is one of the best tools to actually remote control the data flow in the network - you, for example, won't need to purchase additional, UPnP-only remote controllers if you already have a UPnP remote control-capable phone in your pocket.

    The UPnP interface, accessible under Browse / Network, is pretty easy to master. In addition, moving between the pages (with the left/right D-pad arrows) is very easy too – not so with, say, the much more awkward (and VERY slow!) Nero Mobile Pro, where it's very easy not to be able to click the "Back" arrow at the top of every list.

    It’s only at remote controlling that I’ve found it a bit lacking: the pure remote control user interface (UI) it uses isn’t as intuitive as that of Nokia or Rudeo: you need to use a separate, list-based UI. That is, not the native, well-known and familiar playback interface, but a completely different one depicted here:

    LocalPlayback3.png


    In this regard, Nokia’s and the Rudeo apps are definitely better. Again, on these, you can use the well-known controls to control the multimedia stream flow between the media server and the renderer as if you played back a local stream as can be seen in the following screenshot:

    N95RemoteControlGUI.png


    As can also be seen, Nokia's (and Rudeo's too) not only displays the controls to control the rendering of a multimedia stream, but also displays its metadata, the progress etc. No such features are available with Pocket Player.

    1.2.1.1.1 Additional screenshots & usage tips

    An example of browsing my (Vista) notebook: the main category list. All these contain the usual categorization: the music list shows the traditional (example of the album view and, inside of it, the list of the individual songs) library view.

    The list of videos is also shown; they, however, can’t be played back, not even WMV files (which are, by default, supported by PP with local playback) – only the sound will be heard. If playback starts at all, that is - it doesn’t seem to work on WM6 (only the list is shown, play controls don’t work) ; it does on WM5 as can also be seen in HERE (notice that the movie is being played back). Unfortunately, this also applies to viewing pictures – while their list is correctly displayed, “Play” doesn’t result in their being actually displayed.

    PP is also able to use another renderer (screenshot of stepping into the menu); for example, in THIS screenshot, you can see the GUI for remote controlling a device.

    1.2.1.1.2 Problems (as of version 3.51)

    1. Even Western (äö, for example) accents in the title of the MP3 tags (the one needed to be displayed in the given situation) result in the clients not being able to connect. The Symbian client displays the server’s refusing the connection (“Selected device rejected the operation”):

    PPAccentProblemSelectedDeviceRefuse.png


    The Nero Mobile client, when run from another PPC, just crashes and immediately exits when stepping into a view that would contain an accent anywhere. From the same PPC, it “only” refuses to display anything including and after the accent. For example, if you have the album “Hilapiäles” from the artist “Pömpeli”, then, only a single “P” will be displayed as an artist name (the second letter, ö, is already accented) and only “Hilapi” as the album name.

    2. When (this is a very rare case but you may still run into it, particularly if you try to remote control a Windows Mobile PDA from, say, a Symbian phone, which defaults to remote rendering) it’s controlled from an external controller and its renderer module is instructed to connect to its MediaServer module, the connection will fail. During this, it just displays a local (192.168.0.1:51524) connection message for about 30 seconds; nothing happens after this, no playback / anything.

    3. When operated in direct mode (NOT remote controlled! In the latter case, it has no problems accessing MediaServers!), it can’t connect to other Windows Mobile / Symbian servers (tested with both serving-capable UPnP apps: Pocket Player itself, running on another Pocket PC, and Nokia’s UPnP app). Then, it displays a “Server Error or Access Denied” error message.