문제

I want to implement a DLNA Device Media Renderer (DMR) for audio streaming. I found documentation here: http://upnp.org/resources/upnpresources.zip and found out that there seems to be three versions of DMR's (MediaRenderer:1, MediaRenderer:2, MediaRenderer:3). I can't find any advice on which one to choose. Is there any reason not to choose MediaRenderer:3?

도움이 되었습니까?

해결책

Updates to UPnP services are guaranteed to be backwards compatible so every MediaRenderer:3 device will contain an implementation of v1 and v2 services and will respond to a MSEARCH for v1 or v2 as that version.

See the v1.1 Device Architecture doc (included in the zip you reference) for more details, specifically

§1.2.2 Device available - NOTIFY with ssdp:alive

Updated UPnP device and service types are REQUIRED to be fully backward compatible with previous versions of the same type.

§1.3.2 Search request with M-SEARCH

Updated versions of device and service types are REQUIRED to be fully backward compatible with previous versions. Devices MUST respond to M-SEARCH requests for any supported version. For example, if a device implements “urn:schemas-upnporg: service:xyz:2”, it MUST respond to search requests for both that type and “urn:schemas-upnp-org:service:xyz:1”. The response MUST specify the same version as was contained in the search request

In other words, a device that correctly implements MediaRenderer:3 will be usable by control points which expects v1, v2 or v3 services. A device which implements an earlier version of the services would be limited to working with control points which expect these earlier versions.

I agree with you that implementing MediaRenderer:3 is your best bet. This should allow your device to be used by all possible control points.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top