UPnP exposed to/used by DLNA devices
------------------------------------
Key: FELIX-2730
URL: https://issues.apache.org/jira/browse/FELIX-2730
Project: Felix
Issue Type: New Feature
Components: UPnP Subproject
Environment: All platforms using the Felix UPnP bundle
Reporter: Patrik Sagelius
Priority: Minor
One of the larger areas of usage with UPnP is to expose a DMS. There are also
many consumers of DMS devices, e.g. TVs. Many of the new TVs coming to the
market are branded "DLNA compatible". This means they will require DMS devices
to have the XML tag shown below in the device description:
<dlna:X_DLNADOC
xmlns:dlna="urn:schemas-dlna-org:device-1-0">DMS-1.00</dlna:X_DLNADOC>
This is described in paragraph 7.2.10 in the document named "DLNA Networked
Device Interoperability Guidelines". This is just one of many DLNA specific
tags. However, it seems that a great number of DMR devices (consumers of DMS
devices, e.g. TVs) expects this tag and only shows the DMS as a valid DMS if it
is included.
I know this has nothing to do with UPnP since it is a DLNA specific tag, but it
increases the usability of the UPnP stack and the number of usecases supported
a great deal! Moreover, there is no way to set this XML tag in the device
description using the OSGi UPnP API as it is currently specified.
What is needed is that the developer needs some way of controlling the content
of the device description to include this tag.
So when creating the device the programmer supplies properties to control
various things, such as name and description. It would be good to supply a
property called "X_DLNADOC" with the value of the tag, e.g. DMS-1.00. So the
code to create a DLNA supported device would look like:
public class DmsDevice implements UPnPDevice {
private Dictionary dictionary = new Hashtable();
public DmsDevice() {
dictionary.put(UPnPDevice.FRIENDLY_NAME, "My Name");
dictionary.put("X_DLNADOC", "DMS-1.00");
....
}
public Dictionary getDescriptions(String locale) {
return this.dictionary;
}
....
}
This should result in an XML like:
<?xml version="1.0" encoding="utf-8"?>
<root xmlns="urn:schemas-upnp-org:device-1-0">
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<URLBase>http://<myip>:<myport></URLBase>
<device>
<deviceType>urn:schemas-upnp-org:device:MediaServer:1</deviceType>
<dlna:X_DLNADOC
xmlns:dlna="urn:schemas-dlna-org:device-1-0">DMS-1.00</dlna:X_DLNADOC>
<friendlyName>My Name</friendlyName>
........
</root>
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.