intel / dleyna-control

dLeyna-control is a Digital Media Player written in python to demonstrate how to use the dleyna DMS APIs. It detects Digital Media Servers on the local area network and allows users to browse, search and play their contents.
https://01.org/dleyna/
GNU Lesser General Public License v2.1
8 stars 12 forks source link

BrowseModel.is_container() returns false negatives #8

Closed jku closed 11 years ago

jku commented 11 years ago
    def is_container(self):
        return self.__props["Type"] == "container"

This can't work since Type can be a lot of things, e.g. "person.musicartist".

Either we need to include all possible org.gnome.MediaContainer2 types in the test or we need to start using ListContainers & ListItems instead of ListChildren

jku commented 11 years ago

Although the docs (for https://live.gnome.org/Rygel/MediaServer2Spec) say: "'Type' tells what kind of object we are dealing with and its value must be 'container' in case of container or either of 'video', 'video.movie', 'audio', 'audio.music' 'music', 'image' or 'image.photo' in case of item."

Is this actually a dleyna-server bug?

jku commented 11 years ago

"The Type property tells what kind of object we are dealing with and which can take the below values in addition to those described in MediaServer2Spec specification (3)."

That's from media-service-upnp docs (the file no longer exists in dleyna-server).

How did this happen: dleyna-server claims to implement MediaContainer2 but instead returns values that are outside the explicitly defined set of possible values?