CN117440218A - 切换字幕的方法、装置、设备、存储介质及程序产品 - Google Patents
切换字幕的方法、装置、设备、存储介质及程序产品 Download PDFInfo
- Publication number
- CN117440218A CN117440218A CN202311490611.4A CN202311490611A CN117440218A CN 117440218 A CN117440218 A CN 117440218A CN 202311490611 A CN202311490611 A CN 202311490611A CN 117440218 A CN117440218 A CN 117440218A
- Authority
- CN
- China
- Prior art keywords
- subtitle
- old
- target
- subtitles
- new
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 239000000872 buffer Substances 0.000 claims abstract description 117
- 230000004044 response Effects 0.000 claims abstract description 31
- 238000004590 computer program Methods 0.000 claims description 15
- 238000012216 screening Methods 0.000 claims description 4
- 238000001514 detection method Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 abstract description 16
- 238000013468 resource allocation Methods 0.000 abstract description 5
- 238000004891 communication Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/488—Data services, e.g. news ticker
- H04N21/4884—Data services, e.g. news ticker for displaying subtitles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
- H04N21/4312—Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
- H04N21/4318—Generation of visual interfaces for content selection or interaction; Content or additional data rendering by altering the content in the rendering process, e.g. blanking, blurring or masking an image region
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Studio Circuits (AREA)
Abstract
本公开提供了一种切换字幕的方法、装置、设备、存储介质及程序产品,涉及媒体云、视频处理、字幕加载等技术领域。该方法包括:响应于接收到针对目标视频的字幕切换请求,根据字幕切换请求确定作为切换目标的一组新字幕;至少基于目标视频的当前播放位置,从通用字幕内容缓冲池中确定目标旧字幕,其中,通用字幕内容缓冲池用于为目标视频提供字幕;在通用字幕内容缓冲池中,利用一组新字幕的至少部分替换目标旧字幕和位于目标旧字幕之后的旧字幕。该实施方式提供了一种切换字幕的方法,可以通过替换通用字幕内容缓冲池中旧字幕的方式进行字幕切换,减少缓冲池配置资源需求的同时,提升切换效率,使得字幕可以更加流畅地被切换。
Description
技术领域
本公开涉及数据处理领域,具体涉及媒体云、视频处理、字幕加载等技术领域,尤其涉及一种切换字幕的方法、装置、电子设备、计算机可读存储介质及计算机程序产品。
背景技术
随着互联网技术的发展,视频平台可以允许用户在线获取、观看各种类型的视频。实践中,视频的内容多种多样,为了方便用户观看、理解视频内容,往往会通过例如在视频中添加字幕的方式,来呈现视频中的关键内容。例如,在视频内容是基于用户母语之外的语言制作,可以通过字幕提供视频中的对白信息,以帮助用户理解。
相应地,为了使得视频可以为更多的用户观看、理解,视频中可能会存在多个字幕轨道,例如,基于不同语言类型、语言习惯编写的字幕,以供用户根据需求进行选择。由此,如何为用户提供更好的字幕切换体验,如何更加高效地为用户提供字幕切换服务,是值得关注和迫切需求的。
发明内容
本公开实施例提出了一种切换字幕的方法、装置、电子设备、计算机可读存储介质及计算机程序产品。
第一方面,本公开实施例提出了一种切换字幕的方法,包括:响应于接收到针对目标视频的字幕切换请求,根据字幕切换请求确定作为切换目标的一组新字幕;至少基于目标视频的当前播放位置,从通用字幕内容缓冲池中确定目标旧字幕,其中,通用字幕内容缓冲池用于为目标视频提供字幕;在通用字幕内容缓冲池中,利用一组新字幕的至少部分替换目标旧字幕和位于目标旧字幕之后的旧字幕。
第二方面,本公开实施例提出了一种切换字幕的装置,包括:新字幕确定单元,被配置成响应于接收到针对目标视频的字幕切换请求,据字幕切换请求确定作为切换目标的一组新字幕;目标旧字幕确定单元,被配置成至少基于目标视频的当前播放位置,从通用字幕内容缓冲池中确定目标旧字幕,其中,通用字幕内容缓冲池用于为目标视频提供字幕;字幕替换单元,被配置成在通用字幕内容缓冲池中,利用一组新字幕的至少部分替换目标旧字幕和位于目标旧字幕之后的旧字幕。
第三方面,本公开实施例提供了一种电子设备,该电子设备包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,该指令被至少一个处理器执行,以使至少一个处理器执行时能够实现如第一方面中任一实现方式描述的切换字幕的方法。
第四方面,本公开实施例提供了一种存储有计算机指令的非瞬时计算机可读存储介质,该计算机指令用于使计算机执行时能够实现如第一方面中任一实现方式描述的切换字幕的方法。
第五方面,本公开实施例提供了一种包括计算机程序的计算机程序产品,该计算机程序在被处理器执行时能够实现如第一方面中任一实现方式描述的切换字幕的方法。
本公开实施例提供的切换字幕的方法、装置、电子设备、计算机可读存储介质及计算机程序产品,在接收到针对目标视频的字幕切换请求时进行响应,根据字幕切换请求确定作为切换目标的一组新字幕。然后,至少基于目标视频的当前播放位置,来从用于为目标视频提供字幕的通用字幕内容缓冲池中确定目标旧字幕。进一步地,可以在通用字幕内容缓冲池中,利用一组新字幕的至少部分替换目标旧字幕和位于目标旧字幕之后的旧字幕,以达到利用新字幕对旧字幕进行更新、切换字幕的目的。
本公开可以通过替换通用字幕内容缓冲池中旧字幕的方式进行字幕切换,减少缓冲池配置资源需求的同时,提升切换效率,使得字幕可以更加流畅地被切换。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本公开的其它特征、目的和优点将会变得更明显:
图1是本公开可以应用于其中的示例性系统架构;
图2为本公开实施例提供的一种切换字幕的方法的流程图;
图3为本公开实施例提供的一种确定目标旧字幕的方法的流程图;
图4为本公开实施例提供的另一种确定目标旧字幕的方法的流程示意图;
图5为本公开实施例提供的在一应用场景下的切换字幕的方法的流程示意图;
图6为本公开实施例提供的一种切换字幕的装置的结构框图;
图7为本公开实施例提供的一种适用于执行切换字幕的方法的电子设备的结构示意图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
此外,本公开涉及的技术方案中,所涉及的用户个人信息的获取(例如本公开后续涉及的包含人脸对象的图像)、存储、使用、加工、运输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
图1示出了可以应用本公开的切换字幕的方法、装置、电子设备及计算机可读存储介质的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103和服务器105上可以安装有各种用于实现两者之间进行信息通讯的应用,例如视频类应用、包括回看功能的在线会议类应用等。
终端设备101、102、103和服务器105可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等;当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中,其可以实现成多个软件或软件模块,也可以实现成单个软件或软件模块,在此不做具体限定。当服务器105为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器;服务器为软件时,可以实现成多个软件或软件模块,也可以实现成单个软件或软件模块,在此不做具体限定。
服务器105通过内置的各种应用可以提供各种服务,以可以提供在线观看视频(例如,观看包括字幕的视频)的视频类应用为例,服务器105在运行该视频类应用时可实现如下效果:首先,可以根据终端设备101、102、103的请求,通过网络104为终端设备101、102、103提供视频。例如,用户可以通过终端设备101、102、103来请求获取、观看目标视频。然后,服务器105在接收到针对目标视频的字幕切换请求时进行响应,根据字幕切换请求确定作为切换目标的一组新字幕;然后,服务器105至少基于目标视频的当前播放位置,从通用字幕内容缓冲池中确定目标旧字幕,其中,通用字幕内容缓冲池用于为目标视频提供字幕;最后,在通用字幕内容缓冲池中,利用一组新字幕的至少部分替换目标旧字幕和位于目标旧字幕之后的旧字幕。在一些场景中,通用字幕内容缓冲池也可以被称为字幕解码缓冲区。
考虑到视频播放、字幕资源存储的便利性,以及视频存储等需要占用较多的资源。例如,在线提供视频的方式可以更便利地为用户提供视频资源,而不需要过多地占用用户所使用的终端设备的本地存储。或者,在线提供视频的方式使得用户可以更早地、更快地获取到视频内容。因此本公开后续各实施例所提供的切换字幕的方法一般由拥有较强运算能力,具有较多存储、运算资源的服务器105来执行,以通过在线的方式为用户提供视频以及相应的字幕。相应地,切换字幕的装置一般也设置于服务器105中。例如,服务器105可以基于终端设备101、102、103的请求,来向其提供包括字幕的视频。例如,服务器105可以基从通用字幕内容缓冲池中读取字幕内容,以渲染、生成视频中的字幕后,将字幕与视频一并发送至终端设备101、102、103。
但同时也需要指出的是,在终端设备101、102、103也具有满足要求的运算能力和运算资源时,终端设备101、102、103也可以通过其上安装的视频类应用完成上述本交由服务器105做的各项运算,进而输出与服务器105同样的结果。尤其是在同时存在多种具有不同运算能力的终端设备的情况下,但视频类应用判断所在的终端设备拥有较强的运算能力和剩余较多的运算资源时,可以让终端设备来执行上述运算,从而适当减轻服务器105的运算压力,相应的,切换字幕的装置也可以设置于终端设备101、102、103中。例如,终端设备101、102、103中可以配置有读取线程,读取线程例如可以基于网络104与服务器105通信,或者基于本地存储的数据,以读取视频、音频和字幕数据并解封装。以字幕为例,终端设备101、102、103可以依据用户的轨道选择,将特定轨道的数据进行解封装,然后将解封装后的数据依据类型分别写入原始数据缓冲区中。进一步地,终端设备101、102、103可以从各自的原始数据缓冲区中读取待解码数据,解码后写入通用字幕内容缓冲池,然后从通用字幕内容缓冲池中读取解码后的数据来渲染、呈现。
此外,终端设备101、102、103通过其上安装的视频类应用完成上述本交由服务器105做的各项运算,进而输出与服务器105同样的结果的情况下,例如,视频、字幕可以由终端设备101、102、103本地获取的情况下,并可以在本地进行字幕的呈现、替换的情况,终端设备101、102、103可以在本地完成切换字幕的方法。相应地,示例性系统架构100也可以不包括服务器105和网络104。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。为方便理解,下文将结合图1进行说明。出于同样的目的,示例性地以服务器105作为切换字幕的方法的执行主体进行示例性说明。应当理解的是,以服务器105作为切换字幕的方法的执行主体仅为示例性的。如上述说明的,在一些实施例中,可以基于实际需求选择例如终端设备101、102、103作为切换字幕的方法的执行主体。
请参考图2,图2为本公开实施例提供的一种切换字幕的方法的流程图,其中流程200包括以下步骤:
步骤201:响应于接收到针对目标视频的字幕切换请求,根据字幕切换请求确定作为切换目标的一组新字幕。
在本公开的实施例中,切换字幕的方法的执行主体(例如图1所示的服务器105)可以提供目标视频以及相应的字幕。例如,上述说明的,服务器105可以根据用户提供终端设备101、102、103发出的请求(例如,请求提供目标视频),来对应地向终端设备101、102、103下发目标视频的视频内容和字幕,以使得用户可以利用终端设备101、102、103来观看视频和相应的字幕。例如,服务器105可以在目标视频的视频中添加字幕,然后利用添加有字幕的视频帧(例如,将字幕悬浮地添加至视频帧中的预设位置)和对应的音频信息为用户提供包括音频、字幕、图像的视频内容。相应地,用户在期望切换字幕时,可以类似地通过终端设备101、102、103来向服务器105发出针对目标视频的字幕切换请求,以通过字幕切换请求来指示服务器105将当前下发、提供的字幕切换为其他字幕。例如,在服务器105当前针对目标提供的字幕为第一语言类型的字幕(例如,英文)的情况下,字幕切换请求可以例如请求将第一语言类型的字幕切换为第二语言类型的字幕(例如,中文),以达到将字幕由英文调整为中文的目的。本步骤旨在在此由服务器105所执行,在接收到针对目标视频的字幕切换请求时进行响应,以根据字幕切换请求确定作为切换目标的一组新字幕。例如,在上述示例中,服务器105可以在接收到字幕切换请求后,基于其所指示的切换目标,来确定一组新字幕。
作为备选或附加地,字幕可以基于语言风格、语种类型、提供来源等被差异化地配置,例如对于同一视频,字幕A可能是中文,字幕B可能是英文、字幕C可能是法文。又例如,针对同一视频字幕D可能是具有东北话语言风格,字幕E可能是具有粤语语言风格等等。又例如,针对同一视频字幕F可能是由甲来提供,字幕G可能是由乙来提供。
需要指出的是,字幕可以由上述执行主体直接从本地的存储设备获取,也可以从非本地的存储设备(例如图1所示的终端设备101、102、103)中获取。本地的存储设备可以是设置在上述执行主体内的一个数据存储模块,例如服务器硬盘,在此种情况下,字幕可以在本地快速读取到;非本地的存储设备还可以为其它任何被设置用于存储数据的电子设备,例如一些用户终端等,在此情况下,上述执行主体可以通过向该电子设备发送获取命令来获取所需的视频内容,字幕等。
应当理解的是,字幕通常可以针对视频帧而被配置,例如针对视频帧的播放位置,确定对应的字幕。例如,在视频帧的播放轨道中,基于第一视频帧、第二视频帧等的播放位置,来对应地确定字幕的添加位置。例如,一组字幕可以由对应第一视频帧的第一子组字幕、对应第二视频帧的第二子组字幕组成。在实践中,为了方便对齐视频帧与字幕,通常可以利用时间戳来标记视频帧与字幕,然后通过对齐时间戳的方式来配对视频帧与字幕。例如,视频帧和字幕有各自对应的轨道,服务器105可以通过轨道中所记录的时间戳来对齐两条轨道,以对齐视频帧和字幕。
步骤202:至少基于目标视频的当前播放位置,从通用字幕内容缓冲池中确定目标旧字幕。
本步骤旨在基于上述步骤201获取一组新字幕后,服务器105至少基于目标视频的当前播放位置,从通用字幕内容缓冲池中确定目标旧字幕。应当理解的是,当前播放位置应当是目标视频中即将为用户呈现的视频帧的位置,即,该当前播放位置所对应的视频帧即将为用户所观看。通用字幕内容缓冲池可以为目标视频提供字幕。例如,服务器105通过连续地一组字幕中的各个字幕加载至通用字幕内容缓冲池后,使得在播放目标视频时,可以通过对通用字幕内容缓冲池中的各个字幕连续解码的方式,将字幕添加至视频帧中。为方便描述,可以将已经被添加至通用字幕内容缓冲池中,或者通用字幕内容缓冲池中已经存在的字幕描述为“旧字幕”。相应地,服务器105在接收到针对目标视频的字幕切换请求后,或者说,确定需要对字幕进行切换后,可以至少基于目标视频的当前播放位置,从通用字幕内容缓冲池中确定目标旧字幕。目标旧字幕实际上是未被用于呈现的旧字幕,服务器105可以基于目标旧字幕作为替换的起点,以对通用字幕内容缓冲池中的目标旧字幕和位于目标旧字幕之后的旧字幕进行替换,以达到对后续即将使用、播放的字幕进行更新的目的。例如,服务器105可以基于目标视频的当前播放位置来从通用字幕内容缓冲池中确定目标旧字幕。例如,这样的目标旧字幕至少可以例如为目标视频的当前播放位置的视频帧提供(字幕)内容的字幕。在此情况下,可以达到例如对即将播放的视频帧中的字幕进行替换,以达到对用户即将观看的视频内容中的字幕进行更新的效果。在一些实施例中,服务器105也可以根据预先被配置的策略,以当前播放位置来确定一个目标播放位置,并将为目标播放位置的视频帧提供(字幕)内容的旧字幕确定为目标旧字幕。由此,可以利用不同的策略来差异地确定目标旧字幕,以满足不同的需求。
步骤203:在通用字幕内容缓冲池中,利用一组新字幕的至少部分替换目标旧字幕和位于目标旧字幕之后的旧字幕。
本步骤旨在获取到一组新字幕后,通用字幕内容缓冲池中利用一组新字幕的至少部分替换目标旧字幕和位于目标旧字幕之后的旧字幕,以实现更新的效果。例如,在获取一组新字幕后,可以获取一组新字幕中各个新字幕各自对应的播放位置(例如,可以基于新字幕对应的时间戳来获取新字幕对应的播放位置)。然后,服务器105可以基于播放位置的比较(例如,时间戳的比较),将属于相同播放位置的旧字幕替换为新字幕,以实现对该播放位置的字幕的更新。类似地,服务器105可以通过连续地执行替换,以连续地对通用字幕内容缓冲池中的旧字幕进行更新。在实践中,通常可以基于播放顺序,或者说,时间戳顺序来连续地执行替换。例如,从目标旧字幕开始,基于播放时间顺序连续地对通用字幕内容缓冲池中的旧字幕执行替换。
相应地,在服务器105完成替换后,后续可以继续利用通用字幕内容缓冲池来为目标视频提供字幕。在此情况下,因通用字幕内容缓冲池中的旧字幕已经被新字幕所替换,使得后续在利用通用字幕内容缓冲池为目标视频提供字幕时,旧字幕被新字幕所替代,以达到切换字幕的目的。
本公开实施例提供的切换字幕的方法,响应于接收到针对目标视频的字幕切换请求,根据字幕切换请求确定作为切换目标的一组新字幕;至少基于目标视频的当前播放位置,从通用字幕内容缓冲池中确定目标旧字幕,其中,通用字幕内容缓冲池用于为目标视频提供字幕;在通用字幕内容缓冲池中,利用一组新字幕的至少部分替换目标旧字幕和位于目标旧字幕之后的旧字幕。该实施方式提供了一种切换字幕的方法,可以通过替换通用字幕内容缓冲池中旧字幕的方式进行字幕切换,减少缓冲池配置资源需求的同时,提升切换效率,使得字幕可以更加流畅地被切换。
在本实施例的一些可选的实现方式中,还包括:向通用字幕内容缓冲池中加载一组旧字幕,以通过通用字幕内容缓冲池解码生成针对目标视频的字幕;响应于接收到针对目标视频的字幕切换请求,停止向通用字幕内容缓冲池中加载一组旧字幕。
具体地,如上述说明的,服务器105可以连续地利用通用字幕内容缓冲池来为目标视频提供字幕。服务器105在提供旧字幕时(例如,在执行上述步骤201之前),可以通过连续地将一组旧字幕加载至通用字幕内容缓冲池解码后,利用通用字幕内容缓冲池解码生成针对目标视频的字幕。例如,连续地向通用字幕内容缓冲池中存入一组旧字幕的至少一部分,以使得通用字幕内容缓冲池可以基于被存储的旧字幕,连续地为目标视频输出字幕。在此情况下,如果服务器105接收到针对目标视频的字幕切换请求(例如,执行上述步骤201时),则同样可以基于对此的响应,停止向通用字幕内容缓冲池中加载一组旧字幕。由此,以避免错误地向通用字幕内容缓冲池中加载无需再被使用的旧字幕,避免浪费运算资源。
类似地,在本公开的一些实施例中,如果在上述步骤204中,仅利用了一组新字幕的一部分便完成了针对旧字幕的替换操作。例如,通用字幕内容缓冲池中所包括的旧字幕的条数少于用于对其进行替换的一组新字幕。为方便理解,可以示例性地将一组新字幕分为第一部分和第二部分,第二部分位于第一部分之后,并且第二部分与第一部分首尾相连。服务器105仅利用第一部分便可以使得通用字幕内容缓冲池中所包括的所有旧字幕被替换。在此情况下,服务器105可以在利用一组新字幕的第一部分完成对旧字幕的替换后进行响应,基于通过向通用字幕内容缓冲池中加载一组新字幕的第二部分的方式,使得通用字幕内容缓冲池可以接续、连续地输出一组新字幕。由此,使得一组新字幕可以顺利地被切换、接入,或者说其可以连续地被呈现,以保证用户的观看连续性。
在本公开的一些实施例中,如果与字幕相关联地存在时间戳,或者说,存在与字幕相关联的时间戳。服务器105可以对此进行响应,以利用时间戳对一组新字幕进行筛选、过滤。具体地,服务器105可以基于新字幕的时间戳与目标旧字幕对应的时间戳的比较,以确定一组新字幕中是否包括时间戳位于目标旧字幕对应的时间戳之前超期新字幕。如果存至少一条超期新字幕,则服务器105可以对此进行响应,以从一组新字幕中删除至少一条超期新字幕。由此,可以避免对应已播放视频部分的新字幕被错误地使用,保障字幕的使用质量。此外,这样的方式还可以允许以“完整字幕文件”的方式来配置新字幕,例如,一组新字幕可以是针对完整的目标视频的“完整字幕文件”,服务器105可以通过对“完整字幕文件”的拆分,或者说,筛选、过滤,以确定实际可以被使用的新字幕。
如上述说明的,如果存在与字幕相关联的时间戳,则可以通过时间戳序列的方式,来对齐新、旧字幕,以进行替换。在本实施例的一些可选的实现方式中,可以以目标旧字幕对应的时间戳为起点,通用字幕内容缓冲池中的最后一条旧字幕对应的时间戳为终点,确定时间戳序列。在时间戳序列中,各个时间戳与旧字幕连续地对应。或者说,时间戳序列中第一个时间戳所对应的是目标旧字幕,第二个时间戳所对应的是目标旧字幕之后的第一条旧字幕。由此,可以利用时间戳序列来完整地记录需要被替换的旧字幕的时间戳,以便于利用时间戳序列的来批量地匹配新弹幕的时间戳,以提升替换质量和替换效率。例如,在得到上述时间戳序列后,服务器105可以基于时间戳序列,从一组新字幕中确定用于替换目标旧字幕和位于目标旧字幕之后的旧字幕的至少部分。例如,时间戳序列中,以目标旧字幕的时间戳为起点,依次包括时间戳X1:Y1、X2:Y2、X3:Y3和X4:Y4。服务器105可以从上述一组新字幕中确定用于对上述旧字幕进行替换的至少部分的新字幕。例如,确定出的至少部分的新字幕所对应时间戳可以是X1:Y1、X2:Y2、X3:Y3和X4:Y4。
服务器105也可以预先通过比较时间戳的方式来从一组新字幕中确定出上述的、用于替换旧字幕的一组新字幕的至少部分。在本实施例的一些可选的实现方式中,基于时间戳序列,从一组新字幕中确定用于替换目标旧字幕和位于目标旧字幕之后的旧字幕的至少部分,包括:基于一组新字幕中各新字幕的时间戳与目标旧字幕的时间戳、位于目标旧字幕之后的旧字幕的时间戳比较,确定至少部分,其中,至少部分中的各个新字幕与相应的目标旧字幕或位于目标旧字幕之后的旧字幕具有相同的时间戳。具体地,例如上述示例中,如果时间戳序列中包括时间戳X1:Y1、X2:Y2、X3:Y3和X4:Y4,则服务器105可以基于时间戳X1:Y1、X2:Y2、X3:Y3和X4:Y4来从一组新字幕中提取对应的至少部分的新字幕。由此,以在得到时间戳序列,或者说,期望被替换的时间戳后,基于该精简的方式来确定对应的新字幕,提升效率的同时,仅保留可以正确用于替换的新字幕。这样可以避免过多地存储新字幕、浪费存储资源的同时,避免因错误存储导致的错误替换。
进一步地,服务器105可以连续地利用至少部分的新字幕相应地替换目标旧字幕和位于目标旧字幕之后的旧字幕。例如,利用时间戳同为X1:Y1的新字幕来替换该目标旧字幕,完成后,连续地利用时间戳为X2:Y2的新字幕来替换时间戳为X2:Y2的旧字幕等等。
如上述说明的,还可以基于一些策略,将当前播放位置之外的目标播放位置对应的旧字幕确定为目标旧字幕,以满足不同的需求。对此,可以参考图3。图3为本公开一个实施例提供的一种确定目标旧字幕的方法的流程图,包括流程300。例如,流程300可以是上述步骤202的备选方案,以用于至少基于目标视频的当前播放位置,从通用字幕内容缓冲池中确定目标旧字幕。具体而言,流程300包括以下步骤:
步骤301:基于用于播放目标视频的设备的性能信息,确定必要时长。
具体地,例如用户在利用终端设备101、102、103获取、播放目标视频时,因用户所使用的设备(例如,终端设备101、102、103)可能存在差异,导致在用户侧对于目标视频、字幕的处理能力可能存在差异。例如,性能更为优越的设备的处理能力、处理速度可能会更高。对此,为了保障在用户侧可以连续地获取字幕,或者说,不会因为旧字幕、新字幕的切换导致存在字幕空白的情况,服务器105可以选择实际替换的调整位置,以使得在视频实际播放到该位置时,再替换字幕。由此,使得可以安全、可靠地完成字幕替换,避免因设备处理能力不足导致在当前播放位置直接进行字幕替换时所产生的字幕卡顿、空白。相应地,设备的性能信息可以由用户所使用的终端设备101、102、103提供,例如,包括对于图像、字幕的处理能力等等。相应地,服务器105可以基于设备的性能信息来确定必要时长。通常,必要时长可以包括加载目标条数的新字幕所需要的最小时长。或者说,设备可以在不存在字幕卡顿、空白的情况下,安全、可信地完成字幕替换,能够流畅、连续地播放旧、新字幕。在本实施例的一些可选的实现方式中,目标条数包括保持一组新字幕被连续地提供所需要的最小加载条数。具体地,服务器105可以基于设备的性能,来确定例如设备对于新弹幕的加载能力,然后基于该加载能力确定对于设备而言,能够连续地加载、呈现新字幕所需要的字幕(例如,新字幕)的条数。例如,服务器105可以基于设备的性能确定,对于设备而言,如果预先加载完成(或者说,缓存)3条字幕,则后续对于新的新字幕的加载、读取,足以满足连续呈现新字幕的要求,则服务器105可以确定“3”为目标条数。由此,服务器105可以基于一组新字幕被连续地提供所需要的最小加载条数看来确定目标条数,进而推算必要时长。由此,以保障字幕可以被流畅地切换,以及流畅、连续地呈现。
步骤302:基于目标视频的当前播放位置和必要时长确定目标播放位置。
具体地,服务器105在确定出必要时长后,可以基于当前播放位置和必要时长来确定目标播放位置。对于设备而言,在目标播放位置执行弹幕替换,通常被认为是安全、可信地,即,在目标播放位置后,会使得新、旧弹幕可以接续地被呈现,而不存在弹幕空白、卡顿的情况。通常,可以基于当前播放位置所指示的时间与必要时长的加和结果来确定目标播放位置。该目标播放位置可以是播放时间,也可以是基于必要时长推算视频帧数后,确定具体的视频帧。例如,服务器105可以基于设备的性能信息,确定需要为设备留出3个视频帧的时间空间,以保障字幕流畅呈现,则服务器105可以选择指示设备加载所需要的信息(例如,字幕)后,在当前播放位置之后的第三个视频帧(即,目标播放位置)中执行字幕替换。
步骤303:将通用字幕内容缓冲池中对应目标播放位置的旧字幕确定为目标旧字幕。
具体地,服务器105可以选择将通用字幕内容缓冲池中对应目标播放位置的旧字幕确定为目标旧字幕,以从目标播放位置开始来执行新、旧字幕的切换。
另外,还可以参考图4。图4为本公开另一个实施例提供的一种确定目标旧字幕的方法的流程图,包括流程400。类似地,流程400也可以是上述步骤202的备选方案,以用于至少基于目标视频的当前播放位置,从通用字幕内容缓冲池中确定目标旧字幕。具体而言,流程400包括以下步骤:
步骤401:检测距离当前播放位置的预设时长范围内,是否存在目标视频的关键视频帧。
具体地,服务器105可以检测距离当前播放位置的预设时长范围内,是否存在目标视频的关键视频帧。通常,该预设时长范围可以基于需求,例如允许的切换响应时长等来配置,以保障字幕在预设时长范围会被执行切换。关键帧(Keyframe)是视频编码中的重要概念之一,也被称为I帧(Intra Frame)或索引帧。关键帧是视频序列中完整自身的帧,不依赖于其他帧进行解码。相对于关键帧,其他帧则是通过对关键帧的差异进行编码和解码,以实现视频压缩。关键帧通常是视频序列中的关键点,它们是视频解码器开始解码的起点。每个关键帧都是一个完整的、无损的图像帧,它包含了视频序列中的所有信息,包括颜色、纹理、形状等。因此,关键帧可以独立地进行解码和显示,不需要依赖于其他帧。由此,在存在关键帧的情况下,服务器105可以选择在关键帧位置来执行字幕的切换,以保证字幕的无缝衔接,并保证视频、音频的同步。
进一步地,如果服务器105检测到在距离当前播放位置的预设时长范围内,存在目标视频的关键视频帧,则可以对此进行响应、执行步骤402。
步骤402:将通用字幕内容缓冲池中对应关键帧的旧字幕确定为目标旧字幕。
具体地,服务器105可以将将通用字幕内容缓冲池中对应关键帧的旧字幕确定为目标旧字幕,以指示在关键帧位置执行字幕切换。由此,以保证字幕的无缝衔接,并保证视频、音频的同步。
在本实施例的一些可选的实现方式中,如果服务器105检测到在距离当前播放位置的预设时长范围内,不存在目标视频的关键视频帧,则可以对此进行响应、执行步骤403。
步骤403:将通用字幕内容缓冲池中对应当前播放位置的旧字幕确定为目标旧字幕。
具体地,如果预设时长范围内不存在关键帧,则服务器105可由选择将通用字幕内容缓冲池中对应当前播放位置的旧字幕确定为目标旧字幕,以指示在当前播放位置处执行字幕切换,以保障字幕可以在未被播放的、当下位置被切换,提升切换系统的鲁棒性。例如,以类似于上述图2所示出的实施例中步骤202的方式来确定目标旧字幕,相关内容可以参考上述讨论,此处不再重复说明。
为加深理解,本公开还结合一个具体应用场景,给出了一种具体的实现方案,请参见如图5所示的流程500。
在该应用场景中,服务器105利用通用字幕内容缓冲池520来为目标视频提供字幕。如果服务器105可以在播放位置511处获取到针对目标视频的字幕切换请求,可以对此响应,以确定一组新字幕(例如,字幕541至546)。应当理解的是,在播放位置511处,旧字幕531和532可以是已经被使用、呈现过的旧字幕。在播放位置511处,即将使用、呈现旧字幕533。
进一步地,服务器105可以基于当前播放位置(例如,播放位置511)和必要时长(例如,1条字幕对应的长度)来确定目标播放位置512,并将该目标播放位置512对应的旧字幕534确定为目标旧字幕。然后,服务器105可以确定通用字幕内容缓冲池520中需要被替换的旧字幕是旧字幕534、旧字幕535。相应地,服务器105还可以基于目标旧字幕(即,旧字幕534)对应的时间戳,确定新字幕541至543为超期新字幕,并删除、拒绝使用超期新字幕。由此,可以避免使用已经失去使用价值的新字幕(例如,对应的视频已经被播放的新字幕),以正确地使用新字幕。
进一步地,服务器105可以在通用字幕内容缓冲池520中,利用新字幕544来替换旧字幕534,新字幕545替换旧字幕535。另外,服务器105还可以连续地将新字幕545之后的新字幕546写入通用字幕内容缓冲池520中,以实现新字幕的连续播放。
由此,目标视频在播放至播放位置512后,可以为目标视频提供新字幕544以替代旧字幕534,以实现新、旧字幕的无缝切换。
进一步参考图6,作为对上述各图所示方法的实现,本公开提供了一种切换字幕的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图6所示,本实施例的切换字幕的装置600可以包括:新字幕确定单元601、目标旧字幕确定单元602和字幕替换单元603。其中,新字幕确定单元601,被配置成响应于接收到针对目标视频的字幕切换请求,根据字幕切换请求确定作为切换目标的一组新字幕;目标旧字幕确定单元602,被配置成至少基于目标视频的当前播放位置,从通用字幕内容缓冲池中确定目标旧字幕,其中,通用字幕内容缓冲池用于为目标视频提供字幕;字幕替换单元603,被配置成在通用字幕内容缓冲池中,利用一组新字幕的至少部分替换目标旧字幕和位于目标旧字幕之后的旧字幕。
在本实施例中,切换字幕的装置600中::新字幕确定单元601、目标旧字幕确定单元602和字幕替换单元603的具体处理及其所带来的技术效果可分别参考图2对应实施例中的步骤201-203的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,目标旧字幕确定单元602,包括:时长确定子单元,被配置成基于用于播放目标视频的设备的性能信息,确定必要时长,其中,必要时长包括:加载目标条数的新字幕所需要的最小时长;目标位置确定子单元,被配置成基于目标视频的当前播放位置和必要时长确定目标播放位置;第一目标字幕确定子单元,被配置成将通用字幕内容缓冲池中对应目标播放位置的旧字幕确定为目标旧字幕。
在本实施例的一些可选的实现方式中,目标条数包括保持一组新字幕被连续地提供所需要的最小加载条数。
在本实施例的一些可选的实现方式中,目标旧字幕确定单元602,包括:检测子单元,被配置成检测距离当前播放位置的预设时长范围内,是否存在目标视频的关键视频帧;第二目标字幕确定子单元,被配置成响应于存在关键视频帧,将通用字幕内容缓冲池中对应关键帧的旧字幕确定为目标旧字幕。
在本实施例的一些可选的实现方式中,装置600还包括:第三目标字幕确定子单元,被配置成响应于不存在关键视频帧,将通用字幕内容缓冲池中对应当前播放位置的旧字幕确定为目标旧字幕。
在本实施例的一些可选的实现方式中,字幕替换单元603包括:时间戳序列确定子单元,被配置成以目标旧字幕对应的时间戳为起点,通用字幕内容缓冲池中的最后一条旧字幕对应的时间戳为终点,确定时间戳序列,其中,时间戳序列的各个时间戳与旧字幕连续地对应;新字幕筛选子单元,被配置成基于时间戳序列,从一组新字幕中确定用于替换目标旧字幕和位于目标旧字幕之后的旧字幕的至少部分;字幕替换子单元,被配置成连续地利用至少部分相应地替换目标旧字幕和位于目标旧字幕之后的旧字幕。
在本实施例的一些可选的实现方式中,新字幕筛选子单元,进一步被配置成:基于一组新字幕中各新字幕的时间戳与目标旧字幕的时间戳、位于目标旧字幕之后的旧字幕的时间戳比较,确定至少部分,其中,至少部分中的各个新字幕与相应的目标旧字幕或位于目标旧字幕之后的旧字幕具有相同的时间戳。
在本实施例的一些可选的实现方式中,响应于存在与字幕相关联的时间戳,还包括:超期新字幕确定单元,被配置成响应于一组新字幕中包括至少一条超期新字幕,其中,超期新字幕的时间戳位于目标旧字幕对应的时间戳之前;超期新字幕删除单元,从一组新字幕中删除至少一条超期新字幕。
在本实施例的一些可选的实现方式中,装置600还包括:旧字幕加载单元,被配置成向通用字幕内容缓冲池中加载一组旧字幕,以通过通用字幕内容缓冲池解码生成针对目标视频的字幕;字幕加载控制单元,被配置成响应于接收到针对目标视频的字幕切换请求,停止向通用字幕内容缓冲池中加载一组旧字幕。
在本实施例的一些可选的实现方式中,装置600还包括:字幕持续加载单元,被配置成响应于利用一组新字幕的第一部分完成替换,继续向通用字幕内容缓冲池中加载一组新字幕的第二部分,其中,第二部分位于第一部分之后,并且第二部分与第一部分首尾相连。
本实施例作为对应于上述方法实施例的装置实施例存在,本实施例提供的切换字幕的装置,响应于接收到针对目标视频的字幕切换请求,根据字幕切换请求确定作为切换目标的一组新字幕;至少基于目标视频的当前播放位置,从通用字幕内容缓冲池中确定目标旧字幕,其中,通用字幕内容缓冲池用于为目标视频提供字幕;在通用字幕内容缓冲池中,利用一组新字幕的至少部分替换目标旧字幕和位于目标旧字幕之后的旧字幕。该实施方式提供了一种切换字幕的方法,可以通过替换通用字幕内容缓冲池中旧字幕的方式进行字幕切换,减少缓冲池配置资源需求的同时,提升切换效率,使得字幕可以更加流畅地被切换。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图7示出了可以用来实施本公开的实施例的示例电子设备700的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图7所示,设备700包括计算单元701,其可以根据存储在只读存储器(ROM)702中的计算机程序或者从存储单元708加载到随机访问存储器(RAM)703中的计算机程序,来执行各种适当的动作和处理。在RAM 703中,还可存储设备700操作所需的各种程序和数据。计算单元701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
设备700中的多个部件连接至I/O接口705,包括:输入单元706,例如键盘、鼠标等;输出单元707,例如各种类型的显示器、扬声器等;存储单元708,例如磁盘、光盘等;以及通信单元709,例如网卡、调制解调器、无线通信收发机等。通信单元709允许设备700通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元701可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元701的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元701执行上文所描述的各个方法和处理,例如切换字幕的方法。例如,在一些实施例中,切换字幕的方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元708。在一些实施例中,计算机程序的部分或者全部可以经由ROM 702和/或通信单元709而被载入和/或安装到设备700上。当计算机程序加载到RAM 703并由计算单元701执行时,可以执行上文描述的切换字幕的方法的一个或多个步骤。备选地,在其他实施例中,计算单元701可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行切换字幕的方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决传统物理主机与虚拟专用服务器(VPS,Virtual Private Server)服务中存在的管理难度大,业务扩展性弱的缺陷。服务器也可以分为分布式系统的服务器,或者是结合了区块链的服务器。
根据本公开实施例的技术方案,响应于接收到针对目标视频的字幕切换请求,根据字幕切换请求确定作为切换目标的一组新字幕;至少基于目标视频的当前播放位置,从通用字幕内容缓冲池中确定目标旧字幕,其中,通用字幕内容缓冲池用于为目标视频提供字幕;在通用字幕内容缓冲池中,利用一组新字幕的至少部分替换目标旧字幕和位于目标旧字幕之后的旧字幕。该实施方式提供了一种切换字幕的方法,可以通过替换通用字幕内容缓冲池中旧字幕的方式进行字幕切换,减少缓冲池配置资源需求的同时,提升切换效率,使得字幕可以更加流畅地被切换。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开提供的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (23)
1.一种切换字幕的方法,包括:
响应于接收到针对目标视频的字幕切换请求,根据所述字幕切换请求确定作为切换目标的一组新字幕;
至少基于所述目标视频的当前播放位置,从通用字幕内容缓冲池中确定目标旧字幕,其中,所述通用字幕内容缓冲池用于为所述目标视频提供字幕;
在所述通用字幕内容缓冲池中,利用所述一组新字幕的至少部分替换所述目标旧字幕和位于所述目标旧字幕之后的旧字幕。
2.根据权利要求1所述的方法,其中所述至少基于所述目标视频的当前播放位置,从通用字幕内容缓冲池中确定目标旧字幕,包括:
基于用于播放所述目标视频的设备的性能信息,确定必要时长,其中,所述必要时长包括:加载目标条数的新字幕所需要的最小时长;
基于所述目标视频的当前播放位置和所述必要时长确定目标播放位置;
将所述通用字幕内容缓冲池中对应所述目标播放位置的旧字幕确定为所述目标旧字幕。
3.根据权利要求2所述的方法,其中所述目标条数包括保持所述一组新字幕被连续地提供所需要的最小加载条数。
4.根据权利要求1所述的方法,其中所述至少基于所述目标视频的当前播放位置,从通用字幕内容缓冲池中确定目标旧字幕,包括:
检测距离所述当前播放位置的预设时长范围内,是否存在所述目标视频的关键视频帧;
响应于存在所述关键视频帧,将所述通用字幕内容缓冲池中对应所述关键帧的旧字幕确定为所述目标旧字幕。
5.根据权利要求4所述的方法,还包括:
响应于不存在所述关键视频帧,将所述通用字幕内容缓冲池中对应所述当前播放位置的旧字幕确定为所述目标旧字幕。
6.根据权利要求1所述的方法,其中所述利用所述一组新字幕的至少部分替换所述目标旧字幕和位于所述目标旧字幕之后的旧字幕,包括:
以所述目标旧字幕对应的时间戳为起点,所述通用字幕内容缓冲池中的最后一条旧字幕对应的时间戳为终点,确定时间戳序列,其中,所述时间戳序列的各个时间戳与所述旧字幕连续地对应;
基于所述时间戳序列,从所述一组新字幕中确定用于替换所述目标旧字幕和位于所述目标旧字幕之后的旧字幕的至少部分;
连续地利用所述至少部分相应地替换所述目标旧字幕和位于所述目标旧字幕之后的旧字幕。
7.根据权利要求6所述的方法,其中基于所述时间戳序列,从所述一组新字幕中确定用于替换所述目标旧字幕和位于所述目标旧字幕之后的旧字幕的至少部分,包括:
基于所述一组新字幕中各新字幕的时间戳与所述目标旧字幕的时间戳、位于所述目标旧字幕之后的旧字幕的时间戳比较,确定所述至少部分,其中,所述至少部分中的各个新字幕与相应的所述目标旧字幕或位于所述目标旧字幕之后的旧字幕具有相同的时间戳。
8.根据权利要求1所述的方法,响应于存在与字幕相关联的时间戳,还包括:
响应于所述一组新字幕中包括至少一条超期新字幕,其中,所述超期新字幕的时间戳位于所述目标旧字幕对应的时间戳之前;
从所述一组新字幕中删除所述至少一条超期新字幕。
9.根据权利要求1所述的方法,还包括:
向所述通用字幕内容缓冲池中加载一组旧字幕,以通过所述通用字幕内容缓冲池解码生成针对所述目标视频的字幕;
响应于接收到针对目标视频的字幕切换请求,停止向所述通用字幕内容缓冲池中加载所述一组旧字幕。
10.根据权利要求1-9中任一项所述的方法,还包括:
响应于利用所述一组新字幕的第一部分完成所述替换,继续向所述通用字幕内容缓冲池中加载所述一组新字幕的第二部分,其中,所述第二部分位于所述第一部分之后,并且所述第二部分与所述第一部分首尾相连。
11.一种切换字幕的装置,包括:
新字幕确定单元,被配置成响应于接收到针对目标视频的字幕切换请求,根据所述字幕切换请求确定作为切换目标的一组新字幕;
目标旧字幕确定单元,被配置成至少基于所述目标视频的当前播放位置,从通用字幕内容缓冲池中确定目标旧字幕,其中,所述通用字幕内容缓冲池用于为所述目标视频提供字幕;
字幕替换单元,被配置成在所述通用字幕内容缓冲池中,利用所述一组新字幕的至少部分替换所述目标旧字幕和位于所述目标旧字幕之后的旧字幕。
12.根据权利要求11所述的装置,其中,所述目标旧字幕确定单元,包括:
时长确定子单元,被配置成基于用于播放所述目标视频的设备的性能信息,确定必要时长,其中,所述必要时长包括:加载目标条数的新字幕所需要的最小时长;
目标位置确定子单元,被配置成基于所述目标视频的当前播放位置和所述必要时长确定目标播放位置;
第一目标字幕确定子单元,被配置成将所述通用字幕内容缓冲池中对应所述目标播放位置的旧字幕确定为所述目标旧字幕。
13.根据权利要求12所述的装置,其中,所述目标条数包括保持所述一组新字幕被连续地提供所需要的最小加载条数。
14.根据权利要求11所述的装置,其中,所述目标旧字幕确定单元,包括:
检测子单元,被配置成检测距离所述当前播放位置的预设时长范围内,是否存在所述目标视频的关键视频帧;
第二目标字幕确定子单元,被配置成响应于存在所述关键视频帧,将所述通用字幕内容缓冲池中对应所述关键帧的旧字幕确定为所述目标旧字幕。
15.根据权利要求14所述的装置,还包括:
第三目标字幕确定子单元,被配置成响应于不存在所述关键视频帧,将所述通用字幕内容缓冲池中对应所述当前播放位置的旧字幕确定为所述目标旧字幕。
16.根据权利要求11所述的装置,其中,所述字幕替换单元,包括:
时间戳序列确定子单元,被配置成以所述目标旧字幕对应的时间戳为起点,所述通用字幕内容缓冲池中的最后一条旧字幕对应的时间戳为终点,确定时间戳序列,其中,所述时间戳序列的各个时间戳与所述旧字幕连续地对应;
新字幕筛选子单元,被配置成基于所述时间戳序列,从所述一组新字幕中确定用于替换所述目标旧字幕和位于所述目标旧字幕之后的旧字幕的至少部分;
字幕替换子单元,被配置成连续地利用所述至少部分相应地替换所述目标旧字幕和位于所述目标旧字幕之后的旧字幕。
17.根据权利要求16所述的装置,其中所述新字幕筛选子单元,进一步被配置成:基于所述一组新字幕中各新字幕的时间戳与所述目标旧字幕的时间戳、位于所述目标旧字幕之后的旧字幕的时间戳比较,确定所述至少部分,其中,所述至少部分中的各个新字幕与相应的所述目标旧字幕或位于所述目标旧字幕之后的旧字幕具有相同的时间戳。
18.根据权利要求11所述的装置,响应于存在与字幕相关联的时间戳,还包括:
超期新字幕确定单元,被配置成响应于所述一组新字幕中包括至少一条超期新字幕,其中,所述超期新字幕的时间戳位于所述目标旧字幕对应的时间戳之前;
超期新字幕删除单元,从所述一组新字幕中删除所述至少一条超期新字幕。
19.根据权利要求11所述的装置,还包括:
旧字幕加载单元,被配置成向所述通用字幕内容缓冲池中加载一组旧字幕,以通过所述通用字幕内容缓冲池解码生成针对所述目标视频的字幕;
字幕加载控制单元,被配置成响应于接收到针对目标视频的字幕切换请求,停止向所述通用字幕内容缓冲池中加载所述一组旧字幕。
20.根据权利要求11-19中任一项所述的装置,还包括:
字幕持续加载单元,被配置成响应于利用所述一组新字幕的第一部分完成所述替换,继续向所述通用字幕内容缓冲池中加载所述一组新字幕的第二部分,其中,所述第二部分位于所述第一部分之后,并且所述第二部分与所述第一部分首尾相连。
21.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-10中任一项所述的切换字幕的方法。
22.一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行权利要求1-10中任一项所述的切换字幕的方法。
23.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-10中任一项所述的用于切换字幕的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311490611.4A CN117440218A (zh) | 2023-11-09 | 2023-11-09 | 切换字幕的方法、装置、设备、存储介质及程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311490611.4A CN117440218A (zh) | 2023-11-09 | 2023-11-09 | 切换字幕的方法、装置、设备、存储介质及程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117440218A true CN117440218A (zh) | 2024-01-23 |
Family
ID=89551329
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311490611.4A Pending CN117440218A (zh) | 2023-11-09 | 2023-11-09 | 切换字幕的方法、装置、设备、存储介质及程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117440218A (zh) |
-
2023
- 2023-11-09 CN CN202311490611.4A patent/CN117440218A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11234052B2 (en) | Video providing textual content system and method | |
US11417341B2 (en) | Method and system for processing comment information | |
US20210344938A1 (en) | Video decoding method and apparatus, computer device, and storage medium | |
CN109144382B (zh) | 基于双系统的笔迹显示方法、装置、终端设备及存储介质 | |
US10838691B2 (en) | Method and apparatus of audio/video switching | |
CN111757158A (zh) | 音视频同步播放方法、装置、设备和存储介质 | |
CN107509052A (zh) | 双流视频会议方法、装置、电子设备及系统 | |
US11490173B2 (en) | Switch of audio and video | |
CN111277861B (zh) | 提取视频中热点片段的方法以及装置 | |
CN107318038B (zh) | 一种视频播放与评论同步的方法、终端设备以及存储介质 | |
CN112532998B (zh) | 抽取视频帧的方法、装置、设备和可读存储介质 | |
CN112860944A (zh) | 视频渲染方法、装置、设备、存储介质及计算机程序产品 | |
JP2019509547A (ja) | Gpuリソース再構築方法、ユーザー・デバイス、システム及び記憶媒体 | |
US10497090B2 (en) | Systems and methods for reducing memory bandwidth via multiview compression/decompression | |
KR20180102605A (ko) | 이미지 드로잉 방법, 관련된 디바이스 및 시스템 | |
CN117440218A (zh) | 切换字幕的方法、装置、设备、存储介质及程序产品 | |
CN111970560A (zh) | 视频获取方法、装置、电子设备及存储介质 | |
CN113542888B (zh) | 视频的处理方法、装置、电子设备及存储介质 | |
CN113411661B (zh) | 用于记录信息的方法、装置、设备、存储介质及程序产品 | |
CN114125498A (zh) | 视频数据处理方法、装置、设备以及存储介质 | |
CN113542802A (zh) | 视频的转场方法和装置 | |
CN111467797A (zh) | 游戏数据处理方法、装置、计算机存储介质与电子设备 | |
CN114339446B (zh) | 音视频编辑方法、装置、设备、存储介质及程序产品 | |
CN111641867B (zh) | 视频输出方法、装置、电子设备及存储介质 | |
CN113490044B (zh) | 一种视频播放方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |