一种终端时钟与外部时钟的差距同步方法

文档序号:7888180阅读:143来源:国知局
专利名称:一种终端时钟与外部时钟的差距同步方法
技术领域
本发明属于移动多媒体广播领域,具体涉及一种终端时钟与外部时钟的差距同步方法。
背景技术
移动多媒体广播终端的本机时钟需要足够准确才能按照推送业务指南(PSG)中的播发时刻打开接收通道进行数据接收。而常见终端的本机时钟没有有机地利用移动多媒体广播中传递的外部时钟,存在着自动化程度不高、通用性差等弊病,并且在将本机时钟同步于外部时钟后,也把终端用户原先的时间记忆强制改变,造成用户不愿采用外部时钟同步的矛盾,导致终端在接收推送数据时存在少收或收不到文件的情况。

发明内容
为克服上述缺陷,本发明提供了一种终端时钟与外部时钟的差距同步方法,不依赖用户个人设定的时间打开和关闭终端接收通道,从而确保了终端接收时间与前端播发外部时钟的精准一致,确保推送数据的完整接收。为实现上述目的,本发明提供一种终端时钟与外部时钟的差距同步方法,其改进之处在于,所述方法包括如下步骤所述方法包括如下步骤(1).获取外部时钟TSO时间;O).转换外部时钟时间类型;(3).获取本地时间偏移量;计算当地时区时间;(5).计算并保存时间差值。 本发明提供的优选技术方案中,在所述步骤1中,所述获取外部时钟TSO时间是从复用帧0的控制信息表的网络信息表NIT得到系统时间。本发明提供的第二优选技术方案中,在所述步骤2中,转换所述进行外部时钟时间类型用于将系统时间转换为UTC时间。本发明提供的第三优选技术方案中,在所述步骤3中,所述获取本地时间的偏移量的方式包括电子业务指南(ESG)本地时间偏移获取方式或者推送业务指南(PSG)本地时间偏移获取方式。本发明提供的第四优选技术方案中,所述电子业务指南(ESG)本地时间偏移获取方式包括从复用帧0的控制信息表的ESG基本描述表中得到本地时间偏移量。本发明提供的第五优选技术方案中,所述推送业务指南(PSG)本地时间偏移获取方式包括从PSG中得到本地时间偏移量。本发明提供的第六优选技术方案中,在所述步骤4中,通过TSO时间和本地时间偏移量计算出当地时区时间。
本发明提供的第七优选技术方案中,所述计算当地时区时间包括将所在地区的时间与UTC时间进行比较进而确定当地时区时间=UTC时间+时间偏移量或当地时区时间= UTC时间-时间偏移量。本发明提供的第八优选技术方案中,在所述步骤5中,所述计算并保存时间差值, 包括获取终端本机时间,计算终端本机时间与当地时区时间的差值,作为同步时间差距值, 并将该差值存储到终端的数据库中。本发明提供的第九优选技术方案中,完成所述步骤5后更新时间差值。本发明提供的第十优选技术方案中,在所述步骤6中,所述进行时间差值更新,是指在终端开机、本机时间调整、PSG解析以及任何需要时间同步的情况下,重新读取和换算本地时间、并记录当时该时间与本机时间的差值,实现时间差值的更新。与现有技术比,本发明提供的一种终端时钟与外部时钟的差距同步方法,不依赖用户个人设定的时间打开和关闭终端接收通道,从而确保了终端接收时间与前端播发外部时钟的精准一致,确保推送数据的完整接收。并且不将本机时钟强制同步而保留用户原先的时间记忆,在保证用户获得良好体验的同时,在关闭CMMB解调模块后终端仍可用本机时钟保持高精度的差距时间同步,作为推送的启动时刻基准。用于多时间体系下的时刻控制。


图1为利用ESG获取本地时间偏移的时钟同步流程图。图2为利用PSG获取本地时间偏移的时钟同步流程图。图3为预置方式的时钟同步流程图。
具体实施例方式实施例1、一种利用ESG获取本地时间偏移的时钟同步方法,如图1所示。具体的时钟同步步骤如下步骤101,终端开机同时获取复用帧0的数据。步骤102,从复用帧0中获取控制信息表的网络信息表NIT。步骤103,对网络信息表NIT进行解析并提取“系统时间”字段。步骤104,对系统时间进行解析和格式转换,从而得到UTC时间,包括MJD日期转换和BCD编码时间提取。MJD日期转换将系统时间中前16位定义的MJD日期码通过计算得到UTC时间的年、月、日;BCD编码时间提取通过系统时间中后M位定义的BCD编码提取出时、分、秒。步骤105,读取并解析网络信息表之后,立刻找到复用帧0的ESG基本描述表。步骤106,从ESG基本描述表中提取本地时间偏移字段的数据。6位字段其中后5 位表示时间偏移量,取值范围0 24,单位为0. 5小时。例如时区值为“010000”,表示时差为8小时。步骤107,本地时间偏移,6字段其中第1位表示时区极性,判断时区极性为‘0’或 ‘1’,当为‘0’时,则表示本地时间早于UTC时间,当置‘1’时,表示本地时间晚于UTC时间。步骤108,如果本地时间早于UTC时间,则当地时区时间=UTC时间+时间偏移量。 例如UTC时间是2011年6月6日10时11分12秒,本地时间偏移量是+8小时,则当地时区时间为2011年6月6日18时11分12秒。步骤109,如果本地时间晚于UTC时间,则当地时区时间=UTC时间-时间偏移量。 例如UTC时间是2011年6月6日10时11分12秒,本地时间偏移量是_8小时,则当地时区时间为2011年6月6日2时11分12秒。步骤110,获取终端本机时间。步骤111,计算终端本机时间与上述当地时区时间的差值,作为同步时间差距值。 例如,终端本机时间为2011年6月6日18时14分17秒,当地时区时间为2011年6月6 日18时11分12秒,则差值为3分钟5秒。步骤112,将差值存储到终端数据库中。实施例2、一种利用PS6获取本地时间偏移的时钟同步方法,如图2所示。具体的时钟同步步骤如下步骤201,终端开机同时获取复用帧0的数据。步骤202,从复用帧0中获取控制信息表的网络信息表NIT。步骤203,对网络信息表NIT进行解析并提取“系统时间”字段。步骤204,对系统时间进行解析和格式转换,从而得到UTC时间,包括MJD日期转换和BCD编码时间提取。MJD日期转换将系统时间中前16位定义的MJD日期码通过计算得到UTC时间的年、月、日;BCD编码时间提取通过系统时间中后M位定义的BCD编码提取出时、分、秒。步骤205,读取并解析网络信息表之后,立刻通过CMMB数据广播网络接收 ServiceID = = 8000 上的 PSG 信息,包括 ContentClassification. xml, ContentSchedule. xml 禾口 ContentAttribute. xml。步骤206,解析ContentSchedule. xml文件,获取本地时间偏移值。6位字段其中后5位表示时间偏移量,取值范围0 24,单位为0. 5小时。例如时区值为“010000”,表示时差为8小时。步骤207,本地时间偏移,6字段其中第1位表示时区极性,判断时区极性为‘0’或 ‘1’,当为‘0’时,则表示本地时间早于UTC时间,当置‘1’时,表示本地时间晚于UTC时间。步骤208,如果本地时间早于UTC时间,则当地时区时间=UTC时间+时间偏移量。 例如UTC时间是2011年6月6日10时11分12秒,本地时间偏移量是+8小时,则当地时区时间为2011年6月6日18时11分12秒。步骤209,如果本地时间晚于UTC时间,则当地时区时间=UTC时间-时间偏移量。 例如UTC时间是2011年6月6日10时11分12秒,本地时间偏移量是_8小时,则当地时区时间为2011年6月6日2时11分12秒。步骤210,获取终端本机时间。步骤211,计算终端本机时间与上述当地时区时间的差值,作为同步时间差距值。 例如,终端本机时间为2011年6月6日18时14分17秒,当地时区时间为2011年6月6 日18时11分12秒,则差值为3分钟5秒。步骤212,将差值存储到终端数据库中。实施例3、一种预置方式的时钟同步方法,如图3所示。具体的时钟同步步骤如下步骤301,终端开机同时获取复用帧0的数据。
步骤302,从复用帧0中获取控制信息表的网络信息表NIT。步骤303,对网络信息表NIT进行解析并提取“系统时间”字段。步骤304,对系统时间进行解析和格式转换,从而得到UTC时间,包括MJD日期转换和BCD编码时间提取。MJD日期转换将系统时间中前16位定义的MJD日期码通过计算得到UTC时间的年、月、日;BCD编码时间提取通过系统时间中后M位定义的BCD编码提取出时、分、秒。步骤305,预置本地时间偏移值,即特定地区时区标准时间与UTC时间差值(若早则为正,晚则为负)。例如北京时间与UTC时间差值为+8,如果UTC时间是2011年6月6 日10时11分12秒,则当地时区时间为2011年6月6日18时11分12秒。步骤306,计算当地时区时间为UTC时间+时间偏移量。步骤307,获取终端本机时间。步骤308,计算终端本机时间与上述当地时区时间的差值,作为同步时间差距值。 例如,终端本机时间为2011年6月6日18时14分17秒,当地时区时间为2011年6月6 日18时11分12秒,则差值为3分钟5秒。步骤309,将差值存储到终端数据库中。本发明的方法,不依赖用户个人设定的时间打开和关闭终端接收通道,从而不将本机时钟强制同步而保留用户原先的时间记忆,在保证用户获得良好体验的同时,在关闭 CMMB解调模块后终端仍可用本机时钟保持高精度的差距时间同步,作为推送的启动时刻基准。可用于多时间体系下的时刻控制。需要声明的是,本发明内容及具体实施方式
意在证明本发明所提供技术方案的实际应用,不应解释为对本发明保护范围的限定。本领域技术人员在本发明的精神和原理启发下,可作各种修改、等同替换、或改进。但这些变更或修改均在申请待批的保护范围内。
权利要求
1.一种终端时钟与外部时钟的差距同步方法,其特征在于,所述方法包括如下步骤(1).获取外部时钟TSO时间;(2).转换外部时钟时间类型;(3).获取本地时间偏移量;(4).计算当地时区时间;(5).计算并保存时间差值。
2.根据权利要求1所述的方法,其特征在于,在所述步骤1中,所述获取外部时钟TSO时间是从复用帧0的控制信息表的网络信息表NIT得到系统时间。
3.根据权利要求1所述的方法,其特征在于,在所述步骤2中,转换所述进行外部时钟时间类型用于将系统时间转换为UTC时间。
4.根据权利要求1所述的方法,其特征在于,在所述步骤3中,所述获取本地时间的偏移量的方式包括电子业务指南(ESG)本地时间偏移获取方式或者推送业务指南(PSG)本地时间偏移获取方式。
5.根据权利要求4所述的方法,其特征在于,所述电子业务指南(ESG)本地时间偏移获取方式包括从复用帧0的控制信息表的ESG基本描述表中得到本地时间偏移量。
6.根据权利要求4所述的方法,其特征在于,所述推送业务指南(PSG)本地时间偏移获取方式包括从PSG中得到本地时间偏移量。
7.根据权利要求1所述的方法,其特征在于,在所述步骤4中,通过TSO时间和本地时间偏移量计算出当地时区时间。
8.根据权利要求7所述的方法,其特征在于,所述计算当地时区时间包括将所在地区的时间与UTC时间进行比较进而确定当地时区时间=UTC时间+时间偏移量或当地时区时间=UTC时间-时间偏移量。
9.根据权利要求1所述的方法,其特征在于,在所述步骤5中,所述计算并保存时间差值,包括获取终端本机时间,计算终端本机时间与当地时区时间的差值,作为同步时间差距值,并将该差值存储到终端的数据库中。
10.根据权利要求1所述的方法,其特征在于,完成所述步骤5后更新时间差值。
11.根据权利要求10所述的方法,其特征在于,在所述步骤6中,所述进行时间差值更新,是指在终端开机、本机时间调整、PSG解析以及任何需要时间同步的情况下,重新读取和换算本地时间、并记录当时该时间与本机时间的差值,实现时间差值的更新。
全文摘要
本发明提供了一种终端时钟与外部时钟的差距同步方法,终端在开机获取TSO系统时间字段获取UTC标准时间后立即读取PSG表并获取其中的时区差数据,在有些场合可获取ESG表里的时区差数据,以此时区差数据与UTC数据合成为当地时间;然后取得该时间与本机时钟的差值作为同步时间差距值;本发明提供的终端时钟与外部时钟的差距同步方法,不必将本机时钟强制同步而保留用户原先的时间记忆,从而在关闭CMMB解调模块后终端仍可用本机时钟保持高精度的差距时间同步,作为推送的启动时刻基准。用于多时间体系下的时刻控制。
文档编号H04W56/00GK102572711SQ20121001987
公开日2012年7月11日 申请日期2012年1月21日 优先权日2012年1月21日
发明者余英, 刘芳凝, 同瑛, 周红君, 孙朝晖, 方宏, 朱剑锋, 李艳铭, 蒲珂, 赵丽娜, 隋志国 申请人:中广传播集团有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1