手机端
or

欢迎您加入我爱方案网QQ群

1.智能产品外包服务群(311606115)
2.嵌入式项目开发群(491609563)

基于OSGI家庭网关的多媒体系统设计

邓炼勇; 陆以勤| OSGI,家庭网关,UPNPAV框架,多媒体| 2010-11-29
1084 收藏
分享到: 
每日精选
热门推荐

【中心议题】

  • 介绍一种基于OSGI家庭网关和UPNP AV架构扩展的媒体共享系统设计
  • 实现了家庭网络中多媒体设备的互操作

【解决方案】

  • 基于控制点代理的媒体共享系统框架设计
  • 使用基于OSGI平台的家庭网关,取得外部多媒体Bundle
  • 增加远程I/O服务,为远程用户提供交互

1引言

随着家庭数字设备的增多,家庭多媒体内容资源变得丰富多彩,这些内容可以来自PC,Internet,广播,卫星接收器,DVD/VCD播放器,摄像机等,这些设备通常与用户的使用位置不同。

多媒体共享就是通过家庭网络资源共享使得存放在家庭网络内部的多媒体资源能随时随地的被用户访问。近年来,PC与消费电子融为一体化是一种趋势,意味着消费电子具备联网访问家庭内部和外部多媒体的能力。本文设计一个基于OSGIUPNP AV架构扩展的多媒体系统能在家庭环境下同时提供内部和外部多媒体服务。使用UPNP作为中间件实现家庭网络设备的互操作性,采用UPNP AV框架实现内部多媒体服务,而且每个潜在的多媒体实体都作为一个OSGI BundleOSGI平台上运行,充分利用UPNPOSGI这两大标准的优点。通过使用家庭网关上的OSGI平台,使得我们能在家庭网关上为家庭网络混合容器设计一个软件桥接Bundle,作为连接采用不同家庭网络中间件的设备之间一个桥梁。这样我们就能获得中间件互操作性,同时把这种互操作性通过使用非UPNP中间件扩展到非UPNP设备。通过UPNP AV框架多媒体设备能与家庭外服务提供者通信,用户能像内部多媒体服务一样的方式享受外部多媒体服务。作为多媒体服务提供者,可以使用它们自己的传输协议像WMS,RTSP,无需开发另一个连接UPNP AV框架的协议。

 

2相关技术简介

2.1 UPNP AV框架

UPNP AV框架提供一种支持在不同型号,内容格式,传输格式的设备之间实现多媒体共享的控制机制,UPNP技术有UPNP论坛开发,不会增加配置复杂性,不需要人为干预就可以实现服务共享和使多种设备形成一个网络体系。在UPNP网络中,设备可以自动发现其他设备。UPNP AV框架定义了UPNP控制点与多媒体设备之间的交互。通常设备之间通过控制点交互,多媒体通信的参数通过控制点设置,但多媒体内容是由服务器直接传输给播放器。如图2.1

2.2 OSGI

OSGI规范为服务和应用程序的开发提供一个平台,得到不同行业的广泛支持。规范的核心是定义一个框架为提供服务的软件提供一个下载和执行的环境。OSGI提供一个方便设备互操作的执行环境,把服务用标准化和模块化的形式定义。所以它们使用起来对其他服务来说就像一个组件块。OSGI框架允许动态的安装,启动,关闭,删除,升级新服务。一个包含代码的包就是一个模块,叫做Bundle,一个服务由一个Bundle组成,Bundle能彼此之间通信,并为其他Bundle提供服务。

 

3多媒体共享系统设计与实现

3.1基于控制点代理的媒体共享系统框架设计

在很多多媒体共享系统的设计中,一般只是基于UPNP AV架构实现,缺乏把媒体共享作为家庭网络一部分的考虑,这种实现容易使媒体共享孤立,不能充分发挥家庭网络的优点。本文提出一个新的设计思路:对现有UPNP AV框架进行扩展,改进对UPNP AV架构的控制点设计,OSGI框架内实现媒体控制点的功能,OSGI平台与UPNP媒体共享网络进行融合,这样可以借助OSGI强大管理功能来管理多媒体服务器和播放器,实现家庭网络控制中心和媒体控制中心的完美统一。我们把基于OSGI实现的媒体控制点叫做控制点代理。扩展后的UPNP AV系统实现,如图3.1所示:

 

3.2多媒体系统设计

家庭内部多媒体共享技术已经比较成熟,我们重点介绍如何实现对外部多媒体资源的访问。我们使用基于OSGI平台的家庭网关,取得外部多媒体Bundle。家庭网关作为家庭外多媒体资源的一个代理。因此用户可以不要区分多媒体内容来自家庭内部还是家庭外部。同时多媒体服务提供者可以使用它们现有的多媒体服务系统,不需要对UPNP AV框架做任何改动。

OSGI服务Bundle与控制点交互,取得家庭网络中UPNP设备的信息。通过使用UPNP播放器控制服务,UPNP AV控制点能取得家庭网络中UPNP媒体播放器的信息。因此,通过Interne外部多媒体服务Bundle就能向远程媒体服务器提供信息。服务提供者把选择合适的文件格式和传输格式通知外部多媒体服务Bundle。接着,外部多媒体服务Bundle激活与家庭网络中UPNP媒体播放器交互的虚拟UPNP多媒体服务器。UPNP媒体播放器把虚拟UPNP家庭网关上的虚拟媒体服务器看作是实际的UPNP媒体服务器。因此,来自外部的多媒体内容能像家庭网络内部中实际多媒体服务器上的多媒体内容一样的方式显示在UPNP控制点上。用户只要选择家庭外部多媒体内容,使用UPNP控制点通过UPNP操作向媒体服务器定制服务,媒体服务器将请求媒体提供者向家庭网关传输多媒体内容。虚拟UPNP媒体服务器把这些数据传输用户的媒体播放器。整个过程如图3.2所示:

3.3虚拟媒体服务器设计

在设计上节提到的虚拟媒体服务器之前,首先要在路由管理BundleUPNP AV框架Bundle之间建立联系。UPNP AV框架,正如UPNP AV论坛指出的一样,是发现家庭网络中设备的核心,在设备之间传输多媒体内容。现在,服务提供者处理这些服务(Bundle),因此,提供者负责在家庭网关上呈现服务。我们的目标是使远程服务对用户来说就像在本地UPNP服务一样,因此需要设计虚拟服务器。为了取得远程服务,访问网络的自动配置服务器(ACS)将安装允许用户访问它所需要的机制和服务。

 

如图3.3:家庭网关分为两部分OSGI服务平台和路由器。OSGI服务平台有AV子系统(UPNP)和远程管理子系统,远程管理子系统使用TR-69协议与ACS通信。有3Bundle,其中路由器配置Bundle负责执行路由器要求的设置;网络配置器BundleACS通信的管理机构。这些Bundle把路由器的变化情况保存到动态管理数据库(MIB)中。CSP将修改路由器的配置,使得虚拟服务器(家庭网关)能呈现内容。重新配置可以远程完成,因此,虚拟服务器对用户是透明的,因为用户可以继续通过控制点上的基于HTTP协议的GUI访问服务器上的资源。

4远程控制点设计

UPNP支持HTML呈现,它的性能完全取决与设备提供商的实现,采用CGIPHP等技术,可以提供动态的改变网页和用户输入的功能,但是用户必须使用附近的交互设备来获得服务。虽然简单但不能满足想通过PDA,移动电话等手持设备操作AV服务的要求。为了让用户更加自由的操作多媒体服务,使用UPNP远程I/O服务为用户提供远程服务,UPNP远程I/O是一个标准的UPNP DCP(用户控制协议),它能让运行在具体设备上的应用程序远离用户交互点。UPNP远程I/O使得组成用户界面输入输出服务(像鼠标,键盘,显示器)能远程的连接起来。实际的UI数据的传输使用带外传输,使用XHTRDP发布事件。

 

在系统的家庭内部服务器上增加远程I/O服务,为远程用户提供交互。这样用户交互设备只需有支持远程I/O功能,而不需要实现自己的智能A/V服务。

深圳市中电网络技术有限公司 Copyright© www.52solution.com 粤ICP备10202284号