I installed mediatomb-0.9.0-pre and whilst doing some basic compatibility testing I came across a minor UPnP compliance issue.
Currently MediaTomb exposes the ConnectionManager and ContentDirectory service ids as urn:schemas-upnp-org:service:ConnectionManager:1 and urn:schemas-upnp-orf:service:ContentDirectory:1, whereas they should be exposed as urn:upnp.org:serviceId:ConnectionManager and urn:upnp.org:serviceId:ContentDirectory respectively.
The following lines in the file src/common.h fixes this issue,
line 123 becomes: #define DESC_CM_SERVICE_ID "urn:upnp-org:serviceId:ConnectionManager"
line 130 becomes: #define DESC_CDS_SERVICE_ID "urn:upnp-org:serviceId:ContentDirectory"
This issue can cause control points to not find the services exposed by MediaTomb - as the serviceId field in the device description XML is not inline with the MediaServer v1.0 specs, http://www.upnp.org/standardizeddcps/documents/MediaServer1.0.pdf, section 3 XML device description, page 9.
Hope this helps,
Thanks! You are right, I missed that! Good catch :)
Fixed in r1218