刘剑辉1, 2 李炜1, 2
(1. 北京邮电大学网络与交换技术国家重点实验室,100876,
2. 东信北邮信息技术有限公司,100191)
摘要: 营业厅目前的信息发布方式已经不能满足多样化、实时性的需求,实现宣传资源的统一管理势在必行,本文分析营业厅信息发布现状和视频联播的功能需求,合理运用设计模式设计了具有播放调度、分屏和菜单交互的播放和菜单系统,并介绍了系统各部分的架构。
关键词:视频联播 菜单 设计模式
Design and Implementation of Media Presentation and Menu System in Video Networking Terminal
Liu Jianhui1, 2 Li Wei1, 2
(1.State Key Lab of Networking and Switching Technology, Beijing University of Posts and Telecommunications, Beijing 100876, China; 2. EBUPT Information Technology Co. Ltd., Beijing 100191, China)
【Abstract】 Information dissemination mode in business hall at present can not satisfy the demand of diversification and real-time. To achieve integrated management of resources is imperative. The paper designed a media presentation and menu system using appropriate design pattern based on analyzing the developing situation and video networking requirement, and then analyzed the framework of the system.
【Key words】video networking menu design pattern
1 引言
随着3G时代的来临,为了满足新型业务发展的需要,提高用户的体验和交互感受,营业厅作为以营销、服务为主的渠道,其职能应发生转变。作为运营商的重要窗口,营业厅应摆脱营销和运营模式的限制,向体验厅、展示厅进行角色转换。新形式下的运营商营业厅,应具备三项基本职能:客户自助服务,电子媒体宣传,互动体验场所。
营业厅是运营商提供客服能力的重要渠道,现阶段其中拥有全方位,多种类的宣传和服务媒介,例如纸质宣传手册、LED显示屏、排队叫号机、自助终端机、液晶电视等。为了加强营业厅宣传的信息化、集中化、无纸化管理,进一步推动营业厅低成本高效率运营,对这些宣传渠道提出了集中化统一整合的需求,对营业厅各类展示设备进行联网,集中统一管理多媒体展示设备上的媒体内容展示和播控策略,提升各类宣传信息发布的一致性和及时性,提高营业厅整体服务质量、营销能力和客户感知。
2 营业厅信息发布现状和视频联播需求分析
2.1 营业厅信息发布现状
营业厅当前的信息发布主要渠道包括传统的纸质宣传手册,LED显示屏,平板电视等,这些发布方式已经不能满足目前运营新产品多样性、实时性的需求。
目前营业厅的多媒体展示终端主要是用于业务营销和自助服务,各类终端只具有单一职能,呈现信息孤岛状,无法真正体现和挖掘其潜在价值。现有的营业厅信息发布主要是靠一些管理制度来维持,但是制度的落实没有可靠的技术手段监控,只能靠人来执行,难免存在疏漏。信息不能统一制作、审核和发布,不能保证信息发布的安全性、正确性与及时性,业务推广与品牌推广更是无从提起。营业厅实现宣传资源的统一管理势在必行。
2.2 营业厅视频联播需求分析
为了提高客户体验和实现营业厅宣传资源的统一管理,通过联网控制的LED终端,信息的表现形式由原有的只具备单一职能转变为集合了声音、动画、图像以及高清视频等多种媒体形式的新媒体,形成强烈的视觉冲击和客户感受。通过统一的联网管理系统,可定时、定点进行信息发布、通知下达,同时各营业厅可根据自身所需进行本区域内的信息发布和管理。
营业厅多媒体电子屏联播管理系统是指借助网络与系统平台,通过数字传输和视频播放等信息化技术,将营业厅内的电视屏、电子海报屏幕等各类电子设备进行联网,以远程管理方式实现对各类电子屏幕统一内容、统一播放、统一监控的集中化管理。作为新一代营业厅管理信息化的重要手段,借助多媒体电子屏联播管理系统,可实现信息化、无纸化的宣传手段逐步替代低效高耗的纸质宣传品,进一步降低营业厅宣传成本,提升各类宣传信息发布的一致性和及时性,提高营业厅整体服务质量、营销能力和客户感知。
视频联播系统包含两个环节,一是视频联播系统平台,一是视频联播终端,视频联播终端可以在平台的控制和管理下进行工作,终端具有通信模块[1]和下载模块,终端自动从平台下载播放任务,在终端执行播放任务,将宣传媒体播放到显示屏幕上。
视频联播终端播放和菜单系统的主要功能要求:
1. 多媒体播放功能:支持视频(包括高清视频)、图片和文本等各种多媒体文件播放。
2. 分屏管理功能:电视屏可根据需要划分为多个子屏幕,各子屏幕可播放不同的宣传内容。
3. 播放列表调度功能:如果有新的播放列表,需要实时更新播放列表,播放列表中的播放任务包含有播放时限,如果播放时限超出,需要实时调度播放列表。
4. 菜单交互功能:提供基本的设置功能的菜单展现,供用户查看修改。
基于这样的需求,设计视频联播终端上的播放和菜单系统。
3 视频联播终端播放和菜单系统设计
3.1 系统概述
视频联播终端播放和菜单界面程序包括两个部分,一是呈现分屏播放内容的播放界面,二是显示菜单和响应用户操作的菜单界面。
1. 播放界面,即布局和媒体播放界面:是终端的启动默认界面,也是终端工作多数时候呈现的界面,播放界面下,在每个分屏布局区按照播放任务描述进行控制播放。
2. 菜单界面,即用户操作界面:显示一些终端参数设置界面,例如联网参数,网络连接选择,系统设置,系统信息等,供用户通过遥控器进行查看、修改和保存。
以上两种模式通过遥控器切换,在播放界面下,通过遥控器选择Menu按键进入到菜单模式;在菜单模式下,通过遥控器选择Esc按键返回到播放界面。
3.2 播放模式的设计
播放模式下,程序分析终端当前存在的所有播放列表,载入符合时间和优先级要求的播放列表,根据播放列表的描述构建出各个分屏的布局和播放内容,并根据时间线来更新播放内容。
播放模式的核心控制部分设计涉及如下几个抽象,各部分结构关系如图1所示。
1. PlaylistScheduler:播放任务调度器,通过分析终端存在的所有播放列表,根据播放时间段和优先级属性,确定出当前时间应当播放的具体的播放列表,构造播放列表解析的SurfaceDirector对象,并通过SurfaceBuilder执行构建Surface。
2. SurfaceDirector:播放列表解析控制器,解析播放列表描述XML文件,依据描述通过SurfaceBuider构建出各个具体的Surface,将播放内容的列表交付给Surface。
3. SurfaceBuilder:分屏构建和管理者,定义并明确它所创建的分屏展现,按照SurfaceDirector的指示来构建分屏组件。
4. Surface:分屏组件,被构造出的单个分屏对象,这个对象按照播放列表描述XML文件中该surface的播放素材顺序循环控制播放。
图1 播放模式类图
各部分的协作关系如图2所示:
图2 播放模式序列图
从图2看到SufaceBuilder会被其他的三个对象直接或间接用到,而且全局只会存在一个实例。因此在这里使用单例(Singleton[2])设计模式来设计SufaceBuilder类,这样可以使SufaceBuilder类自身负责保存它的唯一实例,并且提供一个访问它的全局访问点,实现了对唯一实例的受控访问[3]。
3.3 菜单模式的设计
菜单模式下,向用户呈现终端的控制和设置界面,主要包括联播参数、网络连接、系统设置、系统信息四大部分,其中每个部分又分别有自己的二级界面。用户通过遥控器进入相应的界面,查看设置,修改设置等操作。
可以看出,菜单模式下,菜单存在多种内在状态,各种状态之间存在着复杂的转换关系,因此使用状态(State)设计模式来设计。状态(State)设计模式的用意在于,允许一个对象在其内部状态改变时改变它的行为,消除了庞大的条件分支语句,使得代码更加清晰,并且易于维护[4]。
菜单模式的核心控制部分设计涉及如下几个抽象,各部分的结构关系如图3所示:
1. MainControl:主控制类,监听来自通信模块和下载模块的IPC(InterProcess Communication)消息和键盘按键消息。维护一个ConcreteState子类的实例,这个实例定义当前的菜单状态,MainControl调用ConcreteState子类的从MenuState继承来的handle()接口处理消息。
2. MenuState:抽象菜单状态类,定义一个消息处理接口handle(),以封装与MainControl的一个特定状态相关的消息。
3. ConcreteState:具体菜单状态类,菜单模式下的每一个设置界面都对应有一个具体菜单状态类。每一个子类是MainControl的一个特定的状态,定义了当前菜单的展现形式和行为,实现一个与MainControl的一个状态相关的行为。每个子类只保有一个实例,采用单例(Singleton)设计模式构建。
图3 菜单模式类图
各部分的协作关系如图4所示:
图4 菜单模式序列图
3.4 菜单显示流程设计
菜单显示流程是指在菜单模式下,每一个菜单界面绘图显示的流程。首先,对菜单中用到的共有的一些绘图元素做一层抽象,然后菜单界面绘图时就可以使用这些类来组合绘制。
菜单显示部分涉及如下几个抽象,各部分的结构关系如图5所示:
1. MenuObject:是所有界面元素的抽象基类,抽象了所有界面都要使用的一些基本要素,包括界面名称、界面焦点标志、界面显示标志、界面位置和大小,界面使能标志等。
2. MenuState:MenuObject的抽象子类,类中包含一个DirectFB layer[5]的成员,提供DirectFB绘制图形的各种接口实现。
3. MenuFocusObject:MenuObject的子类,在类中处理获得焦点后切换图的操作。
4. MenuLabel:MenuObject的子类,标签类,用于显示静态文字。
5. MenuButton:MenuFocusObject的子类,按钮类。
6. MenuEdit:MenuFocusObject的子类,输入框类。
图5 菜单显示类图
在以上抽象的基础上,菜单的显示流程如图6:
图6 菜单显示序列图
3.5 系统特性分析
视频联播终端播放和菜单系统提供了两种模式,实现了多媒体播放,分屏管理,播放列表调度和菜单的交互。设计中采用了多种设计模式,例如参数化工厂模式、单例模式、状态模式,结构清晰,功能完善,可扩展性强,可维护性强,满足了视频联播系统对于终端播放能力和菜单交互能力的需求。
4 结束语
在本文中,对目前营业厅信息发布的现状和视频联播需求进行了分析,根据视频联播终端上多媒体调度和分屏的需求,设计了一个播放和菜单系统,并阐述了其体系架构,同时对其特性进行了分析。
信息技术是动力,网络是基本,而信息化中的各种应用是根本[6]。视频联播系统借助于网络,通过数字传输和视频播放等信息化技术,实现了电子屏幕资源的集中化管理。通过这种信息化手段,降低了营业厅宣传成本,提高了服务质量。本文中介绍的播放和菜单系统还可以应用于银行网点、医院候诊区、酒店大堂等类似的场景中,具有一定的市场前景。
参考文献
[1] 刘聪,廖建新,朱晓民,王敬宇,支持下载业务的移动多媒体广播业务方案分析,华中科技大学学报(自然科学版),2008年5月,第36卷第5期,pp12-15
[2] Erich Gamma etc, Design Patterns Elements of Reusable Object-Oriented Software, Pearson Education, 2003.1
[3] 程杰,大话设计模式,清华大学出版社,2010年11月
[4] 吴平,廖建新,宋钊,武家春,state设计模式在基于安全用户平面A-GPS技术的定位平台中的应用,电信工程技术与标准化,2006年5月,第19卷第5期,pp88-91
[5] DirectFB, http://www.directfb.org/docs/DirectFB_Reference_1_5/index.html, 2011.4
[6] 刘劲松,吴姣,浅析日本信息化建设,日本问题研究,2007年第1期,pp56-58
* 基金项目:国家杰出青年科学基金(No. 60525110);国家973计划项目(No. 2007CB307100,2007CB307103);国家自然科学基金(No. 61072057, 60902051);中央高校基本科研业务费专项资金(BUPT2009RC0505);国家科技重大专项(No. 2011ZX03002-001-01, 2011ZX03002-002-01).