INTERACT FORUM

Please login or register.

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

Author Topic: Bug: MC 20.0.50 doesn't specify the "jr" XML namespace in DIDL-Lite  (Read 3255 times)

bubbleguuum

  • Junior Woodchuck
  • **
  • Posts: 76

Title pretty says it all. Here's a DIDL sample returned by MC which makes BubbleUPnP XML parser fail because of the missing "jr" namespace:

Code: [Select]
[AsyncTask #1    ] WARNING  - 01:00:27.56  - LibraryFragment             : device exception: org.xmlpull.v1.XmlPullParserException: undefined prefix: jr (position:START_TAG <{null}jr:volumelevel>@14:17 in java.io.InputStreamReader@23fac78)
context: Browse action
Manufacturer: JRiver, Inc.
Model Description: JRiver DLNA Server
Model Name: Media Center
Model Number: 20.0.50
bad XML: <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/">
<item id="F15346" parentID="2510" restricted="1">
<dc:title>Introduction By Jimmy Lyons</dc:title>
<upnp:class>object.item.audioItem.musicTrack</upnp:class>
<upnp:artist>Don Ellis Orchestra</upnp:artist>
<upnp:artist role="Performer">Don Ellis Orchestra</upnp:artist>
<upnp:artist role="AlbumArtist">Don Ellis</upnp:artist>
<dc:creator>Don Ellis Orchestra</dc:creator>
<upnp:album>'Live' At Monterey!</upnp:album>
<upnp:genre>Big Band</upnp:genre>
<upnp:originalTrackNumber>1</upnp:originalTrackNumber>
<dc:description>Collection of Render - ripped by Muscgate</dc:description>
<upnp:longDescription>Collection of Render - ripped by Muscgate</upnp:longDescription>
<upnp:playbackCount>239</upnp:playbackCount>
<jr:volumelevel>-2,4125</jr:volumelevel>
<jr:peaklevel>-1,1 dBTP; -1,1 Links; -2,0 Rechts</jr:peaklevel>
<dc:date>1966-01-01T00:00:00</dc:date>
<pv:playcount>239</pv:playcount>
<pv:lastPlayedTime>2014-12-23T16:13:05</pv:lastPlayedTime>
<pv:addedTime>1382364769</pv:addedTime>
<pv:modificationTime>1376849457</pv:modificationTime>
<upnp:albumArtURI dlna:profileID="JPEG_SM">http://192.168.192.21:52100/AArs/15346.jpg</upnp:albumArtURI>
<upnp:albumArtURI dlna:profileID="JPEG_TN">http://192.168.192.21:52100/AArt/15346.jpg</upnp:albumArtURI>
<res protocolInfo="http-get:*:audio/x-flac:DLNA.ORG_PN=FLAC;DLNA.ORG_OP=01;DLNA.ORG_CI=0;DLNA.ORG_FLAGS=01700000000000000000000000000000" duration="0:01:17.000" size="7181127" nrAudioChannels="2" sampleFrequency="44100" bitsPerSample="16" bitrate="86500">http://192.168.192.21:52100/Music/F15346.flac</res>
</item>
<item id="F15345" parentID="2510" restricted="1">
<dc:title>33 222 1 222</dc:title>
<upnp:class>object.item.audioItem.musicTrack</upnp:class>
<upnp:artist>Don Ellis Orchestra</upnp:artist>
<upnp:artist role="Performer">Don Ellis Orchestra</upnp:artist>
<upnp:artist role="AlbumArtist">Don Ellis</upnp:artist>
<dc:creator>Don Ellis Orchestra</dc:creator>
<upnp:album>'Live' At Monterey!</upnp:album>
<upnp:genre>Big Band</upnp:genre>
<upnp:originalTrackNumber>2</upnp:originalTrackNumber>
<dc:description>Collection of Render - ripped by Muscgate</dc:description>
<upnp:longDescription>Collection of Render - ripped by Muscgate</upnp:longDescription>
<upnp:playbackCount>239</upnp:playbackCount>
<jr:volumelevel>-11,20671</jr:volumelevel>
<jr:peaklevel>+0,3 dBTP; +0,3 Links; -0,7 Rechts</jr:peaklevel>
<dc:date>1966-01-01T00:00:00</dc:date>
<pv:playcount>239</pv:playcount>
<pv:lastPlayedTime>2014-11-01T08:42:02</pv:lastPlayedTime>
<pv:addedTime>1382364769</pv:addedTime>
<pv:modificationTime>1376849477</pv:modificationTime>
<upnp:albumArtURI dlna:profileID="JPEG_SM">http://192.168.192.21:52100/AArs/15345.jpg</upnp:albumArtURI>
<upnp:albumArtURI dlna:profileID="JPEG_TN">http://192.168.192.21:52100/AArt/15345.jpg</upnp:albumArtURI>
<res protocolInfo="http-get:*:audio/x-flac:DLNA.ORG_PN=FLAC;DLNA.ORG_OP=01;DLNA.ORG_CI=0;DLNA.ORG_FLAGS=01700000000000000000000000000000" duration="0:09:29.000" size="64884917" nrAudioChannels="2" sampleFrequency="44100" bitsPerSample="16" bitrate="113125">http://192.168.192.21:52100/Music/F15345.flac</res>
</item>
...
Logged

AndrewFG

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3392
Re: Bug: MC 20.0.50 doesn't specify the "jr" XML namespace in DIDL-Lite
« Reply #1 on: December 24, 2014, 04:12:56 am »

Well spotted. I suspected that this change was the cause of other regressions recently posted.

IMHO these extra DIDL tags are only needed when MC is talking to MC, so I have already suggested that MC should check the UserAgent on the caller (or Server header on the callee) and only add those tags when the caller/callee is indeed MC. That way there is less risk of breaking other CPs and renderers..

PS it also seems rather odd (and quite likely to break something) that the "peaklevel" tag is in German (both in the text and in the decimal comma); if MC is going to push this out to all renderers and CPs it should probably do it language neutral..
Logged
Author of Whitebear Digital Media Renderer Analyser - http://www.whitebear.ch/dmra.htm
Author of Whitebear - http://www.whitebear.ch/mediaserver.htm

bubbleguuum

  • Junior Woodchuck
  • **
  • Posts: 76
Re: Bug: MC 20.0.50 doesn't specify the "jr" XML namespace in DIDL-Lite
« Reply #2 on: January 06, 2015, 08:27:53 am »

Has it been fixed in 20.0.51 ?
Logged

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13952
Re: Bug: MC 20.0.50 doesn't specify the "jr" XML namespace in DIDL-Lite
« Reply #3 on: January 06, 2015, 09:58:36 am »

Has it been fixed in 20.0.51 ?
No, it will be in the next build.
Logged

bubbleguuum

  • Junior Woodchuck
  • **
  • Posts: 76
Re: Bug: MC 20.0.50 doesn't specify the "jr" XML namespace in DIDL-Lite
« Reply #4 on: January 06, 2015, 10:03:44 am »

No, it will be in the next build.


Great, this will make some people happy :) :

https://plus.google.com/115911968209494896560/posts/QyqYkKhZTqX
Logged

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13952
Re: Bug: MC 20.0.50 doesn't specify the "jr" XML namespace in DIDL-Lite
« Reply #5 on: January 06, 2015, 10:19:22 am »

...
PS it also seems rather odd (and quite likely to break something) that the "peaklevel" tag is in German (both in the text and in the decimal comma); if MC is going to push this out to all renderers and CPs it should probably do it language neutral..
This one makes me rather uneasy.
The peak level and r128 gain are being stored that way in the database. I'm not sure if that will work in languages that use the comma for decimal.
Logged

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13952
Re: Bug: MC 20.0.50 doesn't specify the "jr" XML namespace in DIDL-Lite
« Reply #6 on: January 06, 2015, 10:28:11 am »

This one makes me rather uneasy.
The peak level and r128 gain are being stored that way in the database. I'm not sure if that will work in languages that use the comma for decimal.
We checked and the parsing will work properly.
I'm not convinced that the speaker labeling should be in the native language but it looks to be harmless.
Logged

Hendrik

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 10970
Re: Bug: MC 20.0.50 doesn't specify the "jr" XML namespace in DIDL-Lite
« Reply #7 on: January 06, 2015, 11:13:49 am »

I'm not convinced that the speaker labeling should be in the native language but it looks to be harmless.

I don't think those database field should localize anything, neither their punctuation nor their speaker labels.
If I change the language in MC, it'll remain the old language in the database, since its actually stored like this, and not translated on display like every normal string. :)
Logged
~ nevcairiel
~ Author of LAV Filters

AndrewFG

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3392
Re: Bug: MC 20.0.50 doesn't specify the "jr" XML namespace in DIDL-Lite
« Reply #8 on: January 06, 2015, 12:32:00 pm »

^

Hmm. This is really really the first time that I encountered a case where comma decimals and the words "Rechts" and "Links" are considered to be "non localised". Normally it is only Americans who consider their own language to be "non localised". But it is good to see Germany getting its own back. In any case soon we will probably all have to learn what the Chinese words are for "Left" and "Right"...


Logged
Author of Whitebear Digital Media Renderer Analyser - http://www.whitebear.ch/dmra.htm
Author of Whitebear - http://www.whitebear.ch/mediaserver.htm
Pages: [1]   Go Up