发明内容
本发明的主要目的是提供一种节目处理简单、速度快、用户体验性好的机顶盒及处理节目的方法。
本发明解决其技术问题所采用的技术方案是:
一种机顶盒处理节目的方法,所述机顶盒中加载有SQLite(轻量级适合嵌入式使用的数据库)数据库,该方法包括:
在播放节目时,以即将播放的节目的唯一编号为索引检索所述SQLite数据库,并获取所述节目的节目信息;
将所述节目信息进行播放前的预处理;
播放所述经过节目信息预处理后的节目。
优选的,所述方法,接受用户的对类型进行选择的输入命令;
根据所述输入命令选择类型为索引检索所述SQLite数据库,从所述SQLite数据库中获取所述类型的节目的信息;
显示所述类型的节目的信息,以供用户选择。
优选的,所述方法,接收输入的改变参数的命令,改变所述参数,并将改变后的参数信息修改后写入所述SQLite数据库中保存。
优选的,所述方法,还包括:
在搜索节目时,将搜索到的节目的信息写入所述SQLite数据库中进行保存;
在搜索电子节目指南时,将所述搜索到的电子节目指南保存到所述SQLite数据库中。
优选的,所述方法,还包括:根据所述SQLite数据库的分类检索功能,找出所述SQLite数据库中的某一类电子节目指南信息,并按照时间先后顺序对该类电子节目指南信息进行排序。
本发明还提供一种机顶盒,所述机顶盒中加载有SQLite数据库,该机顶盒包括:
检索获取单元,用于在播放节目时,以即将播放的节目的唯一编号为索引检索所述SQLite数据库,并获取所述节目的节目信息;
预处理单元,用于将所述节目信息进行播放前的预处理;
播放单元,用于播放所述经过节目信息预处理后的节目。
优选的,所述机顶盒还包括:命令接受单元,用于接受用户的对类型进行选择的输入命令;
信息获取单元,用于根据所述输入命令选择类型为索引检索所述SQLite数据库,从所述SQLite数据库中获取所述类型的节目的信息;
信息显示单元,用于显示所述类型的节目的信息,以供用户选择。
优选的,所述机顶盒还包括:参数写入单元,用于接收输入的改变参数的命令,改变所述参数,并将改变后的参数信息修改后写入所述SQLite数据库中保存。
优选的,所述机顶盒还包括:搜索节目信息写入单元,用于在搜索节目时,将搜索到的节目的信息写入所述SQLite数据库中进行保存,以及在搜索电子节目指南时,将所述搜索到的电子节目指南保存到所述SQLite数据库中。
优选的,所述机顶盒还包括:电子节目指南分类单元,用于根据所述SQLite数据库的分类检索功能,找出所述SQLite数据库中的某一类电子节目指南信息,并按照时间先后顺序对该类电子节目指南信息进行排序。
实施本发明的技术方案,具有以下有益效果:本发明提供的机顶盒及处理节目的方法,通过在机顶盒中加载SQLite数据库,并通过上述方法和机顶盒,使数据(如:节目及节目信息)组织更简单,数据存储更方便,数据检索更快捷,数据管理实现模块化,与主流嵌入式技术实现无缝结合,可以开展机顶盒其他扩展业务,私有数据存储更方便,提高了用户体验。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例提供一种机顶盒播放节目的方法,所述机顶盒中加载有SQLite数据库,该SQLite数据库加载在所述机顶盒中的步骤包括:
初始化,进行该初始化时需要做以下几个工作:
S110、初始化存储设备;
例如初始化机顶盒的flash设备,若该机顶盒具有nvram,则还要初始化nvram。初始化完成后即可进行数据的读写操作,则可以进入步骤S120。
S120、在内存中映射一个可读写的文件系统;
由于数据库要求文件系统可读可写,而一般机顶盒的软件中出于安全的考虑文件系统本身都是只读的,这时就需要提供一个可读写的文件系统以供SQLite数据库使用。可以通过以下方式实现:在机顶盒上电后,在文件系统中指定一个目录,将该目录映射一个可读写的文件系统,然后SQLite数据库就在该目录中工作。SQLite数据库工作后会在该目录上生成若干个数据库文件,机顶盒实时地将这些数据库文件写到存储设备(如:flash设备)中保存。
S130、从存储设备中读取数据库文件;
SQLite数据库的实体是以若干个文件的形式存在的。这些文件就需要写入存储设备进行断电记忆,那么机顶盒每次启动则需要将上一次断电前保存到存储设备中的文件读取出来。
S140、打开或者新建数据对应的表;
读出数据库文件后,即可调用SQLite数据库提供的操作接口操作对应的表,若为出厂状态,则此时需要新建表,否则,此时对应的表已经存在,则打开对应的该表即可。到了这个阶段,SQLite数据库的所有初始化准备工作已经做好了,然后就可以对SQLite数据库的进行相关操作了。该相关操作包括:添加/删除/修改该SQLite数据库中的数据。
机顶盒初始化完成后,在运行过程中会不定时将一些数据从数据库读取数据,或者将新的数据写入SQLite数据库,或者修改、更新SQLite数据库中的数据。包括本发明实施例提供的机顶盒播放节目的方法的步骤。
如图2所示。本发明实施例提供的机顶盒播放节目的方法包括步骤:
S210、在播放节目时,以即将播放的节目的唯一编号为索引检索所述SQLite数据库,并获取所述节目的节目信息;
该节目信息包括:节目名称、节目编号、节目所在的频点信息、节目是否加扰、该节目关联表的PID(数据包标识符)、该节目的音视频的PID等播放时需要的信息。
S220、将所述节目信息进行播放前的预处理;所述预处理主要包括:锁频、解扰(若该节目是加扰的)两个过程。
S230、播放所述经过节目信息预处理后的节目。
其他的实施例中,在上述实施例的基础上,如图3所示,该方法还进一步包括:
S240、接受用户的对类型进行选择的输入命令;
S250、根据所述输入命令选择类型为索引检索所述SQLite数据库,从所述SQLite数据库中获取所述类型的节目的信息;
S260、显示所述类型的节目的信息,以供用户选择。
其他的实施例中,在上述各个实施例的基础上,如图3所示,该方法还进一步包括步骤:
S270、接收输入的改变参数的命令,改变所述参数,并将改变后的参数信息修改后写入所述SQLite数据库中保存。
即:在改变系统参数、环境变量时,比如用户换台、改变音量、改变菜单的显示语言、改变菜单的透明度等参数后,需要将这些修改后需要断电记忆的改变后的参数信息写入所述SQLite数据库进行保存。
其他的实施例中,在上述各个实施例的基础上,如图3所示,该方法还进一步包括步骤:
S280、在搜索节目时,将搜索到的节目的信息写入所述SQLite数据库中进行保存。
其他的实施例中,在上述各个实施例的基础上,如图3所示,该方法还进一步包括步骤:
S290、在搜索电子节目指南时,将所述搜索到的电子节目指南保存到所述SQLite数据库中。
即:在搜索电子节目指南(EPG)时,要将搜索到的电子节目指南信息写入SQLite数据库,以便下次用户再需要查看电子节目指南信息时直接获取即时显示。同时,若已经存在且发生了更新的电子节目指南信息则用新的电子节目指南信息替换旧的电子节目指南信息。
其他的实施例中,在上述各个实施例的基础上,如图3所示,该方法还进一步包括步骤:
S300、根据所述SQLite数据库的分类检索功能,找出所述SQLite数据库中的某一类电子节目指南信息,并按照时间先后顺序对该类电子节目指南信息进行排序。
在将电子节目指南信息写入SQLite数据库后,利用SQLite数据库的分类检索功能,找出SQLite数据库中的某一类电子节目指南信息。如调用SQLite数据库的接口,找出SQLite数据库中科幻/荒诞/恐怖类、喜剧类、新闻时事类、比赛/智力测验/竞赛类等节目类型中的某一类的所有节目,并且将所有节目按照时间的先后顺序排序。
上述各个实施例提供的方法,通过在机顶盒中加载SQLite数据库,使数据(如:节目及节目信息)组织更简单;数据存储更方便;数据检索更快捷;数据管理实现模块化;与主流嵌入式技术实现无缝结合;可以开展机顶盒其他扩展业务;私有数据存储方便;提高了用户体验。
本发明实施例还提供一种机顶盒,所述机顶盒中加载有SQLite数据库,如图4所示,该机顶盒包括:
检索获取单元410,用于在播放节目时,以即将播放的节目的唯一编号为索引检索所述SQLite数据库,并获取所述节目的节目信息;
预处理单元420,用于将所述节目信息进行播放前的预处理;
播放单元430,用于播放所述经过节目信息预处理后的节目。
其他的实施例中,在上述实施例提供的机顶盒的基础上,如图5所示,进一步的,该机顶盒还包括:
命令接受单元440,用于接受用户的对类型进行选择的输入命令;
信息获取单元450,用于根据所述输入命令选择类型为索引检索所述SQLite数据库,从所述SQLite数据库中获取所述类型的节目的信息;
信息显示单元460,用于显示所述类型的节目的信息,以供用户选择。
其他的实施例中,在上述各个实施例提供的机顶盒的基础上,如图5所示,进一步的,该机顶盒还包括:
参数写入单元470,用于接收输入的改变参数的命令,改变所述参数,并将改变后的参数信息修改后写入所述SQLite数据库中保存。
其他的实施例中,在上述各个实施例提供的机顶盒的基础上,如图5所示,进一步的,该机顶盒还包括:
搜索节目信息写入单元480,用于在搜索节目时,将搜索到的节目的信息写入所述SQLite数据库中进行保存,以及在搜索电子节目指南时,将所述搜索到的电子节目指南保存到所述SQLite数据库中。
其他的实施例中,在上述各个实施例提供的机顶盒的基础上,如图5所示,进一步的,该机顶盒还包括:
电子节目指南分类单元490,用于根据所述SQLite数据库的分类检索功能,找出所述SQLite数据库中的某一类电子节目指南信息,并按照时间先后顺序对该类电子节目指南信息进行排序。
上述各个实施例提供的机顶盒,通过在机顶盒中加载SQLite数据库,使数据(如:节目及节目信息)组织更简单;数据存储更方便;数据检索更快捷;数据管理实现模块化;与主流嵌入式技术实现无缝结合;可以开展机顶盒其他扩展业务;私有数据存储方便;提高了用户体验。
以上上述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。