INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1]   Go Down

Author Topic: UPnP Search request returns buggy result  (Read 4701 times)

bubbleguuum

  • Junior Woodchuck
  • **
  • Posts: 76
UPnP Search request returns buggy result
« on: February 25, 2015, 04:11:41 am »

Searching for a list of albums with an exact album title returns buggy result.

For example:

(upnp:class = "object.container.album.musicAlbum" and dc:title = "A Story Of Deepness")

Here, instead of returning the one album container whose title is "A Story Of Deepness", the request above
returns the list of tracks of the album (see output below).
Moreover each track as an upnp:class of  object.container.album.musicAlbum which is obviously not correct.
The correct expected DIDL-Lite for this request is a single container of upnp:class = object.container.album.musicAlbum with dc:title =  "A Story Of Deepness".
It's easy to test such requests in BubbleUPnP: in the 3-dot menu of any track, select "Show album". It will emit request: (upnp:class = "object.container.album.musicAlbum" and dc:title = "<track's album title>")


Code: [Select]
<DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/"
xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/"
xmlns:dlna="urn:schemas-dlna-org:device-1-0" xmlns:av="urn:schemas-sony-com:av"
xmlns:pv="http://www.pv.com/pvns/" xmlns:jriver="urn:schemas-jriver-com:jriver">
<item id="F1432" parentID="1577" restricted="1">
<dc:title>Strong Island Jazz</dc:title>
<upnp:class>object.container.album.musicAlbum</upnp:class>
<upnp:artist>Glenn Underground</upnp:artist>
<upnp:artist role="Performer">Glenn Underground</upnp:artist>
<upnp:artist role="AlbumArtist">Glenn Underground</upnp:artist>
<dc:creator>Glenn Underground</dc:creator>
<upnp:album>A Story Of Deepness</upnp:album>
<upnp:genre>Deep House</upnp:genre>
<upnp:originalTrackNumber>1</upnp:originalTrackNumber>
<upnp:playbackCount>1</upnp:playbackCount>
<dc:date>1998-01-01T00:00:00</dc:date>
<pv:playcount>1</pv:playcount>
<pv:lastPlayedTime>2015-02-25T10:42:24</pv:lastPlayedTime>
<pv:addedTime>1424432066</pv:addedTime>
<pv:modificationTime>1280614266</pv:modificationTime>
<upnp:albumArtURI dlna:profileID="JPEG_SM">http://192.168.0.11:52100/AArs/1432.jpg</upnp:albumArtURI>
<upnp:albumArtURI dlna:profileID="JPEG_TN">http://192.168.0.11:52100/AArt/1432.jpg</upnp:albumArtURI>
<res
protocolInfo="http-get:*:audio/L16;rate=44100;channels=2:DLNA.ORG_PN=LPCM;DLNA.ORG_OP=01;DLNA.ORG_CI=0"
duration="0:08:08.000" size="86240784" nrAudioChannels="2"
sampleFrequency="44100" bitsPerSample="16">http://192.168.0.11:52100/Music/F1432.wav
</res>
</item>
<item id="F1433" parentID="1577" restricted="1">
<dc:title>London Sirens</dc:title>
<upnp:class>object.container.album.musicAlbum</upnp:class>
<upnp:artist>Glenn Underground</upnp:artist>
<upnp:artist role="Performer">Glenn Underground</upnp:artist>
<upnp:artist role="AlbumArtist">Glenn Underground</upnp:artist>
<dc:creator>Glenn Underground</dc:creator>
<upnp:album>A Story Of Deepness</upnp:album>
<upnp:genre>Deep House</upnp:genre>
<upnp:originalTrackNumber>2</upnp:originalTrackNumber>
<dc:date>1998-01-01T00:00:00</dc:date>
<pv:lastPlayedTime />
<pv:addedTime>1424432066</pv:addedTime>
<pv:modificationTime>1280614266</pv:modificationTime>
<upnp:albumArtURI dlna:profileID="JPEG_SM">http://192.168.0.11:52100/AArs/1433.jpg</upnp:albumArtURI>
<upnp:albumArtURI dlna:profileID="JPEG_TN">http://192.168.0.11:52100/AArt/1433.jpg</upnp:albumArtURI>
<res
protocolInfo="http-get:*:audio/L16;rate=44100;channels=2:DLNA.ORG_PN=LPCM;DLNA.ORG_OP=01;DLNA.ORG_CI=0"
duration="0:06:37.000" size="70068432" nrAudioChannels="2"
sampleFrequency="44100" bitsPerSample="16">http://192.168.0.11:52100/Music/F1433.wav
</res>
</item>
        ...repeat for each track of the album
</DIDL-Lite>
Logged

AndrewFG

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3392
Re: UPnP Search request returns buggy result
« Reply #1 on: February 25, 2015, 03:27:40 pm »

Keep up the good work bubbleguuum. I sometimes feel that I am the only lonely voice pushing people to implement the UPnP specifications as they are written. Its good to see someone else who cares as much about getting people to do it right..
Logged
Author of Whitebear Digital Media Renderer Analyser - http://www.whitebear.ch/dmra.htm
Author of Whitebear - http://www.whitebear.ch/mediaserver.htm

Matt

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 42385
  • Shoes gone again!
Re: UPnP Search request returns buggy result
« Reply #2 on: February 25, 2015, 03:30:58 pm »

Thanks bubbleguuum.  I've asked Bob, our DLNA pro, to take a look.
Logged
Matt Ashland, JRiver Media Center

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13874
Re: UPnP Search request returns buggy result
« Reply #3 on: March 03, 2015, 01:29:51 pm »

Will look at it when I get a chance.
Logged

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13874
Re: UPnP Search request returns buggy result
« Reply #4 on: March 12, 2015, 08:08:08 pm »

Will look at it when I get a chance.
Well, ok.
That type of search isn't handled at this time.
I don't think it will be a big deal to add it.
We'll talk about it tomorrow.
Logged

Matt

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 42385
  • Shoes gone again!
Re: UPnP Search request returns buggy result
« Reply #5 on: March 12, 2015, 08:35:03 pm »

You're working the graveyard shift!
Logged
Matt Ashland, JRiver Media Center

AndrewFG

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3392
Re: UPnP Search request returns buggy result
« Reply #6 on: March 15, 2015, 03:05:39 am »

Well, ok.
That type of search isn't handled at this time.
I don't think it will be a big deal to add it.
We'll talk about it tomorrow.

I think his point was not that you don't support that search type. You apparently do support it. His point is that you returned the wrong format of DIDL as the result...
Logged
Author of Whitebear Digital Media Renderer Analyser - http://www.whitebear.ch/dmra.htm
Author of Whitebear - http://www.whitebear.ch/mediaserver.htm

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13874
Re: UPnP Search request returns buggy result
« Reply #7 on: March 15, 2015, 10:08:59 pm »

I think his point was not that you don't support that search type. You apparently do support it. His point is that you returned the wrong format of DIDL as the result...

No actually it isn't supported. It's just dropping through to some generic code.
Logged

herr_schneider

  • Junior Woodchuck
  • **
  • Posts: 74
Re: UPnP Search request returns buggy result
« Reply #8 on: March 20, 2015, 02:10:18 am »

If I understand the code snippet correctly, this only refers to the case where an album container would be expected based upon a track as search parameter. I guess this would not affect the overall "search for albums by ARTISTNAME" that always yields a "no search results" resp. the overall search where no album is ever returned?
Logged

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13874
Re: UPnP Search request returns buggy result
« Reply #9 on: March 20, 2015, 09:58:33 am »

If I understand the code snippet correctly, this only refers to the case where an album container would be expected based upon a track as search parameter. I guess this would not affect the overall "search for albums by ARTISTNAME" that always yields a "no search results" resp. the overall search where no album is ever returned?
Not quite, what Bubble is doing in the search is the following:
I put in a search parameter, say "Dark Side of the Moon"
Bubble does a search on
object.container.person.musicArtist with artist set to Dark Side of the Moon which returns no results then bubble does a search on
object.container.album.musicAlbum with artist set to Dark Side of the Moon which returns no results then bubble does a search on
object.container.album.musicAlbum with title set to Dark Side of the Moon which returns the tracks in the album not just the album(s) as a container of containers

Unfortunately this type of search doesn't fit very well with the way MC is constructed internally so the problem is non-trivial.
Logged
Pages: [1]   Go Up