分类:
2008-04-24 17:01:14
体系架构
共分三层:
1、(最上层),也就是应用层,主要实现了整合功能,以达到DLNA设备的要求。所以说呢,有关的开发设计人员要花多的时间在这一层上(如果有)。当然,如果真正想成为高手,就要向低层看起,只有这样才能更上一层楼哦!!!
2、(DLNA层),也就是数字生活网络联盟规范了。这一层主要完成有关规范的定义吧!
3、(所谓的低层),其实不是真正的低层,因为这里包含的内容很多很多了,(个人观点),有关的栈实现了、低层数据的通信etc.
这一层的模块主要是协助DLNA网络事件处理,如:SOAP 动作等。
开发者在处理该层时,应该把它当作一个“黑匣子”来对待,(如有特殊说明例外)。因为该层模块并不期望被修改,虽然在某种程度上说,需要支持制造商的扩充。
DLNA Layer Dependencies
这一层是由Intel DeviceBuilder所产生,完全不用修改,如果要想修改,建议重新用该产生工具重新产生吧。当然,要想全懂,这一部分代码可是很有必要细细读来的。
a.DMS integraton 有以下主要任务:
a1、处理来自控制点的浏览请求,并以DIDL-Lite 形式返回请求结果。
a2、整合有关CDS(content directory server) 对象元数据的后端媒体数据。
a3、响应内容请求(使用DLNA HTTP 服务器)。
a4、如果服务器支持上传功能,需要处理上传操作。
b.File System Backend 主要仿效后端数据库存放CDS (content directory server)元数据。
枚举文件目录中的文件,并用文件的基本属性来填充CDS 对象。CDS items是实际目录中的媒体数据。CDS containers是实际的文件夹。
c.MSA(media server abstration)主要概括 CDS:Browse请求,CDS:CreateObject和CDS:DestroyObject 。当处理浏览请求时, 在响应之前,要用DIDL-Lite序列化CDS对象。当处理上传请求时,MSA将创建一个CDS对象,来描述上传内容。
d.DeviceBuilder。用此工具产生的代码允许媒体服务器响应CDS:Browse CDS:CreateObject和CDS:DestroyObject 的调用;同时也允许媒体服务器发送GENA(通用事件通知架构)事件。
e.Web Server.可以接收CDS浏览请求。
f.Web Client 可以发送GENA、以及UPNP设备描述和服务描述文件。
制造商需要做事情就是融合处理元数据以及后端内容。MDS使用文件系统来作为后端文件存贮。(当然我们可以选项用数据库,也就是说自己随意组织了,当然,要根据情况了)