基于LINUX系统的STB设计

时间:2022-10-06 04:50:56

基于LINUX系统的STB设计

摘 要:机顶盒具备数字电视信号接收及解码输出功能,是数字电视系统关键部件。当前我国尚未研发出技术较为成熟的交互式应用。本文首先对机顶盒软件系统进行简单介绍,之后分别从节目管理模块的开发以及机顶盒应用程序等角度对基于LINUX系统的机顶盒设计方案进行全面解读。

关键词:LINUX系统;机顶盒;数字电视系统;交互式应用

1前言

数字机顶盒包括硬件平台及软件系统两部分,其中硬件部分主要作用是音频及视频解码,软件系统主要用于实现操作界面相关功能、重现电视图像、数据广播业务平台及互联网接入等。数字机顶盒软件系统主要涉及到嵌入式操作系统、软件及硬件抽象层、应用程序等几部分。本文主要是对依托于LINUX(v2.6.21) 操作系统的数字高清解码芯片机顶盒系统软件设计进行分析,从而研发出适合所选的硬件平台特点并且具备基本机顶盒功能的软件系统。

2基于LINUX系统的STB设计方案

2.1机顶盒软件系统

本文所探讨的基于LINUX(v2.6.21) 操作系统的数字高清解码芯片机顶盒系统软件的开发主要涉及到以下几方面内容:

(1)机顶盒底层驱动程序,主要包括前端、USB接口、Enthernet、Flash驱动以及接收遥控信号的相关软件等;(2)机顶盒节目管理模块,该模块的主要作用是保存整机状态信息以及用户个性化设置信息,并对这些信息进行有效管理;保存业务数据信息,并对其进行实时更新及有效管理;除此之外,还负责获取节目数据,并进行相应分析;(3)机顶盒应用程序,主要涉及到设计并显示机顶盒用户界面及选单界面;图形用户界面、选单界面以及用户交互的应用及管理等。基于LINUX操作系统的机顶盒软件系统结构详见图1所示。

2.2节目管理模块

用户应用程序中一个关键部分就是节目操作管理模块,此模块的主要作用是对节目操作管理模块与系统其它模块之间的关系及通信协议进行确定,构建节目数据库。对于数字电视机顶盒软件功能而言,针对节目及频道所进行的全部实质性节目操作是极为关键的一项内容。笔者在此所阐述的机顶盒设计方案中,节目操作功能主要涉及到节目的搜索及选择,提取及保存节目信息,针对节目数据库所进行的相关操作等。本文所探讨的机顶盒相关的界面操作相关功能大多数都与节目数据库存在一定关联。

(1)Builder模块。此模块的主要作用是根据USIF相关指令构建节目数据库,将搜索状态及内容反馈至USIF,以用户实际需求为依据构建频点以及频道信息数据库。Builder模块结构详见图2所示。

Builder模块所支持的搜索方式主要盲扫、网络搜索以及手动搜索等三种,其中,盲扫是以预置频点搜索节目信息为主要依据,对节目数据库进行构建;网络搜索主要是以输入频点为依据,对NIT表进行搜索;以网络信息为依据,对相关节目信息进行搜索,从而构建起较为完整的网络节目信息数据库;手动搜索主要是以输入频点为依据对其进行搜索,从而构建起完整的节目信息数据库。

(2)PSI模块。PSI模块是建立在Demux驱动基础之上的,需要借助Demux模块而获取Section数据搜索功能,其主要作用是向EPG以及Builder等模块提供完整表及条件捕获接口。PSI模块所支持的得到表方式有GetTable以及Capture两种,其中,借助前者所提供的功能接口,可以直接获取表数据返回,假如超出既定时间而未获取表数据,则返回超时;借助后者功能接口,在提出表申请的基础之上,利用异步通信方式获取表结构,并向应用模块发出相应通知。捕获方式具体包括三种模式:Update Mode,即更新模式,在版本更新时向应用模块发出通知;Complete Mode,在获取完整表结构后向应用模块发出通知;Section Mode,在获取Section数据时向应用模块发出通知。

(3)DBaseMgr模块。此模块是数据库管理系统,主要负责保存及管理频道、频点、系统信息以及EPG等相关信息;添加、删除、编辑、排序以及查找节目频点等。此模块与Builder 、EPG、USIF、Player等模块之间进行交互。为确保数据元素操作效率,防止大量内存碎片的出现,同时也是出于操作便利性的考虑,采用静动结合的设计思路,在数据结构上选择静态双向链表式。

数据库管理系统在功能方面具有以下特点:第一,功能较为完善,包括创建、管理及删除数据库等;可以支持多用户操作,系统是建立在Linux 这一多用户分时操作系统基础之上的,可以确保多个用户在同一时间的操作需求得到有效满足;最后,拥有完整的数据。系统属于嵌入式系统,所以模块需要确保数据库数据在掉电情况下的完整性。

2.3机顶盒应用程序

机顶盒应用程序的主要作用是显示用户交互选单,所以,在对机顶盒应用程序开发方面选择MiniGUI开源软件。MiniGUI开源软件是嵌入式Linux系统下的轻量级图形用户界面支持系统,在实践中的应用极为广泛,相比较于其他嵌入式GUI而言,该系统最大的优势在于所占用的系统资源有限,可以根据用户实际需求进行灵活配置;稳定性强,并且具备可移植性。MiniGUI的软件架构较为优越,其上层与下层操作系统之间由抽象层IAL以及GAL进行隔离。通常情况下,基于MiniGUI的应用程序功能的实现需要依托于支持库、操作系统、驱动程序接口以及MiniGUI 自身提供的API。以MiniGUI为基础所开发的UI模块详见图3所示。

3结语

综上所述,本文首先对机顶盒软件系统进行简单介绍,之后分别从节目管理模块的开发以及机顶盒应用程序等角度对基于LINUX系统的机顶盒设计方案进行全面解读。本文主要从Linux 操作系统移植、驱动程序、MiniGUI 库移植以及上层应用程序等角度对基于LINUX系统的STB设计方案进行介绍和分析。机顶盒硬件平台与软件系统是机顶盒系统的两大主要内容,经过实验测试,结果证实本系统设计方案的合理性。在系统功能方面,主要是对DVB-C标准特点进行考虑,不仅如此,在系统软件方面也对DVB-C PSI极为关注。本软件在功能方面,不但能够实现基本的解调、信道解码以及音频视频解码输出;而且可以根据用户的具体需求提供选单式交互操作模式,便于用户搜索节目、设置系统并对用户设置进行保存,查看节目信息以及电子节目指南等。目前用户对高清数字电视机顶盒的大部分要求均可以得到满足。作为一个彩电大国,中国的机顶盒的普及率还十分有限,所以,对基于Linux 操作系统的机顶盒系统进行深入分析和探讨具有重大的现实意义。

参考文献

[1] 李哲.基于Linux与DSP技术的音视频网络传输及编解码技术研究[D]. 中国地质大学(北京) 2006

[2] 程建伟.基于STi7109的IPTV机顶盒播放器的设计与实现[D]. 北京邮电大学 2010

[3] 王蕾,朴希望,李世群,陈蕾.嵌入式实时操作系统的时间性能测试[J]. 内蒙古大学学报(自然科学版). 2011(05)

[4] 方德葵主编,王明臣,姜秀华,张永辉编著.数字电视与高清晰度电视[M]. 中国广播电视出版社, 2005

[5] 易志栋.基于XScale和Linux的嵌入式IPv6 VOD终端设计与实现[D]. 吉林大学 2006

上一篇:关于铁路职工教育培训工作的思考 下一篇:基督教在广西农村的传播、发展与影响