一种PVR数字电视机顶盒的设计

发布时间:2010-11-14 阅读量:2070 来源: 发布人:

【中心议题】
    * 提出了一种
PVR数字电视机顶盒
    * 给出了具体设计方案
【解决方案】

    * 接收的数据在硬盘中是以PES数据包的格式存储
    * 对音视频数据流进行解析,在它们被存入到硬盘的过程中记录其中I帧的位置,形成索引文件

1 PVR
数字电视机顶盒简介

PVR(Personal Video Recorder)功能因其实用和内置硬盘存储量大的特点而成为数字电视机顶盒的重要扩展功能。它能有效提高产品的市场竞争力,是数字电视机顶盒一个重要的发展方向。在当前网络电视快速发展的情况下,PVR数字电视机顶盒增强了电视的吸引力,因此受到广电服务提供商的青睐。随着硬盘价格的不断走低,拥有该功能的产品不会明显增加消费者的经济压力,具有普及推广的潜力。

2 PVR数字电视机顶盒实现原理

音视频数据及数字信号首先经过MPEG-2编码器进行数据压缩形成基本码流ES(Elementary Stream),再经打包后形成有包头的基本码流PES。不同音视频信号的PES流被送入传输复用器进行系统复用,形成传输流(TS)。TS结构如图1所示。

图1

传输流中包括多个节目源的不同信号。为了区分这些不同的音视频信号,在系统复用时加入服务信息SI以使接收端可以识别不同的节目。DVB标准定义的部分服务信息如表1所示。

表1

当接收机要接收某个指定节目时,它首先从节目关联表中取得这个节目PMT的PID值,然后从TS流中找出与PID值相对应的PMT,从中获得构成这个节目的基本码流的PID值,根据这个PID值滤出相应的视频、音频和数据等基本码流,解码后复原为原始信号。PVR功能只是在滤出相应的基本码流后不进行解码,而直接将它们存储在硬盘当中。

在机顶盒只有一个高频头的情况下,只能对同一个TS流里的节目进行边看边录的操作。在没有收看电视节目时可以对任一节目进行录制,而在收看节目时只能录制与该节目在同一频点的其他节目。定义两个函数,RECORDING1(见图2)用于普通存储,RECORDING2(见图3)用于时移播放。时移播放是在硬盘中开设足够的缓存区,一旦在收看电视节目时按下了暂停键,立即进行录制,等录制后按下播放键,即从暂停处开始播放,就像发生了时移一样。两个函数的区别在于,前者记录的数据在播放后仍需保存,而后者在播放后实时删除。

图2

3 PVR数字电视机顶盒文件系统

PVR机顶盒接收的数据在硬盘中是以PES数据包的格式存储的。

采用SATA硬盘,其数据传输率可达150 Mbyte/s。将磁盘分成C,D两个区,C区12 Gbyte,其余分配给D区。均采用EXT2文件格式。每个格式化后的扇区可容512 byte数据。因为硬盘数据的存放一般都以磁盘块(扇区大小的整数倍)为单位,为了减少寻道延迟和旋转延迟从而导致文件读写速度变慢,应该将PVR机顶盒磁盘块设置得相对大些,以使有限的嵌入式系统内存能够全部存放文件分配表从而加快读写速度。设置磁盘块大小为16 kbyte。

每个节目流都有一个信息文件、索引文件和数据文件。其中,数据文件记录码流,分为常规文件和时移文件。RECORDING1()使用常规文件,存于/convention目录。该文件建立时有一定的初始大小,其长度随着记录时间的增加而增加,直到节目录制完成或硬盘没有空间为止。RECORDING2()使用时移文件,存于/shift目录。该文件也需要建立索引,有一个读指针和一个写指针,初始时两个指针均指向时移文件开始处。RECORDING2()录像的目的是使节目在硬盘上缓存一定的时间,用于观众收看节目时临时按下的暂停命令。当选择暂停时,画面静止,而写指针会立即向后移动并开始录制。当恢复收看时,读指针开始从暂停处向后移动并解析和播放,播放过的数据随后删除。若指针到达文件结尾则跳转到文件头部重新记录或播放。时移播放示意图见图4。当观众恢复播放后又进行了变换频道操作,则将先前时移录制的文件删除,读写指针归置初始处。

图4

4 PVR数字电视机顶盒特技播放的实现

对音视频数据流进行解析,在它们被存入到硬盘的过程中记录其中I帧的位置,形成索引文件。在播放时按播放速度的要求,按索引文件读出所需I帧数据送给解码单元解码播放,这样就可以实现快进、快退的特技播放效果了。根据MPEG-2语法,在图像代码中指明了帧类型,二进制001代表I帧,010代表P帧,011代表B帧。这样就可以根据这些帧标识判断帧类型并记录I帧的位置,从而进行相应的特技播放。特技播放部分C代码如下:

代码段

代码段

在慢放过程中,对同一帧进行两次重现。为了避免产生尖锐或拖沓的声音,在各种特技播放的过程中不对音频进行解码。

5小结

笔者从MPEG-2标准入手进行分析,找到了PVR功能的实现方法。对磁盘进行分区并建立文件系统,定义不同函数实现了普通录制和时移播放,并基于索引文件和重放技巧实现了特技播放。可在存储的音视频文件的组织方面做进一步研究和改进,以便提高硬盘读写速度和利用率。

相关资讯
无线领夹麦越做越小,晶体谐振器怎么选?

短视频、直播、采访等应用的普及,推动无线领夹麦不断向更小、更轻、更便携的方向演进。然而,体积缩小的同时,内部仍需集成无线音频SoC、电源、电池、拾音等多个模块,这对晶体谐振器的尺寸、频率精度和稳定性提出了更高要求。作为蓝牙音频SoC和无线收发芯片的参考频率源,晶体谐振器是无线通信系统中不可或缺的基础器件,其选型直接关系到领夹麦的通信质量与整机可靠性。

当无人机飞得更远、传得更快,TCXO为什么要看相位噪声?

随着无人机在物流配送、巡检测绘、农业植保和应急救援等领域的广泛应用,其机载系统正集成越来越多的通信、导航、图传与智能计算功能。在这一过程中,GNSS、无线通信和PLL频率合成等关键链路对参考时钟的要求持续提升——不仅需要频率精准,更对相位噪声、温度稳定性和小型化提出了更高要求。相位噪声作为衡量时钟信号频谱纯净度的重要指标,正逐渐成为无人机时钟选型中不可忽视的一环。YSO510TP系列TCXO正是面向这一趋势,兼顾低相噪、高稳定性与小型化封装,为无人机射频链路提供更干净的参考时钟。

MYD-LR3576 Android V2.0.1 发布:Android 15 + Linux 6.1.118

米尔电子 MYD-LR3576 Android V2.0.1 现已正式发布。继 V1.0.0 版本支持 Android 14 后,本次发布将系统升级至 Android 15,并围绕系统基线、板级功能和使用体验进行三重升级。新版本针对 MYD-LR3576 硬件完成整机适配与验证,提供更新、更完整、更易部署的 Android 开发基线。

面向电力终端的嵌入式平台:安全启动、A/B OTA 与国产化能力解析

馈线终端(FTU)挂在10kV线路上无人值守,站所终端(DTU)部署在开闭所、环网柜承担配网开关监控与故障处理,电力监控装置在变电站持续运行。设备投运之后,软件迭代、故障修复和安全防护并不会随交付结束。

MYC-JS8MPQ 核心板及开发板发布:搭载 i.MX8M Plus,2.3 TOPS NPU 赋能边缘 AI

i.MX 8M Plus 是 NXP 首款集成专用 NPU 的应用处理器,采用 14nm FinFET 工艺,4×Cortex-A53@1.8GHz + Cortex-M7@800MHz 异构多核架构,内置 2.3 TOPS NPU,自发布以来在工业自动化、边缘 AI 网关、机器视觉等场景广泛落地。 今日正式发布 MYC-JS8MPQ 核心板及开发板——继 MYC-JMX95X(i.MX95)、MYC-JR3576(RK3576)之后,第三款 SMARC 标准核心板。至此,SMARC 产品线已覆盖 NXP i.MX8m Plus、i.MX95 及瑞芯微 RK3576 三大平台,为客户提供从国际大厂到国产平台引脚全兼容的标准化选型方案。