3.1 字幕数据提取模块
字幕数据提取模块包括两部分:字幕控制信息的提取和字幕数据包的提取。
用户控制模块发送字幕启动请求时,提取模块就启动SI 引擎。首先,启动本节目的PMT 表滤波工作,获取PMT 数据并进行分析。若当前节目没有字幕信息,则发送无字幕消息至用户模块;若当前节目带有字幕信息,则根据PMT 中的私有数据段和字幕描述符,获取字幕数据对应的PID、字幕的语言代码、字幕类型、合成页及可选的辅助页,并存放到字幕索引信息表中。其次,根据字幕索引信息表启动字幕有效数据的PES 滤波,提取对应字幕数据包。字幕数据提取总体流程如图3 所示。
图3 字幕数据提取流程
当获得字幕的PID 及其它信息后,则按字幕语言的不同,把当前节目所携带的所有语言的字幕列表,供用户选择。当用户选择完一个条目后,可利用该条目相应的控制信息获取字幕PES 包,把字幕PID,合成页id 和辅助页id 注册进滤波通道,并启动滤波器。
此时,若滤波器接收到相匹配的数据,则会产生相应的中断,通知上层进程读取数据;当获取一个完整的PES 包后,就传送给字幕解码器进行解码显示。
3.2 字幕数据解码模块
字幕数据解码模块负责对字幕PES 包进行解码。
字幕PES 包解码流程如图4 所示。
图4 字幕PES 包解析流程。
字幕解码主要是对PES 包进行分析,包括PES包头的检测,PES 包头信息的提取和字幕段的分析。
滤波得到一个PES 包后,首先判断包头是否合法,包括判断前四个字节是否为0×000001BD 和PES包长度是否合法。
PES 包头信息提取包括提取PTS、PES 包头长度等。PTS 是该分组中承载的所要显示的数据的显示时间。根据包头长度可以定位到PES 的负载位置,进而分析PES 包的负载。
分析PES 包的负载,首先判断前两个字节(定义字节和字幕流id)是否分别为0×20、0×00.若都符合,则可以确定这个包就是所要的封装有字幕数据的PES 包。然后进入字幕段分析,字幕字段的内容有四种情况。先找到同步头字节0×0f,再往后分析8bit 的段类型(segment_type),通过判断该字节值来确定data_field()携带的是哪种类型的数据。当segment_type为0×10 时[3],该段为页分段;当segment_type 为0×11时,则该段为区域分段;当segment_byte 为0×12 时,该段为CLUT 分段;当segment_byte 为0×13 时,该段为对象数据分段。最后,根据不同的类型调用不同的函数对各种类型的分段进行下一步的分析。
在页分段的解析中找到该页的页id、显示终止时间、显示状态、该页由几个区域组成、每个区域的区域 id 和每个区域的水平垂直坐标,并把这些数据存储起来。然后,根据从页分段中获取的区域的id 找到相应的区域分段,获取该区域的宽高、像素深度、该区域填充的颜色、颜色表id(CLUT_id)、区域的数据对象个数、每个数据对象编号(object_id),并存储这些数据。
最后,通过CLUT_id 找到颜色表,得到颜色的Y、Cr、Cb、T 值。通过object_id 找到对象数据的内容,包括编码方式及编码数据。用相应的解码方式把这些相关的编码数据解码出来,并放入缓冲区。其中,在页分析时,当解析出的该页的显示终止时间已经过了,则并不需要分析该页,把跟与该页相关的数据缓冲区进行清空操作。
由于一个PES 包可能包含多个字幕段(subtitling_segment),因此必须循环分析到最后一个字幕段。对每个字幕段分析完后,都要判断下一个字节是下一个字幕段的同步头(0×0f)还是字幕数据结束标志(0×ff)。若是下一个字幕段的同步头则继续分析,若是数据结束标志则代表该PES 包携带的负载分析完毕。最后,把得到的数据存放到显示缓冲区,通过分析得到的PTS 创建一个定时时间,当时间到的时候从缓冲区中把数据读出,并调用OSD 层驱动显示数据。
在该解码中,对于合成页(composition_page_id)的处理分为两种,这是因为同一个PID 可能传送不同语言的字幕流,即语言不同的多个信息共享同一个PID流,所以在处理的时候可以把合成页设置为滤波器的深度。当一路数据流进来的时候,对符合该PID 的PES 包中对应的页ID 进行判断,与页ID 相同的就提取,不同的就丢弃,这是其中的一种解析提取方式。另一种方式是采用多种语言共用的PID 值去设置滤波器,把与该PID 值符合的字幕流提取出来,送去PES包解析。经过PES 解析出该页ID,这时再判断该页ID是否与在PMT 表解析得到的页ID 一样。如果一样的话,说明正是要找的包,反之则说明是一个无效的PES 包,则丢弃该包。
关键字:数字机顶盒 字幕解码 显示系统
编辑:神话 引用地址:数字机顶盒字幕解码显示系统设计
推荐阅读最新更新时间:2023-10-12 20:41
交互式数字机顶盒的设计
机顶盒的功能要求
机顶盒是一个十分笼统的名称。各种机顶盒的功能和结构相差甚多。早期并且得到较广应用的机顶盒可能要数WebTV了。WebTV的最初目的是利用电视机来访问Internet的网站。典型的WebTV内部包含一个33.6K或56K
bps的Modem,通过电话线路上网,电视机被用作显示设备。这类WebTV配备有与PC机上类似的浏览器软件,用户可操纵遥控鼠标、红外键盘等装置浏览网页,或收发e-mail。这类WebTV虽然也可收看Web上的影视内容,但电视和Internet的通路是分开的。这类WebTV在访问Internet方面是数字的,但是数据传输速率低,而在电视方面,则仍是模拟、单向的(广播方式)。
随着
[应用]
一种单线串接通信的LED显示系统设计
1 引言
目前国内外大多数大型LED 显示系统基本由LED 控制板和若干个依次串接的LED 单元板组成。
LED 控制板与LED 单元板构成的LED 显示系统的主体,如图1 所示。其中,LED 单元板包括了增强信号驱动能力的BUFFER 电路、产生动态显示扫描时序的译码电路、若干个开关管和若干个LED 驱动电路。其通信过程为:LED 控制板发出的通信信号依次经过各串接的LED 单元板的BUFFER 电路进行驱动增强;各LED 单元板中经BUFFER 电路增强后的扫描信号(SCANO)提供给本LED 单元板的译码电路,译码电路译码产生动态显示扫描时序控制开关管;各LED 单元板中经BUFFER 电路增强后
[电源管理]
基于AT89S52的温度显示报警系统
引言
温度是一种最基本的环境参数,人们的生活环境与温度息息相关,温度测量也被人们所异常关注。因此,研究温度的测量方法和装置具有重要意义,温度测控技术也在各个领域应用越来越广泛。采用单片机对温度进行控制,不仅具有控制方便和组态简单的优点,而且可以提高被控温度的技术指标。本文介绍了一款由单片机AT89S52 和新型的智能集成温度传感器DS18B20 以及LCD 显示器等部件实现的温度测量及报警系统。同时在设计方面做了功能的扩展,键盘是用来调时和温度查询,功能较强,可以设置上下限报警温度,且测量准确、误差小。单片机可把由DS18B20、DS1302 读来的数据利用软件来进行处理,从而把数据传输到显示模块,实现温度、日历的显示,
[工业控制]
下一代谷歌眼镜细节曝光:采用双目显示系统(图)
这份申请文件题为“谷歌眼镜项目第二部分”
新一代谷歌眼镜将采用双目显示技术
新浪科技讯 北京时间2月25日上午消息,美国专利商标局近日公布了谷歌提交的一份专利申请文件,里面透露了下一代谷歌眼镜的开发细节。
这份申请文件题为“谷歌眼镜项目第二部分”(Google Project Glass Part 2),序列号为206338,提交的时间为2011年第三季度,它表明新一代谷歌眼镜将采用双目显示技术。该项目正由谷歌联合创始人塞吉·布林(Sergey Brin)领导实施。
双目HUD(抬头式显示系统)将提供优于第一代谷歌眼镜的增强现实体验。谷歌最新专利申请对下一代谷歌眼镜的工程技术做出了非常深入且
[手机便携]
基于SOPC的雷达采集和图像显示系统
1前言 雷达数据采集及图像显示是雷达的一个基本应用,普遍应用于军事、气象预测、环境监测、船舶导航等领域。雷达数据具有实时性、高速性的特点。一般说来,对雷达信号采样的时钟频率在100MHz以上,雷达数据采集和处理单元的数据吞吐量要求在Gbits/s以上。因此,要实现一个雷达数据采集和图像显示系统,对处理器的处理速度要求很高。传统的雷达数据采集和图像显示系统采用的是微处理器+FPGA(或DSP)方案,利用微处理器实现操作系统、雷达GUI和显示器控制,利用FPGA(或DSP)实现高速雷达数据采集和处理,这种方案的缺点是要想实现雷达图像在800*600以上分辨率的大屏幕显示比较困难,要么有较高的处理器速度,要么有独立显卡的支持,这
[电源管理]
基于DS12C887的日历时钟显示系统设计
在银行或者其他的公共场合中,经常会看到显示实时信息的显示屏,其中包括年、月、日、星期、时间等,本例子的功能是在51单片机系统中设置、获取、记录实时的日历时钟信息并通过数码管显示,选用日历时钟芯片DS12C887作为实时时钟芯片,为系统提供详细的时间信息,次款芯片内部有锂电池,可以带掉电的情况下保存10年以上。
主要器件:
1、 AT89C52单片机芯片,用于对时钟芯片的控制和初始化,并控制数码管显示。
2、 日历时钟芯片DS12C887。
试验流程图;
试验电路图:
试验程序代码:
//CalendarClk.h程序
[单片机]
基于BIS-6530LC系统的LED信息显示屏技术方案
广交会 LED显示屏 成为09琶洲馆的一大亮点,LED显示屏主要承担信息引导任务,安装在大厅以及重要场所的出入口,可以播放道路引导、信息通知以及宣传广告。在广交会期间,面对纷繁复杂的展馆摊位设置,来自全球200多个国家和地区的观众都是通过这些 显示屏 幕了解详细的展馆分布、道路引导,因此任何故障都将严重影响广交会的现场秩序,如果没有一套强大的控制系统是无法满足广交会严格的信息播放系统要求。
系统要求
1、 支持多种形式的播放内容:文本、图像、视频等多种媒体形式;
2、 易整合、易维护,支持与多种终端设备相连,同时确保简单的工作人员不经过技能培训也能进行日常维护;
3、 性能稳定、可靠
[电源管理]
STC89C52单片机对数字温度计显示系统的设计
机测量和控制技术在经济迅速发展的今天,已被广泛应用于人类生活中,如工业控制、自动检测、智能仪器仪表、家用电器、等各个方面。而主控制器是每个控制系统不可或缺的部分,正因为单片机有体积小,重量轻,抗干扰能力强,环境要求不高,价格低廉,可靠性高,灵活性好,开发较为容易等优点,所以它是很多设计人员的首选控制器。而在人们的日常生活或工业生产中,经常要对温度进行检测及控制。在许多场合器材设备对温度的要求非常高,而传统的温度计反应速度慢、读数麻烦、测量精度不高、误差大,所以需要设计一种高精度的温度计。为了在很大程度上提高对温度的控制水平,因此以单片机为核心的温度采集与控制系统很有用研发和应用意义。本文研究了一个可以实时存储和显示当前的温度数据,
[单片机]