UPnP control applications (nStream, Andromote, Foobar UPNP etc..) best practices

Posted by: Alamanka on 01 October 2010

What are the best practices to have good performance in UPnP control applications (nStream, Andromote, Foobar UPNP...):

- should we avoid to store cover art in the music file tags to minimize the data traffic?

- should we organize the tree so that we keep the number of elements below a node under a certain threshold?

- does the "shape" of the navigation tree matter (number of children, number of descendants, number of base)

- any specific recommendation on wireless network (encryption, g/n ...)

- other?

Thanks.
Posted on: 04 October 2010 by okli
quote:
Originally posted by Alamanka:
What are the best practices to have good performance in UPnP control applications (nStream, Andromote, Foobar UPNP...):

- should we avoid to store cover art in the music file tags to minimize the data traffic?

- should we organize the tree so that we keep the number of elements below a node under a certain threshold?

- does the "shape" of the navigation tree matter (number of children, number of descendants, number of base)


these are normally saved in a database at the media server, so I'm not sure if you can gain some performance here restructuring the folders only. There is an option of the renderer devices to cache some information like images too, so it is device dependent IMHO...

quote:

- any specific recommendation on wireless network (encryption, g/n ...)


using encryption always increases the data traffic. g vs. n as you know the speed is 54 vs 300 Mbit/s (theoretically) and as more devices are connected as lower the speed, because each connected device reserves the channel as long as it must use it. And, of course all devices must support the n standard...

- other?

Thanks.
Posted on: 05 October 2010 by Tom_W
quote:
should we avoid to store cover art in the music file tags to minimize the data traffic?

I use Foobar with the UPnP component, and most tracks have the cover art embedded. I am connected with Netgear Powerline adapters (internet over mains cable), and I have no problems with the volume of data traffic. I also store a copy of the artwork in the folder with the audio files, because sometimes I come across an audio player that doesn't deal with embedded artwork very well.
quote:
- should we organize the tree so that we keep the number of elements below a node under a certain threshold?
- does the "shape" of the navigation tree matter (number of children, number of descendants, number of base)


The number of items below a node does impact on how easy it is to navigate your music library from the renderer (NaimUniti) as it only has a small screen. In Foobar, you can tick a box in the UPnP preferences to display items by alphabetical letter if there are more than a certain number (e.g. 100). This helps cut down on scrolling through long lists of artists or tracks. You can also use the shortcut buttons on the Uniti remote to skip to a certain letter.
The shape of the navigation tree in Foobar UPnP is directly related to how the information is displayed on the Uniti, and how much is displayed. Here you can customise it to display only the information you want at each node. You need a bit of knowledge about Foobar Titleformatting and the metadata fields it uses, but as long as you save a copy of the unmodified file, you can always revert to it.
For example, I have modified the XML tree for 'Album Artist' to only show artists where they have a minimum of 1 specific album. I.e. if I have five tracks by Blur all off separate albums, but no complete album, Blur will not show up in the list. This means I don't have to remember the name of an album to find it if I know the artist.To do this I have followed Foobar tagging recommendations Foobar Album Artist tag and made sure that I leave the Album field blank for the individual tracks that are not part of a whole album.
I found the key to getting your head round this is to be clear how you like to search for and play music, then look at your Uniti and see if it is displaying the information in the way you would like. oh, and ALWAYS be consistent in your tagging scheme.
Posted on: 05 October 2010 by Alamanka
Thanks for the feedback.

Going back to performance and cover art: I still had some doubt about cover art and wireless controllers.

I just checked the size of one picture file: 300 kb.
Let's assume a similar picture is embedded into each track and each folder.
Let's also assume the controller is displaying a picture next to each track or album.
If the controller were to display 10 titles simultaneously, If I am not mistaken, it would have to download 3Mb of data for each navigation page

Now, if this controller is on a wireless device, under current conditions, this represents a significant amount of data to download.
Unless there is some sort of local cache or a small database on the device, the navigation will not be so good.

Looking at some wireless control applications, it seems that several of them do not actually display art together with a list of titles.
Based on the screen shots of the n-stream, I am under the impression that art cover is displayed only after selecting a specific title. (Maybe someone can confirm?)

My impression: one should decide to include or not cover art in the file library depending on the choice of controller that will be used.

If you want to see simultaneous art cover (multiple albums), then probably it is better to use a controller application on a wired device, or even better, run the application on the same machine where the files are located.

In order for wireless tablets (Ipad, for instance) to display multiple pictures in the control application, I suspect it will be necessary to create some local cache or database containing the lists of tracks and albums and the associated tags.
Posted on: 06 October 2010 by okli
In this direction there is a image rescaling software, which should render smaller images - I know that, for instance, Twonky hat this integrated. nStream shows cover arts in the Album tree and as the track is playing - the first are small thumbnails, the letter are bigger but I'm not sure if this is some fix size, so I doubt that the original 300kb images will ever be needed in this case. Moreover there is an option in the nstream app "Cache images" - in my case it is activated, so I think that something is cached on the unit itself to accelerate loading of longer lists - but this is my assumptions only. In general, I don't think that loading of the cover arts will cause a bottleneck - if you play a normal 16/44.1 file your network should be capable to transfer 1411 kbit/s for the music in almost real time (ok, there is buffering, but...)

Actually, you can install a network sniffer tool on your computer and check the packages - I think Whiteshark is the most popular - would be of interest what's going on "behind the scenes"
Posted on: 07 October 2010 by 0rangutan
I think that should have read "Wireshark"?
Posted on: 07 October 2010 by pcstockton
quote:
If I am not mistaken, it would have to download 3Mb

even if you aren't mistaken... so what? How long does it take to send 3MB? It takes about .5 seconds for the thumbnails to pop up.
Posted on: 08 October 2010 by okli
quote:
Originally posted by John Bleasdale:
I think that should have read "Wireshark"?


correct - sorry messing up network stuff and see monsters :-)
Posted on: 12 October 2010 by Alamanka
Sonos just released an Ipad application. It is free. There is a video on the Sonos web site as well as screenshot.