发明内容
本发明的目的是针对EPG页面开发中所存在的上述问题,提出一种IPTV平台EPG页面可视化开发与自动生成方法,将EPG页面代码开发转化为可视化操作。IPTV平台根据可视化操作结果生成EPG页面描述文件,以标准化数据格式存储EPG页面内部各EPG页面元素具体的位置、大小和其调用的IPTV平台功能信息。当这份文件描述的EPG页面需要在电视机上被展示时,IPTV平台自动解析EPG页面描述文件,将解析出的内容映射到IPTV平台预先设计的EPG页面代码模板中,自动生成一份可供机顶盒浏览器解析执行的代码页面进行展示。本发明设计的EPG页面代码模板是预先在IPTV平台中建立好的、按照机顶盒浏览器支持的代码格式形成的一份模板,模板内预置了EPG页面元素展示、调用IPTV平台功能的代码,但具体展示的位置及大小、具体调用的IPTV平台功能要根据EPG页面描述文件解析出的值确定。
本发明的技术方案是:
名词解释
IPTV:Internet Protocol Television,互联网协议电视。
EPG(EPG页面):Electronic Program Guide,电子节目导航菜单。是利用程序设计语言开发的,可被IPTV机顶盒浏览器解析并在电视机上展示的代码页面。
EPG页面背景图:EPG页面的背景图片,展示EPG页面的整体设计风格,通常铺满整个EPG页面。
EPG页面元素:在EPG页面内展示的、提供用户与IPTV平台交互的元素。包括:图片、按钮、文字、视频框等。
XML语言:eXtensible Markup Language,XML,可扩展标记语言。是一种通用的标签语言,可标准化的保存数据。
一种IPTV平台EPG页面可视化开发与自动生成方法,首先上传EPG页面的背景图片到IPTV平台可视化操作界面,IPTV平台可视化操作界面根据页面背景图片建立EPG页面坐标系,在EPG页面坐标系内用鼠标画出并调整各所需的EPG页面元素的大小和位置,并确认该EPG页面元素调用的IPTV平台功能。画出所有的EPG页面元素后,IPTV平台将画好的EPG页面保存为EPG页面描述文件。需要展示这个页面时,IPTV平台自动解析EPG页面描述文件,得到EPG页面的相关信息,填入IPTV平台内置的EPG页面代码模板,生成一张可供机顶盒浏览器解析的EPG页面,通过电视机展示。将传统的EPG页面代码开发工作转换为在IPTV平台上的可视化操作,所有EPG页面代码由计算机自动生成,提高了EPG页面开发效率和质量,支撑中国电信IPTV业务的高速发展。
本发明的有益效果:
本发明提出一种IPTV平台EPG页面可视化开发和自动生成方法,实现了EPG页面可视化开发,自动生成可供机顶盒解析展示的EPG页面,提高了EPG页面开发效率,支撑中国电信IPTV业务的发展。
具体实施方式
下面结合附图和实施例对本发明作进一步的说明。
本发明提出了一种IPTV平台EPG页面可视化开发与自动生成方法:如图1所示,为本发明自动生成EPG页面的过程,包括以下步骤:
步骤A、将EPG页面背景图上传到IPTV平台可视化操作界面,建立EPG页面坐标系;
步骤B、在EPG页面坐标系内画出并调整各EPG页面元素的大小、位置,并为EPG页面元素分配其调用的IPTV平台功能;
步骤C、完成所有EPG页面元素的设计后,IPTV平台自动生成EPG页面描述文件;
步骤D、在页面需要被展示时,IPTV平台自动解析EPG页面描述文件;
步骤E、将解析出各元素的位置、大小、被点击时调用的IPTV平台功能填入EPG页面代码模板中,生成可被机顶盒浏览器解析执行的代码页;
步骤F、代码页通过机顶盒浏览器在电视机屏幕上展示。
本发明的应用场景如图2所示,由IPTV可视化操作界面、EPG页面描述文件存储单元、EPG页面代码模板存储单元等三个部分构成。具体说明如下:
1、IPTV可视化操作界面
接收用户上传的EPG页面背景图,并根据接收的EPG页面背景图建立EPG页面坐标系。EPG页面坐标系的建立方法为:以EPG页面背景图的左上角为原点,以页面背景图的横向方向为X轴,竖向方向为Y轴,建立EPG页面坐标系。读取EPG页面背景图横向、竖向的像素长度,横向像素长度×竖向像素长度确定的区域为EPG页面元素描画空间。
2、EPG页面描述存储单元
在EPG页面坐标系的EPG页面元素描画空间内,描画各类EPG页面元素。确定元素的大小、位置及调用的IPTV平台功能。完成全部EPG页面元素描画后,IPTV平台将描画好的EPG页面信息保存为EPG页面描述文件并存储在IPTV平台。本发明建议EPG页面描述文件通过XML语言描述,亦可根据实际运营和技术的需要采取其它任何能够被计算机程序自动解析的语言描述。
3、EPG页面代码模板存储单元
IPTV平台预先按照机顶盒浏览器支持的代码格式建立代码模板,模板内预置了EPG页面元素展示、调用IPTV平台功能的代码,IPTV平台解析EPG页面描述文件得到EPG页面元素具体的位置、大小和调用功能信息后,将这些具体的信息填入到代码模板中,形成可执行的EPG页面。
EPG页面描述文件的建立方法
1.EPG页面描述文件的格式
EPG页面描述文件采取标签描述EPG页面的各类元素。标签的名称在实际应用过程中可根据实际需要进行调整。只要遵循本发明的规则,标签的名称变动不影响实施效果。
EPG页面描述文件基本格式为:
每份EPG页面描述文件中有且仅有一个page标签。Page标签内涵盖了这个EPG页面的全部元素内容。
每份EPG页面描述文件中可以不包含bgpic标签(此时该EPG页面不包含背景图),如果包含bgpic标签,仅允许包含一个bgpic标签。Bgpic标签内的addr标签给出了这个EPG页面的背景图地址信息,height标签给出了这个EPG页面背景图的高度信息,width标签给出了这个EPG页面背景图的宽度信息。
每份EPG页面描述文件中可以不包含item标签(此时该EPG页面不包含其它元素),如果包含item标签,标签个数由业务需求而定,个数不受限制。Item标签内的top、left标签给出了该页面元素的位置信息,height、width标签给出了该页面元素的大小信息,action标签给出了该页面元素调用IPTV平台功能的信息。
2.EPG页面背景图信息的计算方法
当IPTV平台可视化操作界面成功接收EPG页面背景图后,会为这个EPG页面背景图分配一个在IPTV平台内调用它的地址,将其填入到EPG页面描述文件的bgpic内的addr标签中。IPTV平台可视化操作界面读取EPG页面背景图横向像素长度,记录在width标签中,读取EPG页面背景图竖向像素长度,记录在height标签中。
3.EPG页面描述文件生成方法
IPTV平台可视化操作界面以背景图左上角为坐标原点,以页面背景图的横向方向为X轴,竖向方向为Y轴建立EPG页面坐标系。当本EPG页面不存在背景图时,系统提供一张默认的透明背景图,按上述方式建立EPG页面坐标系。IPTV平台可视化操作界面读取EPG页面背景图(或默认透明背景图)的横向像素长度×竖向像素长度确定的区域为EPG页面元素描画空间。在EPG页面元素描画空间内完成EPG页面元素的描画后,IPTV可视化操作界面自动扫描EPG页面坐标系,通过EPG页面元素的左上角坐标信息计算该元素的位置信息,通过每个EPG页面元素的左上角、右下角坐标信息计算该元素的大小信息。将各EPG页面元素信息保存为EPG页面描述文件。
具体计算方式为:
设:IPTV可视化操作界面自动扫描得到的EPG页面元素左上角坐标为(lx,ly),EPG页面元素右下角坐标为(rx,ry),则Item标签内top、left、height、width四个标签值的计算公式为:
top=ly ①
left=lx ②
height=ry-ly ③
width=rx-lx ④
用户在IPTV可视化操作界面可为页面元素分配其可调用的IPTV平台功能。IPTV平台功能由IPTV平台可视化操作界面统一封装,以列表的形式提供。当需要为某一个EPG页面元素分配功能时,只需要选中这个EPG页面元素后指定具体的IPTV平台功能即可,IPTV平台可视化操作界面将这个功能填入action标签中。
EPG页面自动生成方法
在完成了EPG页面的可视化设计后,IPTV平台可视化操作界面生成了一份EPG页面描述文件。解析EPG页面描述文件,将解析得到的EPG页面信息映射到EPG页面代码模板中预留的、需要根据EPG页面设计实际情况填充的位置。
EPG页面代码模板使用以’$’符号开头的变量标代码模板预留的插入位置,’$i’表示其对映EPG页面描述文件中第‘i’个元素的具体值。i值根据EPG页面描述文件中包含的实际Item标签数量确定。在实际应用中,插入位置的符号可根据具体的需求确定,只要遵循本发明流程,不影响EPG页面代码自动生成。
解析EPG页面描述文件,得到需要填充位置的具体值:
通过解析EPG页面描述文件,得到EPG页面的名称、背景图、各EPG页面元素的位置、大小、调用的IPTV平台功能的具体值,通过上述映射表,将具体的值填入到EPG页面代码模板的对应位置,形成可执行的EPG页面。