Android下DLNA和UPnP的研究以及问题

因为工作的需要,最近一直在研究DLNA和UPnP,我们这里只研究多媒体的多屏互动,现在遇到瓶颈,故先总结下


DLNA确实是一个趋势,但是现在能找到的资料太少了,对我这样的新手来说难度确实大了点!!

DLNA按功能分可以分为:     DMS 数字媒体服务器   DMR数字媒体渲染器  DMC数字媒体控制器 DMP数字媒体播放器

PS:这么多天来仅仅搞定了DMP,可惜单独还无法使用,欲哭无泪啊!


DLNA最重要的部分是:设备的发现,控制和媒体的管理,而这个地方采用就是UPnp协议


UPnp协议

UPnP规范基于TCP/IP协议和针对设备彼此间通讯而制订的其它Internet协议。

UPnP所用到的主要协议还有:

SSDPSimple Service DiscoveryProtocol 简单服务发现协议)

GENAGeneric EventNotification Architecture 通用事件通知结构)

SOAPSimple Object AccessProtocol 简单对象访问协议)

XMLExtensible MarkupLanguage 可扩张标记语言)


下面暂时找到的两个开源的upnp的工具包(现在有好几款软件都是采用下面两个)

1.cling

http://4thline.org/projects/cling

2.cyberlink

http://www.cybergarage.org/twiki/bin/view/Main/CyberLinkForJava



下面说说遇到的瓶颈吧!

DLNA按情景来分可以有两张模式,简单说就是一个“推”,一个”拉“

推模式==DMS + DMR+ DMC

拉模式==DMS + DMP+ DMC

所以其实重点是DMS的搭建,就是需要生成一个设备,然后对外发布,中间细节我们不研究(太复杂了),让同类型的软件找得你!

多媒体的DMS重点是需要搭建两个服务ContentDirectory和ConnectionManager  

问题就在这,现在能让其他设备发现它,但是它的两个服务总是配置不成功,导致无法得到服务器的内容!!

暂时写到这里,有知道可以帮助下我啊!实在卡得好伤心啊!


你可能感兴趣的:(Android下DLNA和UPnP的研究以及问题)