机顶盒平台的字幕数据格式分析和其显示实现.docVIP

机顶盒平台的字幕数据格式分析和其显示实现.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
机顶盒平台的字幕数据格式分析及其显示实现 1 引言 随着数字电视的蓬勃发展,数字电视已逐渐进入千家万户,除了传统的电视节目外,通过利用先进的数字电视技术为广大用户提供更多的信息服务,是广播电视事业发展的必然趋势。字幕(subtitle)作为一种简便而直观的信息提供途径,其重要性主要体现在两个方面。一是字幕可以为听力有障碍的人提供另一个语音信息途径;二是字幕功能可以通过简单的后期制作(如多语言显示),配合电视节目的全球化推广提供便捷的平台。DVB 作为全球应用最广泛的数字电视传输标准,也为多种语言的字幕提供了相应的规范,从而使字幕成为不同国家和地区电视节目交流的良好载体。   2 DVB 数字电视字幕规范 2.1 字幕控制信息规范 控制信息的规范主要包括有效数据的加载和提取索引信息的存放两个方面。DVB 中规定,字幕信息要以节目的私有数据包形式复用到节目的基本流中,与音视频数据加载形式类似。提取索引信息则是利用DVB 中的描述符(descriptor)语法插入到节目映射表(PMT)的私有数据段中。 流类型为0×06 的私有数据段,承载本节目私有数据提取的相关信息:私有数据包的PID 及其描述符。字幕描述符的标签值(descriptor_tag)为0×59,语法如下:    分析字幕描述子可得出该字幕的语言代码(ISO639_language_code)、字幕类型、合成页及可选的辅助页。这些信息在字幕数据的提取中将作为数据提取的索引信息。 2.2 字幕数据编码规范 字幕显示在终端是以页的形式显示出来,每一页又分成多个区域,每一个区域里又关联着多个图形对象和区域的颜色。因此,字幕数据编码是根据这些需求来定义的。字幕数据承载在PES 包的负载中,结构如图1 所示。 图1 字幕数据的数据结构   分析字幕的数据结构可知,前两个字节是字幕数据的确定信息,包括一个数据定义字节(该字段定义该数据流为DVB 字幕,其值为0×20)和一个字节的字幕流识别id(其值为0×00);最后一个字节为字幕数据结束标志(其值为0×ff)。中间填充的数据则是字幕段数据。在字幕段数据中前6 个??节为字幕段的头信息,包括1 个同步字节(其值为0×0f)、1 个类型字节(用来确定data_field()里携带的是哪种类型的数据分段)、2 个字节的页ID (用来唯一标志一个字幕段)以及2 个字节的段长度标识(标识其后面携带负载的大小)。 字幕段类型主要有以下四种: 页分段(page composition)。通过页id(page_id)定义了该页显示终止时间、页的状态、该页中区域数、各区域号、各区域的水平及垂直位置。 区域分段(region composition)。用于定义该区域的宽高、水平垂直位置、所使用的CLUT 表的CLUT_id值、对象的id、区域背景色以及像素深度等信息。 CLUT 分段(CLUT definition)。用于定义颜色,以便把传输的虚颜色转换成实际色板中的颜色。 对象数据分段(object data)。用于定义对象的编码方法和编码数据。编码方法包括像素编码和字符编码。每一个对象可以看作是一个可显示的图像单元。 每一页数据的完整显示都至少需要这四个数据分段,所以在解析字幕流时,需要利用各种结构体及链表对这几个数据段数据进行解析并存储。   3 机顶盒字幕解码显示系统设计 在STB 上实现字幕接收和显示主要包括四大模块:数据提取模块、数据解码模块、图层显示模块和用户控制模块。各模块关系如图2 所示。 图中,用户控制模块用于响应用户按键,并发送消息控制其它各模块;数据提取模块根据接收控制模块发来的滤波启动、停止或提取字幕数据等控制消息,并完成数据的提取工作;数据解码模块负责对数据提取模块送来的字幕原始数据进行解码,并将解码后的数据送到指定的缓冲区内供图层显示模块调用;图层显示模块用于实现字幕界面的各种OSD 显示操作。 图2 字幕系统模块关系图。 3.1 字幕数据提取模块 字幕数据提取模块包括两部分:字幕控制信息的提取和字幕数据包的提取。 用户控制模块发送字幕启动请求时,提取模块就启动SI 引擎。首先,启动本节目的PMT 表滤波工作,获取PMT 数据并进行分析。若当前节目没有字幕信息,则发送无字幕消息至用户模块;若当前节目带有字幕信息,则根据PMT 中的私有数据段和字幕描述符,获取字幕数据对应的PID、字幕的语言代码、字幕类型、合成页及可选的辅助页,并存放到字幕索引信息表中。其次,根据字幕索引信息表启动字幕有效数据的PES 滤波,提取对应字幕数据包。字幕数据提取总体流程如图3 所示。 图3 字幕数据提

文档评论(0)

ktj823 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档