一种节目字幕的同步显示方法及终端与流程

文档序号:16130955发布日期:2018-12-01 00:18阅读:248来源:国知局
本发明实施例涉及字幕显示领域,尤其涉及一种节目字幕的同步显示方法及终端。
背景技术
:目前,数字视频广播(digitalvideobroadcasting,dvb)标准中,可以通过pes流(packetizedelementarystreams,将原始es流打包后形成pes流)传输字幕(subtitle)数据至终端,以便终端解析并显示字幕数据,供用户收看,起到辅助观看的作用。例如,当用户通过终端观看某视频时,终端可以解析码流的节目映射表(programmaptable,pmt)中包括的字幕描述符(subtitlingdescriptor),得到字幕相关信息,并根据该字幕相关信息,通过数字电视(digitaltelevision,dtv)协议栈,解析得到pes流中的字幕数据,最后依据字幕数据的显示时间戳(presentationtimestamp,pts)与视频显示时间戳(videopts)、音频显示时间戳(audiopts)进行同步,实现音视频与字幕的同步显示。但是,由于目前视频允许多语种字幕存在,一部分语种字幕数据可以携带在码流中,一部分语种字幕数据可以存储在存储器或字幕服务器中(简称外置字幕);或者多语种字幕均存储在存储器或字幕服务器中。而上述字幕的同步显示方法仅适用于码流中包括字幕数据的情况下,如果码流中不包括字幕数据,则终端便无法实现这些外置字幕的同步显示。技术实现要素:本发明提供一种节目字幕的同步显示方法及终端,解决了码流中不包括字幕数据时无法实现外置字幕与音视频的同步显示的问题。为达到上述目的,本发明采用如下技术方案:第一方面,本发明提供一种节目字幕的同步显示方法,该方法可以包括:终端通过解析码流得到节目事件的名称和时间信息,并根据节目事件的时间信息,生成节目事件广播的实际时间轴,在确定码流的pmt中未包括字幕描述符时,确定码流中未包括字幕数据,根据节目事件的名称,获取节目事件的字幕数据,将节目事件的字幕数据映射到实际时间轴上,并根据映射后的实际时间轴显示字幕数据。其中,时间信息包括节目广播的开始时刻和持续时间。结合第一方面,在一种可能的实现方式中,还可以包括:终端在确定码流的pmt中包括字幕描述符时,确定码流中包括字幕数据,并显示选择列表,该选择列表包括码流字幕数据和外置字幕数据,在检测到用户对外置字幕数据的确认操作时,根据节目事件的名称,获取节目事件的字幕数据。结合第一方面和上述可能的实现方式,在另一种可能的实现方式中,终端通过解析码流得到节目事件的名称和时间信息,具体的可以包括:终端通过解析码流的事件信息表(eventlnformationtable,eit),得到频道电子节目指南(electronicprogramguide,epg)信息,频道epg信息包括码流的所有节目事件的名称和时间信息;在接收到用户对节目事件的操作时,从频道epg信息中获取节目事件的名称和时间信息。结合第一方面和上述可能的实现方式,在另一种可能的实现方式中,还可以包括:终端根据频道epg信息中除节目事件外的其他事件的时间信息,分别生成相应事件广播的实际时间轴,并根据频道epg信息中除节目事件外的其他事件的名称,获取相应事件的字幕数据,将其他事件的字幕数据映射到相应事件的实际时间轴上。结合第一方面和上述可能的实现方式,在另一种可能的实现方式中,终端将节目事件的字幕数据映射到实际时间轴上,具体的可以包括:终端根据节目事件的字幕数据,生成字幕时间轴,并将实际时间轴与字幕时间轴相关联,得到映射后的实际时间轴。第二方面,本发明提供一种终端,该终端可以包括:解析单元、生成单元、确定单元、获取单元、映射单元和显示单元。其中,解析单元,用于通过解析码流得到节目事件的名称和时间信息,时间信息包括节目广播的开始时刻和持续时间。生成单元,用于根据节目事件的时间信息,生成节目事件广播的实际时间轴。确定单元,用于在确定码流的pmt中未包括字幕描述符时,确定码流中未包括字幕数据。获取单元,用于根据节目事件的名称,获取节目事件的字幕数据。映射单元,用于将节目事件的字幕数据映射到实际时间轴上。显示单元,用于根据映射后的实际时间轴显示字幕数据。结合第二方面,在一种可能的实现方式中,确定单元,还用于在确定码流的pmt中包括字幕描述符时,确定码流中包括字幕数据。显示单元,还用于显示选择列表,选择列表包括码流字幕数据和外置字幕数据。获取单元,还用于在检测到用户对外置字幕数据的确认操作时,根据节目事件的名称,获取节目事件的字幕数据。结合第二方面和上述可能的实现方式,在另一种可能的实现方式中,解析单元,具体用于:通过解析码流的eit表,得到频道epg信息,频道epg信息包括码流的所有节目事件的名称和时间信息;在接收到用户对节目事件的操作时,从频道epg信息中获取节目事件的名称和时间信息。结合第二方面和上述可能的实现方式,在另一种可能的实现方式中,生成单元,还用于根据频道epg信息中除节目事件外的其他事件的时间信息,分别生成相应事件广播的实际时间轴。获取单元,还用于根据频道epg信息中除节目事件外的其他事件的名称,获取相应事件的字幕数据。映射单元,还用于将其他事件的字幕数据映射到相应事件的实际时间轴上。结合第二方面和上述可能的实现方式,在另一种可能的实现方式中,映射单元,具体用于:根据节目事件的字幕数据,生成字幕时间轴;将实际时间轴与字幕时间轴相关联,得到映射后的实际时间轴。具体的实现方式可以参考第一方面或第一方面的可能的实现方式提供的节目字幕的同步显示方法中终端的行为功能。第三方面,提供一种终端,该终端包括:至少一个处理器、存储器、通信接口和通信总线。处理器与存储器、通信接口通过通信总线连接,存储器用于存储计算机执行指令,当终端运行时,处理器执行存储器存储的计算机执行指令,以使终端执行如第一方面或第一方面的可能的实现方式中任意一项的节目字幕的同步显示方法。第四方面,提供一种计算机存储介质,其上存储有计算机执行指令,当计算机执行指令在计算机上运行时,使得计算机执行如第一方面或第一方面的可能的实现方式中任意一项的节目字幕的同步显示方法。本发明提供的节目字幕的同步显示方法,终端通过解析码流得到节目事件的名称和时间信息,并根据时间信息生成节目事件广播的实际时间轴,在确定码流中未包括字幕数据时,结合外置的字幕数据,将该外置字幕数据映射到实际时间轴上,以根据实际时间控制字幕的显示时间,从而实现音视频与外置字幕的同步显示。附图说明图1为本发明实施例提供的一种终端的组成示意图;图2为本发明实施例提供的一种节目字幕的同步显示方法的流程图;图3为本发明实施例提供的一种节目事件的实际时间轴的示意图;图4为本发明实施例提供的一种字幕时间轴的示意图;图5为本发明实施例提供的一种映射后的实际时间轴的示意图;图6为本发明实施例提供的另一种终端的组成示意图;图7为本发明实施例提供的另一种终端的组成示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。图1为本发明实施例提供的一种终端的组成示意图,在具体的实现中,该终端可以为电视机。如图1所示,该终端可以包括:至少一个处理器11、存储器12、通信接口13和通信总线14。下面结合图1对终端的各个构成部件进行具体的介绍:其中,处理器11是终端的控制中心,可以是一个处理器,也可以是多个处理元件的统称。例如,处理器11是一个中央处理器(centralprocessingunit,cpu),也可以是特定集成电路(applicationspecificintegratedcircuit,asic),或者是被配置成实施本发明实施例的一个或多个集成电路,例如:一个或多个数字信号处理器(digitalsignalprocessor,dsp),或,一个或者多个现场可编程门阵列(fieldprogrammablegatearray,fpga)。在具体的实现中,作为一种实施例,处理器11可以包括一个或多个cpu,例如图1中所示的cpu0和cpu1。且,作为一种实施例,终端可以包括多个处理器,例如图1中所示的处理器11和处理器15。这些处理器中的每一个可以是一个单核处理器(single-cpu),也可以是一个多核处理器(multi-cpu)。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。存储器12可以是只读存储器(read-onlymemory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(randomaccessmemory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasableprogrammableread-onlymemory,eeprom)、只读光盘(compactdiscread-onlymemory,cd-rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器12可以是独立存在,通过通信总线14与处理器11相连接。存储器12也可以和处理器11集成在一起。在具体的实现中,存储器12,用于存储本发明中的数据和执行本发明的软件程序。处理器11可以通过运行或执行存储在存储器12内的软件程序,以及调用存储在存储器12内的数据,执行终端的各种功能。通信接口13,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如无线接入网(radioaccessnetwork,ran),无线局域网(wirelesslocalareanetworks,wlan)等。通信接口13可以包括接收单元实现接收功能,以及发送单元实现发送功能。通信总线14,可以是工业标准体系结构(industrystandardarchitecture,isa)总线、外部设备互连(peripheralcomponentinterconnect,pci)总线或扩展工业标准体系结构(extendedlndustrystandardarchitecture,eisa)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图1中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。为了解决码流中不包括字幕数据时无法实现外置字幕与音视频的同步显示的问题,本发明实施例提供了一种节目字幕的同步显示方法,如图2所示,该方法可以包括:201、终端通过解析码流得到节目事件的名称和时间信息。其中,时间信息可以包括节目广播的开始时刻和持续时间。当用户通过终端观看音视频时,终端可以在开机后,先为后续使用的数据、变量等进行初始化和内存分配,然后通过dtv协议栈,解析码流的eit表,得到频道epg信息,该频道epg信息中可以包括有效时间内所有节目事件的名称和时间信息。这样,终端便可以在接收到用户对一个节目事件的操作时,从频道epg信息中获取该节目事件的名称和时间信息。202、终端根据节目事件的时间信息,生成节目事件广播的实际时间轴。其中,依据从频道epg信息中获取的节目事件的时间信息,生成该节目事件广播的实际时间轴,该实际时间轴即为该节目在epg二维节目菜单中的广播时间。示例性的,假设终端获取的节目事件的时间信息中,节目广播的开始时刻为2018-7-1507:30:01,持续时间为01:49:00,那么终端可以生成如图3所示的实际时间轴的示意图。203、终端在确定码流的pmt中未包括字幕描述符时,确定码流中未包括字幕数据。其中,终端可以通过dtv协议栈,解析码流的pmt,通过判断pmt中是否包括字幕描述符,来确定码流中是否包括字幕数据。如果pmt中未包括字幕描述符,则终端确定码流中未包括字幕数据,此时,可以执行以下步骤204-步骤206。如果pmt中包括字幕描述符,则终端确定码流中包括字幕数据。此时,在一种可能的实现方式中,终端可以根据字幕描述符的信息,解析码流得到字幕数据,并依据字幕数据的pts与视频pts、音频pts进行同步,实现字幕与音视频的同步显示。在另一种可能的实现方式中,终端可以显示选择列表,该选择列表可以包括码流字幕数据和外置字幕数据。这样,终端便可以在接收到用户对外置字幕数据的确认操作时,执行以下步骤204-步骤206。且终端可以在接收到用户对码流字幕数据的确认操作时,解析码流得到字幕数据来进行同步显示。204、终端根据节目事件的名称,获取节目事件的字幕数据。其中,终端可以在确定码流中未包括字幕数据,或在接收到用户对选择列表的外置字幕数据的确认操作时,根据节目事件的名称,获取节目事件的文本格式字幕(subriptext,srt)数据。在具体的实现中,如果节目事件为固定节目,则终端可以从预先存储的字幕文件中获取该节目事件的字幕数据,如果节目事件为实时更新的节目,则终端可以从字幕服务器处下载节目事件的字幕数据。示例性的,假设节目事件的名称为波斯王子-时之刃,那么终端获取的节目事件的字幕数据可以如下:1、00:00:52,688->00:00:55,173据说有些生命能够跨越时空2、00:00:57,384->00:01:03,862透过一个回荡与历史的古老召唤205、终端将节目事件的字幕数据映射到实际时间轴上。其中,终端在获取到节目事件的字幕数据之后,可以根据节目事件的字幕数据,生成字幕时间轴,该字幕时间轴的开始时刻通常为零,并将步骤202生成的实际时间轴与该字幕时间轴相关联,得到映射后的实际时间轴,以实现根据实际时间来控制字幕的显示时间。示例性的,按照步骤204中的例子,假设终端生成的字幕时间轴如图4所示,那么终端可以将字幕数据映射到图3的实际时间轴上,得到如图5所示的映射后的实际时间轴。可选的,终端可以根据解析到的目标节目波斯王子-时之刃的音频pts、视频pts,将前述两个pts与映射后的实际时间轴上该pts对应的字幕数据关联,进而实现音视频与字幕数据同步显示。206、终端根据映射后的实际时间轴显示字幕数据。进一步的,在本发明实施例中,终端还可以根据频道epg信息中除节目事件外的其他事件的时间信息,分别生成相应事件广播的实际时间轴,并根据其他事件的名称,获取相应事件的字幕数据,且将其他事件的字幕数据映射到相应事件的实际时间轴上,这样,通过预先生成其他事件的映射后的实际时间轴,使得当用户选择其他节目事件时,终端可以直接根据实际时间显示其他事件的字幕数据,提高了用户体验。本发明提供的节目字幕的同步显示方法,终端通过解析码流得到节目事件的名称和时间信息,并根据时间信息生成节目事件广播的实际时间轴,在确定码流中未包括字幕数据时,结合外置的字幕数据,将该外置字幕数据映射到实际时间轴上,以根据实际时间控制字幕的显示时间,从而实现音视频与外置字幕的同步显示。上述主要从终端的角度对本发明实施例提供的方案进行了介绍。可以理解的是,终端为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的算法步骤,本发明能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。本发明实施例可以根据上述方法示例对终端进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本发明实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。在采用对应各个功能划分各个功能模块的情况下,图6示出了上述实施例中涉及的终端的另一种可能的组成示意图,如图6所示,该终端可以包括:解析单元31、生成单元32、确定单元33、获取单元34、映射单元35和显示单元36。其中,解析单元31,用于支持终端执行图2所示的节目字幕的同步显示方法中的步骤201。生成单元32,用于支持终端执行图2所示的节目字幕的同步显示方法中的步骤202。确定单元33,用于支持终端执行图2所示的节目字幕的同步显示方法中的步骤203。获取单元34,用于支持终端执行图2所示的节目字幕的同步显示方法中的步骤204。映射单元35,用于支持终端执行图2所示的节目字幕的同步显示方法中的步骤205。显示单元36,用于支持终端执行图2所示的节目字幕的同步显示方法中的步骤206。需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。本发明实施例提供的终端,用于执行上述节目字幕的同步显示方法,因此可以达到与上述节目字幕的同步显示方法相同的效果。在采用集成的单元的情况下,图7示出了上述实施例中所涉及的终端的另一种可能的组成示意图。如图7所示,该终端包括:处理模块41、通信模块42和存储模块43。处理模块41用于对终端的动作进行控制管理,例如,处理模块41用于支持终端执行图2中的步骤201、步骤202、步骤203、步骤204、步骤205、步骤206,和/或用于本文所描述的技术的其它过程。通信模块42用于支持终端与其他网络实体的通信。存储模块43,用于存储终端的程序代码和数据。其中,处理模块41可以是图1中的处理器。其可以实现或执行结合本发明公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等等。通信模块42可以是图1中的通信接口。存储模块43可以是图1中的存储器。通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何在本发明揭露的技术范围内的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1