Ticket #26 (closed defect: fixed)

Opened 6 years ago

Last modified 5 years ago

older UPnP devices don't recognize Coherence

Reported by: dev Assigned to: dev
Priority: major Milestone: first public beta
Component: MediaServer Server Version:
Keywords: Cc:

Description (Last modified by dev)

The Terratec Noxon-2 doesn't recognize a Coherence MediaServer:2 device.

The device is powered by some first-generation software and only reacts on SSDP notifications and discovery responses for:

  • urn:schemas-upnp-org:service:ContentDirectory:1
  • urn:microsoft.com:service:X_MS_MediaReceiverRegistrar:1

This is IMHO not how any UPnP media renderer should behave.

The issue is probably with the Philips SLA5500 too, as it seems to be burdened with the same software. And for sure with the Noxon-1.
And seemingly with the Netgear MP101 too, as it works with PyMediaServer, which at this time propagates itself as a single ContentDirectory:1 only.

One solution for this problem could be to send out ContentDirectory:1 notifications in addition to the ContentDirectory:2 ones.
But I'm uncertain how an inproper implemented UPnP A/V v2 device will react upon this. Does it check the UUID and if there is a service:2 with the same one, it prefers that and discards the service:1 notification? What if the service:2 notification gets lost?

I'm favouring the idea of a MediaServer device implementing a ContentDirectory:2 proxy. It reacts on ContentDirectory:2 notifications and propagates them as ContentDirectory:1 ones, but with a new UUID. Actions and Events are relayed, the url property in the DIDL res part of the response to a Browse or Search action could probably point directly to the ContentDirectory:2 and we therefore could bypass the relaying of the content stream.

Change History

19.11.2006 12:06:49 changed by dev

  • status changed from new to assigned.
  • type changed from task to defect.
  • description changed.

The UPnP MediaServer:2 specs states clearly on top of page 20:

It should be noted that a MediaServer:2 implementation MUST respond to all SSDP queries that specify MediaServer:1 and MUST respond to all actions defined by the MediaServer:1.

Hence we have to propagate our MediaServer:2 as a MediaServer:1 with a ContentDirectory:1 and a ConnectionManager:1 too.

Albeit I still think that looking only for ContentDirectory:1 notifications is an incorrect interpretation of the UPnP standard.

22.11.2006 18:02:38 changed by dev

  • status changed from assigned to closed.
  • resolution set to fixed.

(In [79]) A lot of fixes and enhancements regarding a working MediaServer.

Some of them concerning the different namespace, which refs to #28.

Fixed an embarrassingly stupid bug in the device registration, where we had the services url in the location header of the service notification, instead of the url for the device description.xml, this is one of those that fixes #26.

This only showed up due to the fact that the Noxon-2 looks only for service notifications.

Version 2 devices now send out notifications for devices v1 and services v1 too. Requisite for this are different device descriptions accordingly to the version, pointing to the matching services.