Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: UPnP: How does the Media Library Tree work? (Read 400 times) previous topic - next topic
0 Members and 2 Guests are viewing this topic.

UPnP: How does the Media Library Tree work?

I specifically referring to the foo_upnp_ml_tree.xml from the UPnP/DLNA Renderer, Server, Control Point component.

For example, what's the difference between object.container.album.musicAlbum and object.container.genre.musicGenre. Obviously, one has to do with Albums and the other has to do with Genres, but I can't tell what they're specific functions are.  Also, which object.container do I use for single tracks?  I saw something about object.item, is that a thing?

Is there any documentation out there?

Thanks for any help!
Windows 10 | Foobar2000 v2.0 Portable | Columns 2.1.0 | SQLite Utilities 3.0.4 | SQLite Tree 4.0.6

Re: UPnP: How does the Media Library Tree work?

Reply #1
Is there any documentation out there?

There is a link from the download page.

http://bubbleguuum.free.fr/foo_upnp/foo_upnp.txt

I don't use it but check Customizing the browse tree.

Re: UPnP: How does the Media Library Tree work?

Reply #2
Thanks for the suggestion, but that doc is pretty light on what I'm looking for.
Windows 10 | Foobar2000 v2.0 Portable | Columns 2.1.0 | SQLite Utilities 3.0.4 | SQLite Tree 4.0.6

Re: UPnP: How does the Media Library Tree work?

Reply #3
For example, what's the difference between object.container.album.musicAlbum and object.container.genre.musicGenre. Obviously, one has to do with Albums and the other has to do with Genres, but I can't tell what they're specific functions are.  Also, which object.container do I use for single tracks?  I saw something about object.item, is that a thing?

Before you dig in too deep, are you sure you want to start using a component that hasn't been updated in 9 years and only works with foobar x86 (and only runs on Windows)?

From the UPnP Content Directory specification:
Quote
A class is used to assign a type to an object. It also identifies the minimum required set of properties that shall be included in the object’s metadata and the allowed properties that may be included. Classes are organized in a hierarchy with certain classes being derived from others as in a typical object-oriented system.

If you want to create other indexes you should be able to use 'object.container'. e.g.
Code: [Select]
    <spec type="object.container">%releasetype%</spec>
    <spec type="object.container.album.musicAlbum">%album%</spec>

Music tracks are <upnp:class>object.item.audioItem.musicTrack</upnp:class> but the component will populate those for you as part of the musicAlbum class definition.

Re: UPnP: How does the Media Library Tree work?

Reply #4
Thanks for the link, SimBun!

Is there another UPnP component that allows this much control over the Media Library Tree?
Windows 10 | Foobar2000 v2.0 Portable | Columns 2.1.0 | SQLite Utilities 3.0.4 | SQLite Tree 4.0.6

 

Re: UPnP: How does the Media Library Tree work?

Reply #5
Is there another UPnP component that allows this much control over the Media Library Tree?
I guess it depends what your requirements are, as foo_upnp benefits hugely from having foobar as the backend e.g. the ability to handle CUE sheets, the playlist functionality e.t.c.

I use the licensed version of MinimServer on a Pi and I think it's just as flexible as foo_upnp (in terms of presentation). There's also AssetUPnP which does a few things differently to MinimServer, but I prefer MinimServer overall.

If you have anything specific you're looking for let me know.