多媒体播放终端系统设计
2016-01-07常奕
常奕
摘 要:数字告示系统作为新兴的广告产业,引起了人们的普遍重视,在本文中,系统特别强化了系统模块独立性,提高模块的独立性和扩展性,尽量减少模块间耦合度。优化通讯方式,播放终端作为远程独立运行的设备,能够有效地保障终端的工作、运行和数据管理。
关键词:独立模块;系统通讯
1 系统框架
在整个系统框架的设计中,按照功能分成独立模块,尽量减少模块间耦合度,提高模块的独立性和扩展性。各个模块间采用统一的基础平台模块和消息交换模块。基础平台为各个模块编程提供操作系统所需的基础函数封装,对模块进行操作系统细节屏蔽。消息通讯接口为各个模块提供统一的消息收发机制,实现模块间跨线程、进程、设备间、线程与内核间通讯,以屏蔽各个模块所在位置细节。
播放终端按照功能可以分为下面这些模块。
2 系统通讯
系统内的消息通讯由消息交换模块负责,是整个系统的核心模块,可以实现跨线程、进程、设备间、线程与内核虚拟设备间通讯,为各个模块实现一个统一的消息收发接口。这样模块主线程所有的处理都可以以消息为基础进行统一设计。消息发送可以支持同步与异步的RPC方式通讯,但为简化设计,仅支持双向信息可靠(不可靠)IPC通讯。消息中可携带的数据一般最好不能超过128KB限制。消息通讯只用于控制信令传输,而对于流数据收发,则由其他方式来实现。整个消息交换的架构类似于软件交换机,模块+设备ID来唯一表示一个通讯node就如MAC地址,每个设备内部都有一个消息交换中心,以支持设备内模块间线程、进程间的消息交换。在需要支持分布式设备间通讯时,需要由核心设备作为上一级交换中心,以实现消息的跨设备通讯。
收发模块:收发模块实际可以拆分成接收模块和发送模块。发送模块可以扩展支持同步与异步的RPC通讯方式。
消息头一般为8个ULONG长度(cache line长度),如简单定义为:(图3)
在线程间通讯时,只需要发送消息头即可,而在进程间通讯时需要发送消息头和消息内携带的数据。
3 统一通讯模块
播放终端作为远程独立运行的设备,需要和控制服务器进行通讯才能正常工作。一方面,根据终端安装现场的具体情况,通讯可能通过以太网、WIFI、GPRS、3G等不同的通讯方式进行,另一方面,终端使用公共网络,从安全性考虑必须对通讯数据进行保护。
统一通讯模块负责根据终端的配置,选择合适的通讯方式与服务器建立连接。一开始,统一通讯模块只允许注册模块与服务器进行通讯,其他模块如果有请求的都会被拒绝。等注册模块完成设备注册后,才允许其他模块与服务器进行通讯。其他模块需要与服务器通讯时,将请求发送给通讯模块,由通讯模块对数据进行加密后发送给服务器。服务器将数据发送给终端的某个模块时,也是将数据加密后发送给通讯模块,通讯模块处理后再转发给指定的模块。
4 注册保活模块
在整个系统中,同时有非常多的播放终端同时工作,终端与服务器通讯,必须有自己的唯一标识。接入服务器的终端必须是经过认证的。如果由于业务需求,终端与服务器之间长期没有通讯请求,那么即使终端和服务器之间的通讯线路失效了,服务器也无法知道,等到需要使用时才会发现无法连接。
这个模块保存了本播放終端的唯一ID,当通讯模块建立了与服务器的连接通道后,将唯一ID与注册请求发送给服务器,服务器认可本终端后,回应注册完成报文。然后注册模块通知统一通讯模块可以接受其他模块的发送请求,整个系统与服务器之间的通讯完全初始化成功。随后,本模块定时向服务器发送保活请求,以此来告知服务器本终端的工作状态,同时验证通讯连接的有效。
5 下载模块
播放终端播放的视频、音频、文本等媒体文件,节目单等播放控制文件,以及系统更新固件,都需要从服务器下载。下载方式可以是FTP、HTTP方式进行。当设备数量较多时,也可以使用P2P方式下载,以减轻服务器负载。载模块主进程负责所有下载相关任务的维护,BT、FTP、HTTP下载进程各自以独立进程的形式存在,并统一由主进程管理。其他模块有下载请求时,将请求的文件信息发送给下载模块,下载模块解析下载类型后,将下载任务发给给相关的子进程。子进程接收到命令后自行进行下载。当下载完成后,发送下载完成消息给请求的模块。在下载过程中,其他模块也可以发送请求取消下载。
6 总结
通过终端播放系统的设计,强化终端处理器管理控制功能,使得播放终端在离线或是在线的状态下均能较好地实现和管理多媒体数据播放。
参考文献:
[1]侯天超,于忠清.数字告示系统综述[J].青岛大学学报(自然科学版),2009(03).
[2]于振伟,赵岩,于忠清.数字告示系统的设计与实现[J].中国新技术新产品,2009(07).
[3]陈海东.多媒体广告发布系统设计与实现[D].大连理工大学,2013.
[4]黄迎辉.高清广告信息发布系统的研究开发与实现[D].北京邮电大学,2011.
[5]吴巧洋.我国户外广告的发展现状和机遇分析[J].长沙民政职业技术学院学报,2007(01).