专利名称:数字电视接收终端、前端服务器及数据同步方法
技术领域:
本发明涉及数字电视技术领域,特别涉及一种数字电视接收终端、前端服务器及数据同步方法。
背景技术:
数字电视(DTV =Digital Television)是指采用数字技术将活动图像和声音等信号进行编码、压缩等处理,经存储或实时广播后,供用户接收、播放的电视系统。系统的各个环节,包括从演播室节目制作,到传送、存储/传输,直至接收、显示等过程都采用数字技术。与传统的模拟电视相比,数字电视在图像和声音质量两面都有重大改进。随着数字电视产业的迅猛发展,各地广电广播的数字电视节目来源丰富,对于数字电视节目质量的衡量标准,其中,很引人注目的一点是音视频、字幕及数据的同步问题。 许多工程技术人员为解决这个问题提出了各种解决方案。在现有技术中,音视频、字幕及数据的同步是通过解码时间标签(DTS,Decoding Time Stamp)、显示时间标签(PTS,Presentation Time Stamp)以及节目时钟参考(PCR, program clock reference)来协同完成的。其中,节目时钟参考给出参考时间,音视频、字幕及基本数据流(ES,elementary stream)的解码时间通过解码时间标签来标识,显示时间通过显示时间标签来标识。当出现音视频、字幕及数据不同步时,可以在数字电视前端增加软硬件设施进行调整,也可以在数字电视接收终端通过手动微调解码时间标签和显示时间标签值来进行调整。然而,上述现有技术方案至少具有以下不足(1)用户手动调整,音视频、字幕及数据同步的准确性难以保证;(2)需要用户手动调节,给用户操作带来了不便,会大大影响用户体验;(3)需要前端增加软硬件设施,成本增加。
发明内容
本发明主要解决的技术问题是提供一种数据同步方法,能够自动、准确的调节音视频、字幕及数据同步。为解决上述技术问题,本发明实施例采用的一个技术方案是提供一种数据同步方法,包括以下步骤前端服务器配置同步补偿信息并通过传输流下发到数字电视接收终端;所述数字电视接收终端根据所述同步补偿信息对当前准备播放的节目所包含的音视频、字幕及数据组件的解码时间标签和显示时间标签进行补偿,以获得补偿后的解码时间标签和补偿后的显示时间标签,根据所述补偿后的解码时间标签所标识的时间解码所述音视频、字幕及数据组件,根据所述补偿后的显示时间标签显示所述的解码后的音视频、 字幕及数据组件。
根据本发明一优选实施例,所述同步补偿信息为同步补偿描述符,当所述数字电视业务中音视频、字幕及数据存在不同步时,通过所述同步补偿描述符对所述业务所包含的组件的数据帧的解码时间标签和显示时间标签进行修正。根据本发明一优选实施例,所述同步补偿描述符添加在传输流的网络信息表的第一层循环网络描述中;网络信息表的第二层循环传输流描述中;节目映射表的第一层循环节目描述中;业务群关联表的第二层循环传输流描述中;或业务描述表的第一层循环业务描述中。根据本发明一优选实施例,所述同步补偿描述符包括传输流标识符、原始网络标识符、业务标识符、组件数目、组件标签、解码时间标签标志、解码时间标签补偿值、显示时间标签标志、显示时间标签补偿值中的一个或多个。根据本发明一优选实施例,以所述数字电视业务所包含的音视频、字幕及数据中一个组件作为参考组件,其他组件和所述参考组件相比显示时间如果滞后,则将所述组件的解码时间标签和显示时间标签分别减去解码时间标签和显示时间标签的补偿值得到最终的解码时间标签和显示时间标签进行负调整。根据本发明一优选实施例,以所述数字电视业务所包含的音视频、字幕及数据中一个组件作为参考组件,其他组件和所述参考组件相比显示时间如果提前,则将所述组件的解码时间标签和显示时间标签分别加上解码时间标签和显示时间标签的补偿值得到最终的解码时间标签和显示时间标签进行正调整。根据本发明一优选实施例,根据所述同步补偿描述符中解码时间标签标志和显示时间标签标志为‘0’时进行所述的负调整。根据本发明一优选实施例,根据所述同步补偿描述符中解码时间标签标志和显示时间标签标志为‘1’时进行所述的正调整。根据本发明一优选实施例,所述数字电视接收终端在节目搜索过程中获取所述同步补偿信息,包括以下步骤锁频解调,得到基带传输流;解析节目关联表、节目映射表以及业务描述表,获取节目相关信息,解析同步补偿描述符,获取和节目相关的同步补偿信息;保存节目相关信息及同步补偿信息。根据本发明一优选实施例,所述数字电视接收终端在进行节目播放的时候根据节目搜索时获取的同步补偿信息对组件的解码时间标签和显示时间标签进行补偿,包括以下步骤PID过滤,数据接收、缓存;根据同步补偿描述符中解码时间标签补偿值对解码时间标签进行补偿,得修正后的解码时间标签;修正后的解码时间标签和节目时钟参考的基本值相比较;若不相等,则等待一段时间;若相等,则启动当前帧的解码;
根据同步补偿描述符中显示时间标签补偿值对显示时间标签进行补偿,得到修正后的显示时间标签;修正后的显示时间标签和节目时钟参考的基本值相比较;若不相等,则等待一段时间;若相等,则显示输出当前帧,并释放内存空间。为解决上述技术问题,本发明实施例采用的另一个技术方案是提供一种前端服务器,其特征在于,包括配置模块,配置同步补偿信息;添加模块,将所述同步补偿信息添加传输流中;发送模块,向所述数字电视接收终端下发经所述添加模块处理的后的传输流。为解决上述技术问题,本发明实施例采用的另一个技术方案是提供一种数字电视接收终端,其特征在于,包括获取模块,用于从前端服务器获取同步补偿信息;调节模块,对当前准备播放的节目所包含的音视频、字幕及数据组件的解码时间标签和显示时间标签进行补偿;输出模块,根据所述补偿后的显示时间标签显示所述的解码后的音视频、字幕及数据组件。根据本发明一优选实施例,所述获取模块包括接收单元,用于接收前端服务器下发的传输流;解调单元,用于对所述接收单元接收的传输流进行解调,获得基带传输流流;解析单元,用于对所述解调单元得到的基带传输流进行解析,获得节目的基本信息和同步补偿信息。本发明实施例的有益效果是区别于现有技术的情况,本发明公开的数据同步方法和系统不需要用户手动操作就可以实现音视频、字幕及数据的同步,大大提高了用户体验,实用方便。
图1是数字电视接收终端获取同步补偿信息的流程示意图;图2是数字电视接收终端在进行节目播放时的数据同步自动补偿的流程示意图;图3是前端服务器的模块示意图;图4是数字电视接收终端的模块示意图;图5是数字电视接收终端中的获取模块的示意图。
具体实施例方式下面结合附图和实施例对本发明进行详细说明。本发明实施例提供了一种数据同步方法,包括以下步骤前端服务器配置同步补偿信息并通过传输流(化)下发到数字电视接收终端;所述数字电视接收终端根据所述同步补偿信息对当前准备播放的节目所包含的组件的解码时间标签和显示时间标签进行补偿,以获得补偿后的解码时间标签和补偿后的显示时间标签,根据所述补偿后的解码时间标签所标识的时间解码所述组件,根据所述补偿后的显示时间标签显示所述的解码后的组件并输出到电视机等显示设备。本发明提出的解决方案包括前端(前端服务器)处理和终端(数字电视接收终端)。其中,所述的前端处理是指根据数字电视业务的实际情况给出所述业务所包含组件(基本流ES)的解码时间标签和显示时间标签调整量值;其中,所述的终端根据所述的调整量值进行音视频、字幕及数据的同步补偿,从而使得数字电视业务的音视频、字幕及数据实现同步。其中,所述的调整是根据业务的实际同步情况而进行的调整;其中,所述的调整是当音视频、字幕及数据间存在不同步时才进行的调整;其中,所述的调整具体为以视频、音频、字幕及数据其中一个组件为(基本流ES) 参考,其余组件相对于该组件显示的时间存在超前或滞后的情况下而进行调整;其中,当所述组件显示时间超前时需要对其显示时间和解码时间进行正调整;其中,所述正调整是指将所述组件的解码时间标签和显示时间标签分别加上解码时间标签和显示时间标签的补偿值得到最终的解码时间标签和显示时间标签;其中,当所述组件显示时间滞后时需要对其显示时间和解码时间进行负调整;其中,所述负调整是指将所述组件的解码时间标签和显示时间标签分别减去解码时间标签和显示时间标签的补偿值得到最终的解码时间标签和显示时间标签。其中,所述的调整是在数字电视终端完成的;其中,所述的调整量值是由前端根据测量给出的标准量值;其中,所述的调整量值信息是通过本发明自定义的私有描述符携带,并通过传输流下发给数字电视接收终端的。为了使得本发明的解决方案得以实现,本发明特自定义了一种私有描述符;其中,所述私有描述符为同步补偿描述符(Sync_c0mpensating_descript0r());所述同步补偿描述符用于提供数字电视业务的音视频、字幕及数据同步补偿信息;所述同步补偿信息是指对所述业务所包含的组件(基本流的)的数据帧的解码时间标签和显示时间标签进行一定的修正,从而保证音视频、字幕及数据的同步。其中,所述同步补偿描述符包含如下关键字段传输流标识符、原始网络标识符、业务标识符、组件数目、组件标签、解码时间标签标志、解码时间标签补偿值、显示时间标签标志、显示时间标签补偿值。为了使得本发明的解决方案更加清晰,下面给出同步补偿描述符(Sync_ Compensating—descriptor ())的详细语法定义。Sync Compensating descriptorQ
//同步补偿描述符
descriptor—tag descriptor—length
for(i0=0; i0<N0; i0++)
//8bit,描述符标签 //8bit,描述符长度
transport—stream—id original—network—id service—id component—number for(i尸0; i!<Ni; I1++)
//16bit,传输流标识符 //16bit,原始网络标识符 //16bit,业务标识符 //8bit,组件数目
component—tag DTS_offsset_flag DTS—offsset reserved PTS—offset—flag PTS—offset
reserved }
}
}其中,所述同步补偿描述符各个字段的语义说明如下descriptorjag:描述符标签,Sbit字段,用于标识不同的描述符。在此定义为
9
//8bit,组件标签 //Ibit,解码时间标签标志 //33bit,解码时间标签补偿值 //6bit,保留 //Ibit,显示时间标签标志 //33bit,显示时间标签补偿值 //6bit,保OxFE (在SI规范里面,给出0x80-0xFE为用户自行定义的描述符标签),表示该描述符为同步补偿描述符,是同步补偿描述符的唯一标识。descriptor_length 描述符长度,8bit字段,给出该字段之后描述符的字节数。transport_stream_id 传输流标识符,16bit字段,在一个传输系统中,用于标识唯一的一个传输流。original_network_id 原始网络标识符,16bit字段,用于给出原始传输系统的网络标识符,和传输流标识符一起唯一标识一个传输流(TS)。service_id 业务标识符,16bit字段,用于在传输流标识符和原始网络标识符所唯一标识的传输流中唯一标识一个业务。component_number 组件数目,Sbit字段,用于给出传输流标识符、原始网络标识符、业务标识符所唯一标识的业务所包含的组件的数目,也用于标识后续组件描述的循环数。component_tag 组件标签,8bit字段,用于在传输流标识符、原始网络标识符和业务标识符所唯一标识的业务内唯一标识一个组件(或叫基本流EQ,取值和流标识描述符中组件标签(c0mp0nent_tag)字段取值相同。DTS_offsset_flag 解码时间标签标志,Ibit字段,用于给出解码时间标签补偿值(DTS_offset)的符号。当其标识为‘1’时,表示解码时间标签补偿值为正,解码时间标签需要加上该补偿值作为修正后的解码时间标签;当其标识为‘0’时,表示解码时间标签补偿值为负,解码时间标签需要减去该补偿值作为修正后的解码时间标签。DTS_offsset 解码时间标签补偿值,33bit字段,用于给出传输流标识符、原始网络标识符、业务标识符和组件标签所唯一标识的组件的解码时间标签(DTS)的补偿值,该补偿值以系统时钟频率07MHz)的1/300为单位(也就是90KHz)。reserved:保留,保留未来扩展用。PTS_offset_flag 显示时间标签标志,Ibit字段,用于给出显示时间标签补偿值 (PTS_offsset)的符号。当其标识为‘1’时,表示显示时间标签补偿值为正,显示时间标签需要加上该补偿值作为修正后的显示时间标签;当其标识为‘0’时,表示显示时间标签补偿值为负,显示时间标签需要减去该补偿值作为修正后的显示时间标签。PTS_offset 显示时间标签补偿值,3!3bit字段,用于给出传输流标识符、原始网络标识符、业务标识符和组件标签所唯一标识的组件的显示时间标签(DTS)的补偿值,该补偿值以系统时钟频率07MHz)的1/300为单位(也就是90KHz)。基于以上定义的同步补偿描述符可以对数字电视业务音视频、字幕及数据的同步进行自动补偿;所述同步自动补偿需要前端和终端配合处理,下面分别描述前端和终端的处理流程及方法。数字电视前端区别于一般数字电视前端,具体表现为根据各个数字电视业务的同步情况给出同步补偿信息,并且将同步补偿信息按照本发明自定义的数据结构封装到传输流(化)中进行传输,终端再进行对应的处理,从而达到同步补偿的目的。前端的具体处理下面进行详细描述。数字电视前端系统需要根据数字电视业务中音视频、字幕及数据的同步情况对所述数字电视业务所包含的组件之间的同步进行调整;
当所述数字电视业务中音视频、字幕及数据存在不同步时,需要对所述数字电视业务所包含的组件(基本流的)数据帧的解码时间标签(DTS)以及显示时间标签(PTS)进行调整,从而达到音视频、字幕及数据同步的目的;其中,所述的对数字电视业务所包含的组件(基本流E 数据帧的解码时间标签 (DTS)以及显示时间标签(PTQ进行调整是通过在传输流(化)中添加同步补偿描述符实现的;其中,所述同步补偿描述符可以添加在网络信息表(NIT)的第一层循环网络描述中;其中,所述同步补偿描述符可以添加在网络信息表(NIT)的第二层循环传输流描述中;其中,所述同步补偿描述符可以添加在节目映射表(PMT)的第一层循环节目描述中;其中,所述同步补偿描述符可以添加在业务群关联表(BAT)的第二层循环传输流描述中;其中,所述同步补偿描述符还可以添加在业务描述表(SDT)的第一层循环业务描述中。其中,所述的同步补偿描述符具有本发明自定义的数据结构;其中,所述的调整是通过所述同步补偿描述符如下关键字段来进行控制的传输流标识符、原始网络标识符、业务标识符、组件数目、组件标签、解码时间标签标志、解码时间标签补偿值、显示时间标签标志、显示时间标签补偿值。其中,所述传输流标识符用于在一个传输系统中标识唯一的一个传输流;其中,所述原始网络标识符用于给出原始传输系统的网络标识符,和传输流标识符一起唯一标识一个传输流(TS);其中,所述业务标识符用于在传输流标识符和原始网络标识符所唯一标识的传输流中唯一标识一个业务;其中,所述组件数目用于给出传输流标识符、原始网络标识符、业务标识符所唯一标识的业务所包含的组件的数目,也用于标识后续组件描述的循环数;其中,所述组件标签用于在传输流标识符、原始网络标识符和业务标识符所唯一标识的业务内唯一标识一个组件(或叫基本流ES),取值和节目映射表(PMT)中基本流描述循环中流标识描述符中组件标签字段取值相同;其中,所述解码时间标签标志用于给出解码时间标签补偿值的符号。当其标识为 ‘1’时,表示解码时间标签补偿值为正,解码时间标签需要加上该补偿值作为修正后的解码时间标签;当其标识为‘0’时,表示解码时间标签补偿值为负,解码时间标签需要减去该补偿值作为修正后的解码时间标签;其中,所述解码时间标签补偿值用于给出传输流标识符、原始网络标识符、业务标识符和组件标签所唯一标识的组件的解码时间标签(DTQ的补偿值,该补偿值以系统时钟频率(27MHz)的1/300为单位(也就是90KHz);其中,所述解码时间标签补偿值的正负取决于所述解码时间标签标志字段标识, 当所述解码时间标签标志字段取值为‘1’时,所述组件的数据帧的解码时间标签需要加上所述解码时间标签补偿值得到修正后的解码时间标签;当所述解码时间标签标志字段取值为‘0’时,所述组件的数据帧的解码时间标签需要减去所述解码时间标签补偿值得到修正后的解码时间标签;其中,所述显示时间标签标志用于给出显示时间标签补偿值的符号。当其标识为 ‘1’时,表示显示时间标签补偿值为正,显示时间标签需要加上该补偿值作为修正后的显示时间标签;当其标识为‘0’时,表示显示时间标签补偿值为负,显示时间标签需要减去该补偿值作为修正后的显示时间标签;其中,所述显示时间标签补偿值用于给出传输流标识符、原始网络标识符、业务标识符和组件标签所唯一标识的组件的显示时间标签(DTQ的补偿值,该补偿值以系统时钟频率(27MHz)的1/300为单位(也就是90KHz);其中,所述显示时间标签补偿值的正负取决于所述显示时间标签标志字段标识, 当所述显示时间标签标志字段取值为‘1’时,所述组件的数据帧的显示时间标签需要加上所述显示时间标签补偿值得到修正后的显示时间标签;当所述显示时间标签标志字段取值为‘0’时,所述组件的数据帧的显示时间标签需要减去所述显示时间标签补偿值得到修正后的显示时间标签。具体实现中会以所述数字电视业务所包含的其中一个组件作为参考组件,其他组件和所述参考组件相比显示时间如果滞后,那么对所述组件的解码时间标签和显示时间标签进行负调整;其他组件和所述参考组件相比显示时间如果提前,那么对所述组件的解码时间标签和显示时间标签进行正调整;其中,所述的正调整是指所述同步补偿描述符中解码时间标签标志和显示时间标签标志为‘1’ ;其中,所述的负调整是指所述同步补偿描述符中解码时间标签标志和显示时间标签标志为‘0’ ;其中,所述的参考组件可以是一个业务中的视频、音频、字幕或其他数据基本流 (ES)。前端在传输流(TQ中添加同步补偿描述符用于给音视频、字幕及数据的同步提供补偿信息,数字电视接收终端根据所述补偿信息对数字电视业务中组件的同步进行补偿;其中,所述的同步补偿信息是数字电视接收终端在节目搜索的时候获取的;其中,所述的同步补偿信息是在节目播放时发挥同步补偿作用的。下面分别就同步补偿信息的获取以及同步补偿的方法分别进行描述。请参阅图1,所述数字电视接收终端获取同步补偿信息是在节目搜索过程中完成的,包括以下步骤步骤SlOl 锁频解调,得到基带传输流(TS)。锁定当前频点并解调,得到基带传输流(TS)。其中,所述的频点可以是用户手动输入的频点信息,也可以是从网络信息表(NIT) 中获取的频点信息;其中,所述的传输流(TS)由原始网络标识符(originalnetworkjd)和传输流标识符(transport_stream_id)唯一标识。
步骤S102 解析PAT、PMT、SDT,获取节目相关信息;解析同步补偿描述符,获取和节目相关的同步补偿信息。步骤SlOl得到了基带传输流(TS),对所述基带传输流(TQ中相关的表和描述符进行解析,可以获取节目相关信息;其中,所述的表包括节目关联表(PAT)、节目映射表(PMT)、业务描述表(SDT);其中,所述的PAT给出所述传输流(TS)中所包含的节目号和各个节目PMT的PID ;根据所述PMT的PID可以获取PMT数据包,解析PMT得到PCR_PID和音视频PID ;解析所述SDT可以获取节目名称信息;其中,所述的节目在PAT和PMT中通过节目号(program_number)来标识,在SDT 中通过业务标识符(servicejd)来标识;其中,所述的节目号和业务标识符是相对应的。解析描述符标签(deSCript0r_tag)为OxFE的私有描述符(该描述符为同步补偿描述符((Sync_c0mpensating_descript0r ())),其语法结构前面已经给出明确定义),获取和节目相关的同步补偿信息;其中,所述的同步补偿信息通过组件标签(componenttag)字段和所述业务的组件相关联;其中,所述组件标签和所述业务的节目映射表(PMT)中基本流描述循环中流标识描述符中的组件标签字段相对应;其中,所述的同步补偿信息由同步补偿描述符中相应的字段给定,包括解码时间标签标志(DTS_offsset_flag)、解码时间标签补偿值(DTS_offsset)、显示时间标签标志 (PTS_offset_flag)、显示时间标签补偿值(PTS_offset)。其中,所述的同步补偿描述符根据网络内传输流(化)中的实际描述,至少可以从以下所述的位置之一获取网络信息表(NIT)的第一层循环网络描述中、网络信息表(NIT) 的第二层循环传输流(化)描述中、节目映射表(PMT)的第一层循环节目描述中、业务群关联表(BAT)的第二层循环传输流(化)描述中、业务描述表(SDT)第一层循环业务描述中。步骤S103 保存节目相关信息及同步补偿信息。步骤S102获取了节目相关信息, 包括节目号、节目名称、各个节目PCR_PID和基本流的PID、各个节目的同步补偿信息。机顶盒获取这些信息后,将其存储于Flash存储器中的节目数据区,供节目播放时使用。请参阅图2,所述数字电视接收终端在进行节目播放的时候根据节目搜索时获取的同步补偿信息对组件(基本流ES)的解码时间标签和显示时间标签进行补偿,包括以下步骤步骤S201 :PID过滤,数据接收、缓存。其中,所述PID是指用户当前选中业务所包含组件(基本流ES)的包标识符 (PID);其中,所述业务是由传输流标识符、原始网络标识符、业务标识符所唯一标识;其中,所述业务所包含组件(基本流ES)的包标识符由所述业务的节目映射表 (PMT)给出,并在节目搜索时获取得到;其中,所述包标识符(PID)包括所述业务的节目时钟参考的包标识符(PCR_PID) 以及基本流的包标识符(PID);
其中,所述的数据接收是指根据所述包标识符(PID)过滤所述业务包含的组件 (基本流的)的传输流(TQ包;其中,所述缓存是指将接收到的传输流包缓存到存储器中;其中,所述缓存是以帧为单位进行存储的;其中,所述的帧是指视频帧、音频帧以及其他数据帧。步骤S202 根据同步补偿描述符中解码时间标签补偿值对解码时间标签进行补偿,得到修正后的解码时间标签。根据步骤S201可以获取得到数据帧;其中,所述数据帧对应着一个解码时间标签(DTS);其中,所述解码时间标签(DTQ是从传输流(化)中实时获取的或者通过计算得到;其中,所述的计算是根据之前解码帧的解码时间标签计算当前帧的解码时间标签,这种情况的出现一般是传输流中没有给出当前帧的解码时间标签;其中,所述的计算是指根据当前帧和之前解码帧解码次序的差异性进行计算,具体通过以下公式给出当前帧解码时间标签=之前帧解码时间标签+(当前帧解码次序-之前帧解码次序)χ帧率;其中,当帧频为25Hz时所述帧率为1/25 ;其中,所述帧频为其他数值时所述帧率依然为其倒数;其中,所述解码时间标签(DTS)以3!3bit进行编码,并以系统时钟频率(27MHz)的 1/300为单位(也就是90KHz);其中,所述的根据同步补偿描述符中解码时间标签补偿值对解码时间标签进行补偿是指使用解码时间标签补偿值对解码时间标签(DTQ进行修正;其中,所述的修正是指在解码时间标签(DTQ的基础上加上或减去解码时间标签补偿值;其中,所述的加上或减去是由所述同步补偿描述符中解码时间标志字段标识;其中,所述解码时间标志为‘1’时标识解码时间标签加上解码时间标签补偿值得到修正后的解码时间标签;其中,所述解码时间标志为‘0’时标识解码时间标签减去解码时间标签补偿值得到修正后的解码时间标签。步骤S203 修正后的解码时间标签和节目时钟参考的基本值相比较。将步骤S202获取得到的修正后的解码时间标签(DTQ和节目时钟参考的基本值 (program_clock_reference_base)进 亍比较;其中,所述的节目时钟参考(PCR)是从传输流(TQ中实时获取的;其中,所述的节目时钟参考(PCR)为42bit的数值,该数值分为两部分进行编码;其中,所述的两部分是指节目时钟参考的基本值(pr0gram_cl0ck_reference_ base)禾口节目时钟参考的扩展值(program_clock_reference_extension);其中,所述节目时钟参考的基本值(program_clock_reference_base)为33bit, 以系统时钟频率07MHz)的1/300为单位(也就是90KHz)进行编码;
其中,所述节目时钟参考的扩展值(program_clock_reference_extension)为 9bit,以系统时钟频率07MHz)为单位进行编码;其中,所述的修正后的解码时间标签和节目时钟参考的基本值相比较是指将步骤 S202获取得到的修正后的解码时间标签(DTQ和节目时钟参考基本值(pr0gram_Cl0Ck_ reference_base)进行对比;其中,所述对比存在两种结果相等和不等,当所述对比结果为相等时转向步骤 S205,当所述对比结果为不等时转向步骤S204。步骤S204 等待一时间,使修正后的解码时间标签和节目时钟参考的基本值同
止
少ο当步骤S203中修正后的解码时间标签和节目时钟参考基本值对比不等时转向该步骤继续等待;其中,所述的等待时间是以系统时钟频率(27MHz)的1/300为单位(也就是 90KHz)的。步骤S205 启动当前帧的解码。当步骤S203中修正后的解码时间标签和节目时钟参考基本值对比相等时转向该步骤,启动解码器对当前帧进行解码。步骤S206 根据同步补偿描述符中显示时间标签补偿值对显示时间标签进行补偿,得到修正后的显示时间标签。根据步骤S205可以获取得到解码后的数据帧;其中,所述数据帧对应着一个显示时间标签(PTS);其中,所述显示时间标签(PTQ是从传输流(化)中实时获取的或者通过计算得到;其中,所述的计算是根据之前显示帧的显示时间标签计算当前帧的显示时间标签,这种情况的出现一般是传输流中没有给出当前帧的显示时间标签;其中,所述的计算是指根据当前帧和之前显示帧显示次序的差异性进行计算,具体通过以下公式给出当前帧显示时间标签=之前帧显示时间标签+(当前帧显示次序-之前帧显示次序)χ帧率;其中,当帧频为25Hz时所述帧率为1/25 ;其中,所述帧频为其他数值时所述帧率依然为其倒数;其中,所述显示时间标签(PTS)以3!3bit进行编码,并以系统时钟频率(27MHz)的 1/300为单位(也就是90KHz);其中,所述的根据同步补偿描述符中显示时间标签补偿值对显示时间标签进行补偿是指使用显示时间标签补偿值对显示时间标签(PTQ进行修正;其中,所述的修正是指在显示时间标签(PTS)的基础上加上或减去显示时间标签补偿值;其中,所述的加上或减去是由所述同步补偿描述符中显示时间标志字段标识;其中,所述显示时间标志为‘1’时标识显示时间标签加上显示时间标签补偿值得到修正后的显示时间标签;其中,所述显示时间标志为‘0’时标识显示时间标签减去显示时间标签补偿值得到修正后的显示时间标签。步骤S207 修正后的显示时间标签和节目时钟参考的基本值相比较。将步骤S206获取得到的修正后的显示时间标签(PTQ和节目时钟参考的基本值 (program_clock_reference_base)进 亍比较;其中,所述的节目时钟参考(PCR)是从传输流(TQ中实时获取的;其中,所述的节目时钟参考(PCR)为42bit的数值,该数值分为两部分进行编码;其中,所述的两部分是指节目时钟参考的基本值(pr0gram_cl0ck_reference_ base)禾口节目时钟参考的扩展值(program_clock_reference_extension);其中,所述节目时钟参考的基本值(program_clock_reference_base)为33bit, 以系统时钟频率07MHz)的1/300为单位(也就是90KHz)进行编码;其中,所述节目时钟参考的扩展值(program_clock_reference_extension)为 9bit,以系统时钟频率07MHz)为单位进行编码;其中,所述的修正后的显示时间标签和节目时钟参考的基本值相比较是指将步骤 S206获取得到的修正后的显示时间标签(PTS)和节目时钟参考基本值(pr0gram_Cl0Ck_ reference_base)进行对比;其中,所述对比存在两种结果相等和不等,当所述对比结果为相等时转向步骤 S209,当所述对比结果为不等时转向步骤S208。步骤S208 等待一时间,使修正后的显示时间标签和节目时钟参考的基本值同
止
少ο当步骤S207中修正后的显示时间标签和节目时钟参考基本值对比不等时转向该步骤继续等待;其中,所述的等待时间是以系统时钟频率(27MHz)的1/300为单位(也就是 90KHz)的。步骤S209 显示输出当前帧,并释放内存空间。当步骤S207中修正后的显示时间标签和节目时钟参考基本值对比相等时转向该步骤,输出解码后的当前帧,并释放内存空间。基于以上所述的方法可以实现音视频、字幕及数据同步的自动补偿。该实现方案简单方便,不需要用户手动操作就可以实现音视频、字幕及数据的同步,从而大大提高了用户体验,本发明还节约了前端的硬件成本,从而大大提高了产品竞争力。请一并参阅图3,本发明实施例还提供一种前端服务器10,该前端服务器10包括配置模块11、添加模块12以及发送模块13。其中,该配置模块11用于配置同步补偿信息;该添加模块12将所述同步补偿信息添加传输流中;该发送模块13向所述数字电视接收终端下发经所述添加模块12处理的后的传输流。请一并参阅图4,本发明实施例还提供一种数字电视接收终端20,该数字电视接收终端20包括获取模块21、调节模块22以及输出模块23。其中,该获取模块21用于从前端服务器10获取同步补偿信息;该调节模块22对当前准备播放的节目所包含的音视频、字幕及数据组件的解码时间标签和显示时间标签进行补偿;该输出模块23,根据所述补偿后的显示时间标签显示所述的解码后的音视频、字幕及数据组件。请一并参阅图5,在本发明实施例中,该获取模块21获取模块进一步包括接收单元211、解调单元212以及解析单元213。其中,该接收单元211用于接收前端服务器下发的传输流;该解调单元212用于对该接收单元211接收的传输流进行解调,获得基带传输流流;该解析单元213用于对该解调单元212得到的基带传输流进行解析,获得节目的基本信息和同步补偿信息。值得一提的是,本发明提出的方案根据传输流(TQ中的同步补偿描述符中描述信息进行音视频、字幕及数据的同步补偿,当然,具体实现中可以根据需要和手动调整相结合的方式进行音视频、字幕及数据的同步调整。此外,本发明实施例提供的同步补偿的方法是以节目时钟参考(PCR)的值作为参考,以数字电视业务中的视频、音频、字幕或数据组件中的一个为基准来调整其他组件的解码时间和显示时间,但并不限于此,还可以以数字电视业务中的视频、音频、字幕或数据组件中的一个解码时间标签或显示时间标签作为系统时钟参考值以及基准值,其余组件相对于该组件的解码时间标签和显示时间标签进行调整,该解决方案的缺陷是33bit的编码值的时间精度没有原本42bit节目时钟参考(PCR) 编码值的精度高,但也可以作为一种备选解决方案。以上所述仅为本发明的示例性实施例,并非因此限制本发明的专利保护范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
1权利要求
1.一种数据同步方法,其特征在于,包括以下步骤前端服务器配置同步补偿信息并通过传输流下发到数字电视接收终端;所述数字电视接收终端根据所述同步补偿信息对当前准备播放的节目所包含的音视频、字幕及数据组件的解码时间标签和显示时间标签进行补偿,以获得补偿后的解码时间标签和补偿后的显示时间标签,根据所述补偿后的解码时间标签所标识的时间解码所述音视频、字幕及数据组件,根据所述补偿后的显示时间标签显示所述的解码后的音视频、字幕及数据组件。
2.根据权利要求1所述的数据同步方法,其特征在于,所述同步补偿信息为同步补偿描述符,当所述数字电视业务中音视频、字幕及数据存在不同步时,通过所述同步补偿描述符对所述业务所包含的组件的数据帧的解码时间标签和显示时间标签进行修正。
3.根据权利要求2所述的数据同步方法,其特征在于,所述同步补偿描述符添加在传输流的网络信息表的第一层循环网络描述中;网络信息表的第二层循环传输流描述中;节目映射表的第一层循环节目描述中;业务群关联表的第二层循环传输流描述中;或业务描述表的第一层循环业务描述中。
4.根据权利要求3所述的数据同步方法,其特征在于,所述同步补偿描述符包括传输流标识符、原始网络标识符、业务标识符、组件数目、组件标签、解码时间标签标志、解码时间标签补偿值、显示时间标签标志、显示时间标签补偿值中的一个或多个。
5.根据权利要求4所述的数据同步方法,其特征在于,以所述数字电视业务所包含的音视频、字幕及数据中一个组件作为参考组件,其他组件和所述参考组件相比显示时间如果滞后,则将所述组件的解码时间标签和显示时间标签分别减去解码时间标签和显示时间标签的补偿值得到最终的解码时间标签和显示时间标签进行负调整。
6.根据权利要求5所述的数据同步方法,其特征在于,以所述数字电视业务所包含的音视频、字幕及数据中一个组件作为参考组件,其他组件和所述参考组件比显示时间如果提前,则将所述组件的解码时间标签和显示时间标签分别加上解码时间标签和显示时间标签的补偿值得到最终的解码时间标签和显示时间标签进行正调整。
7.根据权利要求6所述的数据同步方法,其特征在于,根据所述同步补偿描述符中解码时间标签标志和显示时间标签标志为‘0’时进行所述的负调整。
8.根据权利要求7所述的数据同步方法,其特征在于,根据所述同步补偿描述符中解码时间标签标志和显示时间标签标志为‘1’时进行所述的正调整。
9.根据权利要求8所述的数据同步方法,其特征在于,所述数字电视接收终端在节目搜索过程中获取所述同步补偿信息,包括以下步骤锁频解调,得到基带传输流;解析节目关联表、节目映射表以及业务描述表,获取节目相关信息,解析同步补偿描述符,获取和节目相关的同步补偿信息;保存节目相关信息及同步补偿信息。
10.根据权利要求9所述的数据同步方法,其特征在于,所述数字电视接收终端在进行节目播放的时候根据节目搜索时获取的同步补偿信息对组件的解码时间标签和显示时间标签进行补偿,包括以下步骤 PID过滤,数据接收、缓存;根据同步补偿描述符中解码时间标签补偿值对解码时间标签进行补偿,得修正后的解码时间标签;修正后的解码时间标签和节目时钟参考的基本值相比较; 若不相等,则等待一段时间; 若相等,则启动当前帧的解码;根据同步补偿描述符中显示时间标签补偿值对显示时间标签进行补偿,得到修正后的显示时间标签;修正后的显示时间标签和节目时钟参考的基本值相比较;若不相等,则等待一段时间;若相等,则显示输出当前帧,并释放内存空间。
11.一种前端服务器,其特征在于,包括 配置模块,配置同步补偿信息;添加模块,将所述同步补偿信息添加传输流中;发送模块,向所述数字电视接收终端下发经所述添加模块处理的后的传输流。
12.根据权利要求11所述的前端服务器,其特征在于,所述同步补偿信息为同步补偿描述符,当所述数字电视业务中音视频、字幕及数据存在不同步时,通过所述同步补偿描述符对所述业务所包含的组件的数据帧的解码时间标签和显示时间标签进行修正。
13.根据权利要求12所述的前端服务器,其特征在于,所述同步补偿描述符添加在传输流的网络信息表的第一层循环网络描述中; 网络信息表的第二层循环传输流描述中; 节目映射表的第一层循环节目描述中; 业务群关联表的第二层循环传输流描述中;或业务描述表的第一层循环业务描述中。
14.根据权利要求13所述的前端服务器,其特征在于,所述同步补偿描述符包括传输流标识符、原始网络标识符、业务标识符、组件数目、组件标签、解码时间标签标志、解码时间标签补偿值、显示时间标签标志、显示时间标签补偿值中的一个或多个。
15.根据权利要求14所述的前端服务器,其特征在于,以所述数字电视业务所包含的音视频、字幕及数据中一个组件作为参考组件,其他组件和所述参考组件相比显示时间如果滞后,则将所述组件的解码时间标签和显示时间标签分别减去解码时间标签和显示时间标签的补偿值得到最终的解码时间标签和显示时间标签进行负调整。
16.根据权利要求15所述的前端服务器,其特征在于,以所述数字电视业务所包含的音视频、字幕及数据中一个组件作为参考组件,其他组件和所述参考组件相比显示时间如果提前,则将所述组件的解码时间标签和显示时间标签分别加上解码时间标签和显示时间标签的补偿值得到最终的解码时间标签和显示时间标签进行正调整。
17.根据权利要求16所述的前端服务器,其特征在于,根据所述同步补偿描述符中解码时间标签标志和显示时间标签标志为‘0’时进行所述的负调整。
18.根据权利要求17所述的前端服务器,其特征在于,根据所述同步补偿描述符中解码时间标签标志和显示时间标签标志为‘1’时进行所述的正调整。
19.一种数字电视接收终端,其特征在于,包括 获取模块,用于从前端服务器获取同步补偿信息;调节模块,对当前准备播放的节目所包含的音视频、字幕及数据组件的解码时间标签和显示时间标签进行补偿;输出模块,根据所述补偿后的显示时间标签显示所述的解码后的音视频、字幕及数据组件。
20.根据权利要求19所述的数字电视接收终端,其特征在于,所述获取模块包括 接收单元,用于接收前端服务器下发的传输流;解调单元,用于对所述接收单元接收的传输流进行解调,获得基带传输流流; 解析单元,用于对所述解调单元得到的基带传输流进行解析,获得节目的基本信息和同步补偿信息。
全文摘要
本发明公开了一种数据同步方法,包括以下步骤前端服务器配置同步补偿信息并通过传输流下发到数字电视接收终端;所述数字电视接收终端根据所述同步补偿信息对当前准备播放的节目所包含的音视频、字幕及数据组件的解码时间标签和显示时间标签进行补偿,以获得补偿后的解码时间标签和补偿后的显示时间标签,根据所述补偿后的解码时间标签所标识的时间解码所述音视频、字幕及数据组件,根据所述补偿后的显示时间标签显示所述的解码后的音视频、字幕及数据组件。本发明还公开了数字电视接收终端及前端服务器,本发明公开的技术方案不需要用户手动操作就可以实现音视频、字幕及数据的同步,大大提高了用户体验。
文档编号H04N21/235GK102307321SQ20111025478
公开日2012年1月4日 申请日期2011年8月31日 优先权日2011年8月31日
发明者张神力 申请人:深圳创维数字技术股份有限公司