DLNA 1.5 Device Classes – Why So Many?
Once one understands what DLNA is and what it does, the natural progression is to ask how it works. DLNA devices interoperate through the use of many different device classes. Examples of these classes include a Digital Media Player (DMP) and Digital Media Server (DMS). There are many, many other device classes, but these two (DMP and DMS) are the simplest. A DMP is exactly what it sounds like: a device which plays media via streaming using DLNA protocols. This content is streamed across the network from a DMS. Both these devices are certified to work together regardless of brand or hardware type. For example, a TV or set-top box (such as a blu-ray player) which is certified as a DMP will always be able to stream from a DLNA-certified DMS, such as a networked storage device, or even software on your computer.
DMP and DMS are by no means the only device classes, and if the above paragraph seemed somewhat acronym-heavy, it gets worse. There are two other principle device classes that can be DLNA certified: a Digital Media Renderer (DMR) and a Digital Media Controller (DMC). While a DMP will allow you to browse the content advertised by a DMS and then play it, a DMR, DMC, and DMS system (called a three-box system, in contrast to the DMP/DMS two-box system) splits that functionality into two devices, the DMR and the DMC. The DMR is a “dumb” device, in that it does only the rendering task – a bit like a traditional TV. It is told what file to render by the DMC, which can also browse the DMS. This is sort of a “remote” type of feature, allowing for, say, a smartphone to let you render content from your networked storage device to your TV.
However, the TV need not be only a DMR– it can also be a DMP, letting you browse with either that smartphone DMC in the example or the TV’s remote. The smartphone could be both a DMC and a DMS – allowing you to push content from the phone itself to your TV (and, if the TV is a DMP, allowing it to browse the content on your phone). In fact, there isn’t a limit to the amount of DLNA 1.5 device classes a single device can be. There can be a device which is certified for DMP, DMR, DMC, and DMS. There is one more device class, which is a Digital Media Printer (DMPr), which, is a printer that can print media from a DMS that has the capability to send XML to a printer. This brings up the last point about DLNA device classes that we will address.
A DLNA device class can also have device options and capabilities, which expand upon the things the device can do. A device can have a +PR1+ or +PR2+ capability, which allows them to send media (and formatting) to a DMPr to be printed. A DMS can have UDO (which is a device option), which allows a device with +UP+ capability to upload media to it. A DMS can also have DS capability, which allows a device with +DN+ capability to download content from it.
At this point, the “So Many” part of the title may have become clear–there are a lot of device classes and capabilities. The “Why” part should have begun to dawn, but it’s better to point it out explicitly. While device classes may overlap at points (such as both a DMP and DMR being able to render), each one has a unique purpose that can’t be substituted by using a combination of other device classes. This can be demonstrably shown during testing of these device classes because the testing itself doesn’t overlap – a device with many (or even all) device classes and options has no overlapping testing procedures – each capability and class must be tested for conformance to standards and interoperability.
With all the device classes and capabilities, a user can do virtually anything related to media using DLNA-certified devices, which is the goal of DLNA certification. It’s entirely necessary to have so many classes and features, because it allows these devices, and consumers, to have options on the treatment and control of media. While it might seem more efficent to force many of these things into one lump sum which must be certified, it doesn’t quite work because any grouping of these classes doesn’t necessarily make sense for all products. Thus, there have to be many classes, so that DLNA can support so many features.
Austin Pond, Research and Development