家电维修班,手机维修班,电脑维修班,电工班,焊工班,液晶电视维修班,电动工具维修班、电动车摩托车维修班、网络营销培训、网站设计培训、淘宝培训---全国招生 家电维修班,手机维修班,电脑维修班,电工班,焊工班,液晶电视维修班,电动工具维修班、电动车摩托车维修班、网络营销培训、网站设计培训、淘宝培训---全国招生

基于地面高清机顶盒的 PVR 系统设计与开发

基于地面高清机顶盒的 PVR 系统设计与开发

1引言
2006 年8 月18 日,国家标准化管理委员会正式发布了我国具有自主知识产权的《数字电视地面广播传输系统帧结构、信道编码和调制》标准(简称“中国数字电视地面传输标准”)。该标准支持高清晰度电视(HDTV)、标准清晰度电视(SDTV)和多媒体数据广播(MMDB)等多种业务,满足大范围固定覆盖和移动接收的需要。地面高清数字广播系统于2008 年7 月投入使用,已成功进行了北京奥运会的全程直播,并将直播2010 年上海世博会。针对地面高清市场的各类产品及技术应运而生,而PVR 功能则是相关产品技术中的难点和亮点。

PVR 的全称是Personal Video Recorder(个人视频录像机),但其实际功能超出了名称的表述。PVR 的突出特点是以硬盘为存储媒介,建立本地的海量缓冲区和节目存储库,利用数字化处理技术,实现对节目的控制和管理。数字化和存储技术是PVR 技术的核心,PVR 技术和数字机顶盒结合而产生的PVR 机顶盒,将两种先进技术相结合,将电视生活向前推进了一步。PVR 数字机顶盒应用于数字电视系统,相对于模拟PVR,它把数字化放在前端,而不是在机顶盒客户端上来进行数字编码,使得节目更清晰、终端成本更低、节目控制更方便。.PVR 机顶盒把硬盘录放技术和电子节目指南(Electronic Program Guide,EPG)相结合,将节目的内容和节目的信息相关联,方便节目的查询和管理,亦可根据节目单进行预约录像,操作简单方便。PVR 技术和
数字机顶盒的结合是电视节目播放技术发展的必然趋势。

本文研究在嵌入式系统下 ADTB-T 高清电视信号以及标清电视信号的PVR 功能的实现。论文主要针对高清电视信号特有的高码率TS 流传输和处理与嵌入式系统的相对紧张的系统资源这一矛盾进行研究,过软硬件的配合实现PVR 的各项基本功能,并在此基础上,通过缓存技术,实现录制与播放的无缝连接,同时充分利用ADBT-T 信号提供的EPG 信息,方便用户预约录制,并提供人性化的界面设计,提高用户友好度。1 硬件架构本系统基于 Sigma Designs 公司的EM8622 平台进行开发,使用主频为202MHz 的ARM7 中央处理器、128MBDDR 内存、以及8MB FLAsH 芯片,配合上海高清HD2910 国际融合芯片,可以支持地面高清数字信号以及标清模拟信号的兼容播放与无损录制,同时配合时钟板和地面广播信号配套EPG,可以实现电视节目的定时录制、自动开机预约录制以及断电续录功能。硬件框架图如下图1 所示:

如图,射频信号由天线接收后送至HD2910TUNER(调谐器)板解调为MPEG2格式的TS(Transport Stream)流,经RISC架构的2D图形引擎处理后传输至DEMUX(解复用)芯片,经解复用后分为APES流(打包的音频基本码流)和VPES流(打包的视频基本码流)。此时根据录制模式的不同,数据的走向也不同,具体分类如下
(1)只播模式:通道1开,通道2、通道3关。APES/VPES流输送到DECODER(解码芯片)解码后生成音/视频数据,分别进行音/视频输出。
(2)只录模式:通道2开,通道1、通道3关。为了保证录制文件码率的稳定,将APES/VPES流经过PCI总线送至系统缓存,缓冲3至5s后再经PCI总线分别保存为音/视频硬盘文件。
(3)边播边录模式:通道1、通道2开,通道3关。打开通道1,APES/VPES流经DECODER解码后输出至音/视频终端,同时打开通道2,将PES流数据经系统缓存后保存至硬盘。
(4)录像播放模式:通道3开,通道1、通道2关。打开硬盘音视频文件,将数据送到系统缓存,然后经过音视频同步处理后再传输到DECODER, 后进行相应的音/视频输出。
(5)时移播放模式:通道2、通道3开,通道1关。时移播放即指通过硬盘的缓存能力,用户可以像操作本地文件一样暂停当前播放的电视节目,过任意时间后继续播放,或者随时回放已播精彩镜头。在这种模式下,系统先将APES/VPES流经系统缓存后保存为硬盘音/视频文件,然后根据用户需要可以随时将硬盘文件音/视频解码并输出。
(6)预约录制模式:与边播边录模式类似,不同之处在于利用EPG和时钟板定时唤醒系统进行节目的录制。

2 软件结构
本系统采用sigma Designs公司提供的配套软件开发包(SDK),主要分为两个部分:Armutils开发包与EM8623L开发包。
Armutils开发包主要包含uClinux内核、文件系统、编译工具、编译环境等与ARM芯片相关的软件。使用Armutils开发包来生成PVR机顶盒的运行内核,以及机顶盒应用程序的编译与调试环境。
EM8620L开发包主要包含Envision EM8623L开发板的相关驱动,启动引导程序(Boot Loader),以及名为DCC(Decoding Chain Control)的用户接口,用户程序可通过DCC库的调用实现对底层硬件的访问,PVR机顶盒应用程序的开发都是基于这些接口与驱动之上的。图2简单描述了解决方案提出的软件开发层次结构。

3 关键实现技术
3.1 音、视频同步技术
电视信号录制产生的音、视频数据各自以PES包的形式存储在硬盘上,当它们被读出并且被解码播放时,随之就会产生音频和视频之间的同步问题。
数字电视广播的MPEG-2数字码流中包括两种时间信息:用于机顶盒本地系统时钟与广播系统前端时钟同步的节目时钟参考(Program Clock Reference,PCR),位于TS包的首部;以及用于音视频同步的展现时间戳/解码时间戳(Presentation Time stamp/Decoding Timestamp,PTS/DTS),位于PES包的首部。在本PVR系统中,由于音、视频数据是以PES包的格式被存储到硬盘的,所以PCR并没有被存储;而另外一方面,在播放已录节目时,音、视频数据是实时从硬盘中读出的,读取数据和播放数据都同属于PVR系统内部的操作,所以并不存在系统间时钟同步的问题,因此,在PVR系统的回放操作中不用考虑PCR。所以在录像回放过程中,只能利用PTS/DTS来维持音频与视频的同步。播放录像时,帧速率(FrameRate)决定了视频数据的解码速率,所以可以将视频PTS作为基准,将音频PTS与之相比较,以此调整音频解码的速率,从而达到使音频与视频同步的目的,具体采用的方法如下:
(1)视频数据被传送到解码单元的视频缓冲区的过程中,对它进行解析,记录其中的PTS,并构建视频PTS表;
(2)对于音频数据,也同样构建音频PTS表;
(3)在解码过程中将视频PTS作为基准,修正解码单元中由系统时钟驱动的SCR(系统时钟参考)计数器的值;
(4)根据音频缓冲区指针的位置,在音频PTS表中查找相应的PTS值,将此值与SCR计数器的值相比较,作为调整音频解码速率的依据,从而控制音频解码器解码动作,实现音频数据跟随视频数据的同步。

3.2 缓存技术
如图2所示,经过前端解调得到的TS流经由2D图像引擎处理后进入DEMUX模块。DEMUX模块是一个集成在主控芯片中的特殊微处理器,主要任务是进行TS流的分析和解复用。由于硬盘的传输速率有限,因此为了减少磁盘读写次数,系统在内存中开辟一块缓冲区用以缓冲音、视频数据,当缓冲区数值达到门限时,将其存储数据写入硬盘。写数据与写硬盘两个操作采用并行的线程来执行,线程间通过信号进行同步。
而在录像文件的回放过程中,从硬盘中读出的音、视频PES文件分别放入音、视频缓冲区中,系统不断检测缓冲区数据大小,如果数据小于门限值,则通知数据传输线程把新数据送入。
录像文件的记录方式包括两种。正常录制的文件大小随着录制时长的增长而增加,直到节目录制完成或者硬盘空间耗尽为止。而在时移录制模式下,录像文件大小固定,它包括了写指针和读指针。在开始时移录制时,写指针开始往后移动,画面静止在开始录制的时刻。当回复收看时,读指针与写指针同步向后移动,写指针在节目结束时停止移动,而读指针自然在与写指针重合时停止移动。需要指出的是,由于时移录制并不以录制文件并回放为目的,所以播放过的节目即被丢弃,因此该文件是一个循环文件,写指针与读指针在到达文件末尾时跳回文件开头。由于硬盘空间所限,循环文件大小即为 大时移录制时长,超过该时长则时移模式失效。
通过缓存技术的使用,系统大幅度减少了硬盘I/O次数,提高了系统效率,同时也达到了保护硬盘的效果。同时,缓存技术和音、视频同步技术相结合,实现了电视节目的回放以及时移播放,真正体现了数字化PVR的强大人机交互功能。
3.3 EPG信息的提取和使用
本系统的EPG通过两种方式获取,其一是在播放节目时按下EPG按键显示的present/following(当前/随后)信息,其二是通过主界面的EPG菜单进入节目指南,显示出频道列表和按照时间排列的各频道节目信息,为用户提供电视节目列表。系统通过Tuner板的解调芯片,从接收的TS流中解析出服务信息(Service information,SI)数据,并在系统缓存中建立SI数据库,用户通过EPG的用户界面(UserInterface,UI)与SI数据库进行交互。EPG的SI以节目为单位,将与每个节目相关的事件都存储在该节目的事件链表上,对于单个频道的事件,其数据结构如下:

如上所示,EPG信息主要包含了每个节目所对应的节目名、开始时间、持续时长以及相邻事件的指针,当然,事件信息还包括它所对应的频道信息三要素(transportid,network id,service id)。
EPG的信息量非常大,并且经常更新,但是由于系统搜索一次EPG信息周期长达8~10s,所以除了开机之后的第一次获取外,当用户按键浏览EPG时,只有当前节目已经过期的情形下,系统才实时地分析获取,并将其缓存至系统内存,其余情形下系统读取缓存数据以大幅度提高响应速度。由于EPG的信息时效性很强,因此在退出系统时无需保存。
用户通过UI来实现与EPG之间的交互,在UI部分,向用户提供了非常友好的EPG菜单界面,实现了节目的按频道分类以及按日期分类,用户通过这些菜单界面,可以方便地浏览节目中近期播放的事件的信息,选择自己喜欢的节目来播放,并且可以设置自动录制指定某个频道的某个时间段的节目。3.4 预录节目管理
前文已经提到了使用EPG信息与时钟板来进行电视节目的预约录制。用户在浏览EPG列表时选中想要录制的节目,按下预约录制按钮,系统自动将预录信息写入配置文件,并存储至硬盘,文件条目格式如下:
其中条目按照开始时间的先后顺序排列,开始时间与结束时间均以BCD码的形式保存以节省存储空间,同时也可以与通用的struct tm格式方便地进行转换。用户可以随时进入预录条目管理界面删除不需要的条目,也可以再次进入EPG界面选择并添加新条目,系统将根据已有条目情况判断是否有时间冲突,若有则无法预录,若无则选择正确的位置插入条目。系统在开机时自动检测硬盘上是否存在配置文件,若存在,则读取文件第一个没有过期的条目,取出节目开始时间,与从时钟板获得的系统当前时间进行循环比较,一旦到点,系统将停止当前音、视频的播放,并且跳转至预约节目的录制。通过配置文件的使用,系统实现了电视节目的一键录制,录制信息,包括节目名、频道名以及录制开始时间,均以文件名的形式记录,方便用户对于录制文件的查找与分类管理。由于配置文件被写入硬盘,所以除了极端特殊情况,比如在写配置文件时意外断电,通常情形下在系统断电后文件仍然存在,从而实现了预录节目的断电续录功能。

4 结束语

本文开发的PVR系统已经产品化,并随着地面高清信号的开播同步大批量投放市场。由于采用成熟的uClinux操作系统、sigma FM8622L芯片组以及配套的SDK进行二次开发,系统表现稳定,在电视信号质量良好的情况下,录像文件码率平稳,播放效果流畅,长时问录制与播放均不会出现死机等系统异常状况,配合液晶高清电视和家庭影院,完全体现了分辨率高达1920×1080的高质量视频以及高保真音频所带来的震撼感受,并且通过优化的UI设计,使得EPG无缝嵌入电视播放流程,用户查看节目指南、录制当前节目以及预录节目均可一键实现,相比PC平台同类型产品而言,具有性价比高、系统稳定、防病毒木马侵袭、以及使用专用音、视频解码芯片,高清解码能力更出色等优点。当前系统仍存在一些缺点,如天线对信号方位敏感,雨雪天气收看效果不佳,以及录制高清信号时由于码率较高,占用大量系统缓存,从而妨碍其他功能(比如BT下载)的并发执行。下一步工作是设法在硬件上提高天线性能,以及优化代码,减少系统开销,确保各项功能并发执行互不影响。

2011-10-13 8:59:36统计:[
技术空间

招生问答

»更多
  • 咨询热线:0731-85579057
  • 咨询热线:13308461099
  • 报名电话:0731-85579057
  • 技术专业

    »更多

    学校图片

    »更多
    点击这里给我发消息
    点击这里给我发消息
    点击这里给我发消息
    阳光电子学校
    电工培训学校 电动车维修学校 摩托车维修学校 摩托车维修培训 手机维修培训 家电维修培训 电脑维修培训 电动工具维修培训 液晶电视维修培训 安防监控培训 空调维修培训 网络营销培训 网站设计培训 淘宝网店培训 电器维修培训 家电维修学校 电工培训 焊工培训 电工学校
    中山市,固原市,银川市,玉树,海东,陇南市,酒泉市,张掖市,天水市,金昌市,兰州市,榆林市,延安市,渭南市,铜川市,阿里,山南,拉萨市,怒江,文山州,楚雄州,普洱市,昭通市,玉溪市,昆明市,毕节,铜仁,遵义市,贵阳市,甘孜州,资阳市,达州市,宜宾市,南充市,遂宁市,绵阳市,泸州市,自贡市,三亚市,崇左市,河池市,玉林市,钦州市,梧州市,柳州市,梅州市,肇庆市,湛江市,佛山市,珠海市,韶关市,湘西州,怀化市,郴州市,张家界市,邵阳市,株洲市,仙桃市,随州市,荆州市,荆门市,襄樊市,黄石市,驻马店市,信阳市,南阳市,漯河市,中卫市,石嘴山市,海西,海南藏州,黄南州,海北,甘南,庆阳市,平凉市,武威市,白银市,嘉峪关市,安康市,汉中市,咸阳市,宝鸡市,林芝,日喀则,昌都,迪庆,德宏,大理,西双版纳,红河州,临沧市,丽江市,保山市,曲靖市,黔东州,黔西州,安顺市,六盘水市,凉山州,阿坝州,雅安市,广安市,眉山市,内江市,广元市,德阳市,攀枝花市,成都市,海口市,来宾市,百色市,贵港市,北海市,桂林市,南宁市,云浮市,揭阳市,潮州市,清远市,阳江市,汕尾市,惠州市,茂名市,江门市,汕头市,深圳市,广州市,娄底市,永州市,益阳市,岳阳市,湘潭市,长沙市,恩施州,黄冈市,孝感市,鄂州市,十堰市,武汉市,周口市,商丘市,三门峡市,许昌市,焦作市,安阳市,鹤壁市,平顶山市,开封市,郑州市,聊城市,滨州市,德州市,莱芜市,日照市,泰安市,烟台市,潍坊市,东营市,淄博市,上饶市,济南市,抚州市,宜春市,赣州市,新余市,九江市,景德镇市,宁德市,南平市,泉州市,莆田市,厦门市,宣城市,亳州市,六安市,宿州市,黄山市,滁州市,安庆市,淮北市,马鞍山市,蚌埠市,芜湖市,合肥市,丽水市,舟山市,衢州市,金华市,湖州市,嘉兴市,宁波市,宿迁市,镇江市,盐城市,连云港市,苏州市,徐州市,南京市,绥化市,牡丹江市,佳木斯市,大庆市,鹤岗市,哈尔滨市,白城市,白山市,辽源市,吉林市,葫芦岛市,铁岭市,盘锦市,阜新市,锦州市,本溪市,鞍山市,沈阳市,锡林郭勒盟,通辽市,乌海市,吕梁市,忻州市,晋中市,晋城市,阳泉市,太原市,廊坊市,承德市,保定市,邯郸市,唐山市,宁夏,甘肃省,西藏,贵州省,重庆市,广西,湖南省,河南省,江西省,安徽省,江苏省,黑龙江省,辽宁省,山西省,天津市,四平市,内蒙古,吴忠市,果洛,西宁市,定西市,商洛市,西安市,那曲,黔南州,巴中市,乐山市,贺州市,防城港市,东莞市,河源市,常德市,衡阳市,咸宁市,宜昌市,濮阳市,新乡市,洛阳市,菏泽市,临沂市,威海市,济宁市,枣庄市,青岛市,吉安市,鹰潭市,萍乡市,南昌市,龙岩市,漳州市,三明市,福州市,池州市,巢湖市,阜阳市,铜陵市,淮南市,台州市,绍兴市,温州市,杭州市,泰州市,扬州市,淮安市,南通市,常州市,无锡市,大兴安岭,黑河市,七台河市,伊春市,双鸭山市,鸡西市,齐齐哈尔市,延边,松原市,通化市,长春市,朝阳市,辽阳市,营口市,丹东市,抚顺市,大连市,阿拉善盟,兴安盟,乌兰察布市,巴彦淖尔市,呼伦贝尔市,鄂尔多斯市,赤峰市,包头市,呼和浩特市,临汾市,运城市,朔州市,长治市,大同市,衡水市,沧州市,张家口市,邢台市,秦皇岛市,石家庄市,青海省,陕西省,云南省,四川省,海南省,广东省,湖北省,山东省,福建省,浙江省,上海市,吉林省,河北省,北京市