DLNA&UPnP开发笔记(1)

DLNA&UPnP协议为多媒体内容共享提供了标准的行业规范,随着移动互联网的火热发展,我相信它在智能家居领域一定会有着非常大的发展。我准备写几篇文章,分享一下最近在DLNA&UPnP协议开发方面的经验,DLNA&UPnP的文档特别多,在此我希望用自己的语言来引导大家快速理解DLNA&UPnP协议。


(1)DLNA&UPnP协议是干什么的


简单来说,DLNA协议定义了一种通用的行业规范,目的是让电子设备之间可以方便地共享照片、视频、音乐等多媒体内容。(这篇文章讲得不错,可以看看)


而UPnP协议主要用于实现智能设备的互联互通,它定义了局域网内的设备如何互相发现对方,如何提供服务,如何控制对方等一系列的过程。


(2)DLNA&UPnP协议的典型应用


举个直观的例子,通过DLNA协议,你可以方便地把手机里播放的视频投射到家里的电脑上或者智能电视上。目前很多软件都有这个功能了,如果你购买了Android智能电视或者某些电视盒子,就可以电视或者盒子中安装类似PPTV/搜狐TV这样的视频软件,然后在PC机的视频播放器或者手机播放视频的界面中,选择投射到电视或者盒子上即可。国内支持DLNA的播放器有很多,基本上常见的视频网站客户端都有支持,这里就不一一介绍了。


(3)DLNA和UPnP的关系


DLNA协议是建立在UPnP协议的基础上的,它依靠UPnP协议来完成设备的搜索、发现和控制,DLNA协议在此基础上对多媒体设备进行了更加详细的分类和约束,它其实更像是UPnP协议的一个子集。相比于UPnP协议,它更加专注于解决多媒体内容的共享的架构。


其实,现在的UPnP协议添加了“UPnP-AVArchitecture”,更加丰富和完善了UPnP协议本身对多媒体共享的架构与支持,可以看作一种简化版的DLNA架构。


在实际的开发中,UPnP协议提供了丰富的SDK,有着各种开源版本,我们只需要在UPnP官网提供的SDK的基础上,根据DLNA协议或者UPnP-AVArchitecture的定义实现相关的功能/服务即可。




本文转自 Jhuster 51CTO博客,原文链接:http://blog.51cto.com/ticktick/1637257,如需转载请自行联系原作者
优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/420872

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
Mario,低调大师唯一一个Java游戏作品

Mario,低调大师唯一一个Java游戏作品

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。

Java Development Kit(Java开发工具)

Java Development Kit(Java开发工具)

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

Sublime Text 一个代码编辑器

Sublime Text 一个代码编辑器

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。