[下面的任何引用都是来自http://upnp.org/resources/upnpresources.zip的捆绑包中的文档]
您不能将媒体服务器和渲染器组合成一个 UPnP 设备。UPnP-av-MediaRenderer-v3-Device-20101231.pdf & UPnP-av-MediaServer-v4-Device-20101231.pdf 为服务器和渲染器定义特定的设备类型(请参阅每个文档的第 3 节),因此您需要单独的 UPnP设备。
但是,我认为您可以在另一个中嵌入一个(任一)设备。上述每个文档的第 2.2 节(设备模型)都说渲染器和服务器设备分别可以是根设备或嵌入式设备。
如果你决定使用嵌入式设备,我相信每个设备都应该有自己的 UUID。我找不到明确的参考资料,但它似乎强烈暗示在 v1.1 架构文档的第 2.3 节(设备描述)中。这也是我在我维护的 UPnP 堆栈中所做的,我没有发现这会导致任何问题。
综上所述,如果您希望其他程序将您的服务器或渲染器用作标准 UPnP 设备,而与您的组合服务器 + 渲染器 + 控制点无关,那么您只需要担心这些。如果您不关心第三方使用服务器或渲染器,您可以自由地为您的产品做任何事情。因此,您可以方便地实施尽可能多或少的 UPnP 规范。