- 1、本文档共7页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
具有状态保持机制的EPG系统研究与实现.doc
摘 要首先介绍了IPTV系统中EPG模块的功能与工作过程;分析了EPG模块开发过程中的菜单状态保持问题。然后针对一个实际的IPTV系统的EPG模块进行分析,参考操作系统中的参数传递机制,提出一种构造状态信息栈来保存EPG菜单状态信息的机制,这个机制能够在一定程度上提高EPG开发速度、降低代码维护代价。
关键词 IPTV; EPG; 参数传递; 状态保持
0 引言
IPTV系统是近几年发展起来的一种基于流媒体技术的网络多媒体服务,使得运营商可以利用宽带IP网向用户提供在线观看影视节目的业务,而IPTV用户通过与机顶盒进行交互即可观看到数量众多、画质清晰的电视节目或电影。1999年英国的Video Networks公司首先向用户提供 IPTV 服务,随后IPTV在世界范围内受到电信运营商的重视。随着 Internet 的普及与技术发展,IPTV业务也在迅速发展,截至到2004年底全球已有超过50家电信运营商推出了IPTV业务,IPTV用户超过100万,中国国家广电总局也于2005年5月向上海文广新闻传媒集团颁发了我国首张IPTV牌照。
EPG系统在实现过程中首要考虑到是否便于用户操作,从这点出发,EPG的设计通常会采用功能模块化与菜单层次化相结合的原则,功能模块化是指相近的功能统一集中在同一个入口处;菜单层次化是指从一个功能入口进入EPG之后进一步向用户展示详细一些的功能选单。例如IPTV系统提供电影、电视和自定义设置三项功能,每个功能下又有细分的功能,那么我们就在EPG首页上提供三个入口:电影、电视、设置,当用户选择电影按钮后EPG又会向用户展示战争片、动画片、喜剧片、影片有哪些信誉好的足球投注网站等详细功能分类,用户可以根据EPG的指示一层一层的选择下去直到找到用户需要的功能。正如用计算机访问网站一样,计算机上的浏览器保存了最近访问过的页面,为我们实现了后退的功能,我们会经常使用这个功能返回到前一个页面以选择相近的功能,但是IPTV系统却不能像计算机上浏览器那样简单的返回到直接的上级菜单,运营商会根据业务需求定义较复杂的返回逻辑,如触发某个事件后返回上n级菜单;理想的EPG系统要实现从某级菜单返回到上一级菜单后仍然恢复成上一级菜单离开时的状态,如光棒位置、用户输入的数据等。但机顶盒不如计算机功能强大,其存储能力有限,浏览器也相对简单,这就要求菜单返回机制与状态保持机制由EPG来实现。下面以某大型IPTV系统为例说明具有状态保持机制的EPG设计思路与实现。
1 EPG工作模式
EPG(Electronic Program Guide)是运营商根据业务需求定义的一组与用户交互界面的集合,考虑到 HTML 页面擅长表现文本、静态图片和动画内容,易于制作等特点,目前多数的IPTV工程中都使用 B/S 架构实现EPG功能。EPG工作过程如图1所示,所有的界面都是由 Web 服务器调用 Web 程序动态生成的 HTML 页面,而机顶盒(Set Top Box,简称 STB)充当了浏览器的角色。首先 Web 服务器向用户展示主界面,①用户通过 STB 的遥控器移动EPG界面上的光棒选择界面上的某功能选项,STB将用户的动作反馈给 Web 服务器;②Web 服务器将用户的动作反馈给EPG模块,EPG根据用户的动作进行必要的数据处理(查询数据库、和IPTV系统的其它模块进行沟通等)生成新的EPG页面;③ Web服务器将新EPG页面传送给STB。这样就完成了用户与EPG之间的一次交互。
图1 EPG架构图
2 状态保持机制设计
2.1 状态保持的必要条件分析
展示给用户的 EPG 菜单实际上是根据运营商业务的需求制作的 web 页面,在实际工程中我们采用 PHP 作为 web 页面开发工具,在最终 HTML 页面中使用 JavaScript 进行动态数据处理和用户动作处理。
用户进入某个 EPG 菜单时首先会向 EPG 系统提供必要的参数,如显示指定电视台的节目单时需要提供电视台的id,按关键词有哪些信誉好的足球投注网站电影需要输入关键词,可能存在翻页的菜单需要提供当前页号等。EPG 根据接收到的参数可以生成基本的EPG菜单了,STB把 web 服务器发送来的 EPG 菜单显示给用户,这时用户有一些行为会影响 EPG 菜单,如通过遥控器移动光棒选择一个选项,然后进入下级菜单,或在输入框中输入一些字符等,如果从当前菜单进入到下一级菜单时,这些状态都是需要保留的,而这些状态都处于 JavaScript 的控制之下。
基于以上分析,我们可以把影响构造菜单的因素分为 PHP 的参数与 JavaScript 动态数据两部分,由于 PHP 的参数解析动作在服务器端完成,我们称 PHP 的参数
文档评论(0)