视频生成、播放方法、系统、装置、存储介质和设备与流程

文档序号:18618917发布日期:2019-09-06 22:18阅读:195来源:国知局
视频生成、播放方法、系统、装置、存储介质和设备与流程

本申请涉及计算机技术领域,特别是涉及一种视频生成、播放方法、装置、计算机可读存储介质和计算机设备。



背景技术:

随着互联网技术的快速发展,视频越来越受到用户的喜爱,相比于文字与图片,视频携带了更丰富更具表现力的信息,用户可以通过终端随时随地观看视频,比如可以通过视频客户端或是内容浏览客户端观看视频。观看的视频可以是一段完整的原始视频,还可以是从原始视频中剪切的一段视频,比如,这一段视频呈现了某个精彩瞬间,或是十分吸人眼球。

然而,目前从原始视频中剪切出一段视频的方式,需要人工从原始视频中剪辑出一段视频并需要额外存储剪切出的这一段视频,占用大量的存储空间。



技术实现要素:

基于此,有必要针对现有的根据原始视频制作某一段视频的方式占用大量的存储空间的技术问题,提供一种视频生成方法、装置、计算机可读存储介质和计算机设备。

一种视频生成方法,包括:

接收目标视频请求;

解析所述目标视频请求,得到待生成的目标视频在原视频中的起止时间点;

从所述原视频的视频分片中确定与所述起止时间点匹配的目标分片;

根据所述目标分片的索引地址,生成所述目标视频对应的索引文件;

为所述目标视频分配视频标识,并将所述索引文件和所述视频标识关联。

一种视频播放方法,包括:

进入视频播放入口页面;

在所述视频播放入口页面中展示视频封面;

在所述视频封面中触发视频播放事件;

响应于所述视频播放事件,获取所述视频封面所链接的目标视频对应的索引文件,并根据所述索引文件得到所述目标视频的目标分片对应的索引地址;其中,所述目标分片是根据原视频的视频分片中与起止时间点匹配的视频分片确定的,所述起止时间点是所述目标视频在所述原视频中起止处的时间点;

根据所述索引地址请求目标分片,并根据所述目标分片播放所述目标视频。

在一个实施例中,所述索引文件是通过视频存储服务器根据所述目标分片的索引地址生成的所述目标视频对应的索引文件,所述方法还包括:根据所述索引地址从所述视频存储服务器请求目标分片。

在一个实施例中,所述目标分片是通过视频存储服务器获取所述原视频对应的原索引文件;解析所述原索引文件,得到所述原视频的视频分片对应的播放时长;按照所述原视频的视频分片的播放顺序,依次将所述视频分片对应的播放时长进行拼接,得到各所述视频分片在所述原视频中的播放时间段;根据包含所述起止时间点的播放时间段所对应的视频分片确定得到的。

在一个实施例中,所述起止时间点包括起始时间点和结束时间点;所述方法还包括:通过视频存储服务器将包含所述起始时间点的播放时间段对应的视频分片作为起始目标分片;将包含所述结束时间点的播放时间段对应的视频分片作为结束目标分片。

在一个实施例中,所述方法还包括:通过视频存储服务器解析所述原索引文件,得到所述原视频的视频分片对应的索引地址;当所述起始时间点处于所述起始目标分片对应的播放时间段之中时,则根据所述起始目标分片对应的索引地址,获取所述起始目标分片;按照所述起始时间点、与所述起始目标分片对应的播放时间段的结束点,从所述起始目标分片中切分视频,得到所述目标视频对应的起始分片;存储所述起始分片,并根据所述起始分片的存储地址生成所述目标视频对应的索引文件。

在一个实施例中,所述方法还包括:通过视频存储服务器在所述起始时间点为所述起始目标分片对应的播放时间段的起始点时,将所述起始目标分片作为所述目标视频对应的起始分片;根据所述起始分片的索引地址,生成所述目标视频对应的索引文件。

在一个实施例中,所述方法还包括:通过视频存储服务器解析所述原索引文件,得到所述原视频的视频分片对应的索引地址;当所述结束时间点处于所述结束目标分片对应的播放时间段之中时,则根据所述结束目标分片对应的索引地址,获取所述结束目标分片;按照与所述结束目标分片对应的播放时间段的起始点、所述结束时间点,从所述结束目标分片中切分视频,得到所述目标视频对应的结束切片;存储所述结束分片,并根据所述结束分片的存储地址生成所述目标视频对应的索引文件。

在一个实施例中,所述方法还包括:通过视频存储服务器在所述结束时间点为所述结束目标分片对应的播放时间段的结束点时,将所述结束目标分片作为所述目标视频对应的结束分片;根据所述结束分片的索引地址,生成所述目标视频对应的索引文件。

在一个实施例中,所述方法还包括:通过视频存储服务器将所述起始目标分片与所述结束目标分片之间的视频分片作为中间目标分片;解析所述原索引文件,得到所述原视频的视频分片对应的索引地址;直接将所述中间目标分片作为所述目标视频对应的中间分片;根据所述中间分片的索引地址,生成所述目标视频对应的索引文件。

在一个实施例中,所述方法还包括:通过视频存储服务器获取所述目标视频的起始分片;从所述起始分片对应的播放画面中,截取与所述起止时间点中的起始时间点对应的截图;将所述截图作为所述目标视频的视频封面,并将所述视频封面和所述目标视频的视频标识关联。

一种视频处理系统,包括视频编辑服务器、视频存储服务器、视频应用服务器和终端,其中:

所述视频编辑服务器用于向视频存储服务器发送目标视频请求,所述目标视频请求携带待生成的目标视频在原视频中的起止时间点;

所述视频存储服务器用于接收并解析所述目标视频请求,得到待生成的目标视频在原视频中的起止时间点;从所述原视频的视频分片中确定与所述起止时间点匹配的目标分片,根据所述目标分片的索引地址,生成所述目标视频对应的索引文件;为所述目标视频分配视频标识,并将所述索引文件和所述视频标识关联;

所述视频存储服务器还用于将所述视频标识返回至所述视频编辑服务器,并通过所述视频编辑服务器将所述视频标识发送至所述视频应用服务器;

所述视频应用服务器还用于接收所述终端发送的视频查询请求,响应视频查询请求,向所述终端返回所述目标视频对应的视频标识;

所述终端用于根据所述视频标识获取对应的索引文件,并解析所述索引文件,得到所述目标视频的目标分片对应的索引地址;根据所述索引地址请求目标分片,并根据所述目标分片播放所述目标视频。

一种视频生成装置,所述装置包括:

接收模块,用于接收目标视频请求;

解析模块,用于解析所述目标视频请求,得到待生成的目标视频在原视频中的起止时间点;

目标分片确定模块,用于从所述原视频的视频分片中确定与所述起止时间点匹配的目标分片;

索引文件生成模块,用于根据所述目标分片的索引地址,生成所述目标视频对应的索引文件;

存储模块,用于为所述目标视频分配视频标识,并将所述索引文件和所述视频标识关联。

一种视频播放装置,所述装置包括:

展示模块,用于进入视频播放入口页面;在所述视频播放入口页面中展示视频封面;

获取模块,用于在所述视频封面中触发视频播放事件;

索引地址获取模块,用于响应于所述视频播放事件,获取所述视频封面所链接的目标视频对应的索引文件,并根据所述索引文件得到所述目标视频的目标分片对应的索引地址;其中,所述目标分片是根据原视频的视频分片中与起止时间点匹配的视频分片确定的,所述起止时间点是所述目标视频在所述原视频中起止处的时间点;

播放模块,用于根据所述索引地址请求目标分片,并根据所述目标分片播放所述目标视频。

一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行上述视频生成方法或视频播放方法的步骤。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述视频生成方法的步骤。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述视频播放方法的步骤。

上述视频生成、播放方法、装置、计算机可读存储介质和计算机设备,直接从原视频的视频分片中确定待生成的目标视频的目标分片,根据目标分片的索引地址生成目标视频对应的索引文件,并将索引文件与为目标视频分配的视频标识关联后,可以在需要播放视频时,直接根据目标分片的索引地址播放目标视频,实质上是原视频与目标视频复用了若干视频分片,相比于从原视频中剪辑出一段视频,再人为切分得到目标分片后另行存储目标分片的方式,不仅能够大大地减少存储空间,并且也不需要人工去剪辑、切分视频。

附图说明

图1为一个实施例中视频生成方法的应用环境图;图2为一个实施例中视频生成方法的流程示意图;

图3为一个实施例中通过视频播放器播放视频的时序图;

图4为一个实施例中从原视频的视频分片中确定与起止时间点匹配的目标分片的步骤的流程示意图;

图5为一个实施例中原视频的视频分片对应的播放时间段的示意图;

图6为一个实施例中根据原视频生成的目标视频的视频分片的示意图;

图7为一个实施例中展示目标视频对应的视频封面的界面示意图;

图8为一个具体的实施例中视频生成方法的流程示意图;

图9为另一个实施例中视频生成方法的应用环境图;

图10为一个实施例中视频播放方法的流程示意图;

图11为一个实施例中视频生成装置的结构框图;

图12为一个实施例中视频播放装置的结构框图;

图13为一个实施例中计算机设备的结构框图;

图14为另一个实施例中计算机设备的结构框图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

图1为一个实施例中视频生成方法的应用环境图。参照图1,该视频生成方法应用于视频生成系统。该视频生成系统包括视频编辑服务器110和视频存储服务器120。视频编辑服务器110和视频存储服务器120通过网络连接。视频存储服务器120可以接收视频编辑服务器110发送的目标视频请求,并解析目标视频请求,得到待生成的目标视频在原视频中的起止时间点,从原视频的视频分片中确定与起止时间点匹配的目标分片,根据目标分片的索引地址,生成目标视频对应的索引文件,视频存储服务器120还为目标视频分配视频标识,并将索引文件和视频标识关联。视频编辑服务器110、视频存储服务器120可以集成在一起或者是多个服务器组成的服务器集群来实现。

在一些实施例中,本申请所提供的视频生成方法也可以由终端执行,终端上安装和运行有支持视频生成功能的客户端,客户端在运行时可以实现本申请所提供的视频生成方法。在另一些实施例中,本申请所提供的视频生成方法也可以由终端和服务器共同执行。

如图2所示,在一个实施例中,提供了一种视频生成方法。本实施例主要以该方法应用于上述图1中的视频存储服务器120举例说明。参照图2,该视频生成方法具体包括如下步骤:

s202,接收目标视频请求。

其中,目标视频请求是用于生成目标视频的请求。待生成的目标视频是原视频中的一段视频,原视频可以是一部原始的视频数据,比如可以是一部电影、一集电视剧或是一部录制的视频等等。在一个实施例中,根据视频的播放时长,可以将原视频称之为长视频,而将根据原视频生成的目标视频称之为短视频。

具体地,视频存储服务器可以接收视频编辑服务器发送的目标视频请求。视频存储服务器存储了大量的媒体资源,比如存储了具有版权的视频数据,该视频数据包括原视频,也可以包括根据原视频生成的目标视频。视频编辑服务器可以从视频存储服务器查询某个原视频,然后根据查询到的原视频新增用于生成目标视频的目标视频请求。

在一个具体的应用场景中,编辑人员可以通过视频编辑服务器从视频存储服务器拉取视频资源。比如,编辑人员可以通过视频编辑服务器输入原视频名称,通过视频编辑服务器查询视频存储服务器上存储的与该视频名称相关的原视频并展示。可选地,视频编辑服务器还可以查询到根据原视频生成的目标视频,并根据查询到的目标视频展示相应的目标视频列表,目标视频列表中可以呈现与目标视频相关的视频信息,包括目标视频基于原视频的起止时间点、目标视频的视频标识以及目标视频的标题等等。在查询到与输入的原视频名称相关的原视频后,编辑人员可以通过视频编辑服务器指定待生成的目标视频基于原视频的起止时间点,根据该起止时间点向视频存储服务器提交相应的目标视频请求。

在一个实施例中,编辑人员除了指定待生成的目标视频在原视频中的起止时间点以外,还可以通过视频编辑服务器指定原视频的视频标识,以便于视频存储服务器可以在本地查找到与该视频标识对应的原视频。当然,在另一应用场景中,编辑人员可以在查询到原视频后,进入原视频对应的编辑页面,在原视频对应的编辑页面中指定起止时间点,并在确认后自动提交目标视频请求至视频存储服务器,这样,视频存储服务器可以检测出该目标视频请求是在原视频对应的编辑页面中提交的,从而能够自动解析待生成的目标视频所基于的原视频所对应的视频标识。

s204,解析目标视频请求,得到待生成的目标视频在原视频中的起止时间点。

具体地,目标视频请求可以携带待生成的目标视频在原视频中的起止时间点,因此,视频存储服务器接收到视频编辑服务器发送的目标视频请求后,解析目标视频请求得到待生成的目标视频在原视频中的起止时间点。

起止时间点包括起始时间点和结束时间点,起始时间点是原视频中目标视频开始播放的时间点,结束时间点是原视频中目标视频结束播放的时间点。可见,起止时间点用于确定目标视频具体是原视频中的哪一视频片段。

比如,编辑人员通过视频编辑服务器从视频存储服务器拉取原视频,该原视频对应的播放时长一共是02:05:20,若要根据01:01:25至01:05:30这一时间区间对应的视频数据生成目标视频,则编辑人员可以通过视频编辑服务器分别指定待生成的目标视频在原视频中的起始时间点为01:01:25、结束时间点为01:05:30,并根据指定的起止时间点生成目标视频请求。视频存储服务器可以在接收到目标视频请求后,解析目标得到目标视频在原视频中的起止时间点。

s206,从原视频的视频分片中确定与起止时间点匹配的目标分片。

其中,视频分片是用于视频数据的存储单位。为了能够减少视频启动播放的耗时,视频存储服务器通常会将一部完整的视频数据进行转码处理,也就是将一部视频分割成一小段的视频分片,然后再将分割的所有视频分片进行存储,视频存储服务器还会将分割得到的各视频分片的播放时长、索引地址写入索引文件,在播放视频时可以根据索引文件按视频分片的顺序依次请求视频分片,能够立即开始播放视频,从而实现整部视频的播放。视频分片可以是ts(transportstream,传输流)格式的视频流文件,索引文件比如可以是m3u8文件。

如图3所示,为一个实施例中通过视频播放器播放视频的时序图。参照图3,终端上的播放器可以获取视频播放请求,基于视频播放请求向调度服务器请求视频的索引文件,调度服务器返回索引文件后,视频播放器可以根据索引文件中记录的每一视频分片对应的索引地址从文件服务器请求视频分片,并根据文件服务器返回的的视频分片依次播放视频,从而实现了播放整部视频。

在本申请所提供的实施例中,终端上的播放器可以获取在视频封面中触发视频播放事件,响应于视频播放事件,从视频存储服务器获取视频封面所链接的目标视频对应的索引文件,并根据索引文件得到目标视频的目标分片对应的索引地址,根据索引地址从视频存储服务器请求目标分片,并根据目标分片播放目标视频。

视频存储服务器存储了原视频的视频分片,视频存储服务器可以在确定用于生成目标视频的原视频后,获取构成原视频的视频分片,并根据每个视频分片对应的播放时长和从目标视频请求中解析得到的起止时间点,从原视频的视频分片中确定用于生成目标视频的目标分片。可见,目标分片是根据起止时间点从原视频的视频分片中确定的视频分片。

目标分片可以是1个,也可以是多个,目标分片的数量也与目标视频在原视频中的起止时间点有关。通常一个视频分片的播放时长为5至10秒钟,若起止时间点对应的播放时长远大于一个视频分片的播放时长,则确定的用于生成目标视频的目标分片可能有多个;若起止时间点对应的播放时长小于一个视频分片的播放时长,则确定的用于生成目标视频的目标分片可能只有1至2个。

如图4所示,在一个实施例中,从原视频的视频分片中确定与起止时间点匹配的目标分片的步骤包括:

s402,获取原视频对应的原索引文件。

具体地,视频存储服务器可以根据原视频的视频标识获取原视频对应的原索引文件,原索引文件是原视频的目录文件,原索引文件包括原视频的视频分片的索引地址以及播放时长。

s404,解析原索引文件,得到原视频的视频分片对应的播放时长。

其中,播放时长是视频分片在播放时的持续时间,原索引文件中还记录了原视频的视频分片对应的播放时长。视频存储服务器解析原视频的原索引文件,得到构成原视频的视频分片对应的播放时长。

s406,按照原视频的视频分片的播放顺序,依次将视频分片对应的播放时长进行拼接,得到各视频分片在原视频中的播放时间段。

其中,播放时间段是每一视频分片在原视频中播放的时间段范围。比如,原视频的首个视频分片对应的播放时长为5s,第二个视频分片对应的播放时长为3秒,则首个视频分片、第二个视频分片在原视频中的播放时间段依次为0秒至5秒、5秒至8秒。若首个视频分片对应的播放时长为10秒,则首个视频分片在原视频中的播放时间段为0秒至10秒。

在原索引文件中,为了便于按照播放顺序依次请求视频分片实现播放整部视频,原视频的视频分片对应的播放时长以及相应的索引地址是按视频分片播放顺序依次记录的,因此,视频存储服务器也可以按照视频分片的播放顺序,依次拼接视频分片对应的播放时长,从而得到每一视频分片在原视频中的播放时间段。

s408,根据包含起止时间点的播放时间段所对应的视频分片确定目标分片。

具体地,视频存储服务器在确定了原视频的各个视频分片在原视频中的播放时间段之后,就可以根据包含了起止时间点的播放时间段所对应的视频分片确定用于生成目标视频的目标分片。

在本实施例中,通过起止时间点从原视频的视频分片中直接找出用于生成目标视频的目标分片,可以基于该目标分片生成目标视频,相比于从原视频中截取视频的方式,本申请基于已有的视频分片进行处理,不需要剪辑视频,同时还能够减少视频数据占用的存储空间。

s208,根据目标分片的索引地址,生成目标视频对应的索引文件。

具体地,视频存储服务器可以获取原视频对应的原索引文件,解析原索引文件,得到原视频的视频分片各自对应的索引地址,那么,在从原视频的视频分片中确定了用于生成目标视频的目标分片后,视频存储服务器也就可以获得的各个目标分片对应的索引地址,然后可以根据目标分片的索引地址直接生成目标视频对应的索引文件;或者,在一些情况下,还可以根据目标分片的索引地址下载目标分片,然后对目标分片进行部分剪切后存储剪切后的分片,根据存储地址生成目标视频对应的索引文件。

s210,为目标视频分配视频标识,将索引文件和视频标识关联。

目标视频对应的索引文件用于在播放该目标视频时,根据索引文件中记录的构成目标视频的视频分片的下载地址、播放时长依次请求视频分片,实现播放整个目标视频。因此,在得到目标视频对应的索引文件后,视频存储服务器可以为目标视频分配唯一的视频标识,并将生成的索引文件与分配的视频标识关联,以便于视频播放器根据与视频标识对应的索引文件中记载的索引地址依次下载视频分片并播放视频。

在一个实施例中,视频存储服务器还可以将目标视频的视频标识与原视频的视频标识关联,以便于在获取到视频编辑服务器发送的针对原视频的视频查询请求时,可以获取与原视频关联的、基于原视频生成的目标视频的视频信息,并将原视频的视频信息与目标视频的视频信息一并返回至视频编辑服务器。这里的视频信息包括视频名称、视频时长、视频封面以及目标视频在原视频中的起止时间点等等。

上述视频生成方法,直接从原视频的视频分片中确定待生成的目标视频的目标分片,根据目标分片的索引地址生成目标视频对应的索引文件,并将索引文件与为目标视频分配的视频标识关联后,可以在需要播放视频时,直接根据目标分片的索引地址播放目标视频,实质上是原视频与目标视频复用了若干视频分片,相比于从原视频中剪辑出一段视频,再人为切分得到目标分片后另行存储目标分片的方式,不仅能够大大地减少存储空间,并且也不需要人工去剪辑、切分视频。

在一个实施例中,起止时间点包括起始时间点和结束时间点;根据包含起止时间点的播放时间段所对应的视频分片确定目标分片,包括:将包含起始时间点的播放时间段对应的视频分片作为起始目标分片;将包含结束时间点的播放时间段对应的视频分片作为结束目标分片。

其中,起止时间点包括起始时间点和结束时间点。视频存储服务器在确定了原视频的视频分片在原视频中的播放时间段后,就可以将包含起始时间点的播放时间段所对应的视频分片作为用于生成目标视频的起始目标分片,将包含结束时间点的播放时间段所对应的视频分片作为用于生成目标视频的结束目标分片。

如图5所示,为一个实施例中原视频的视频分片对应的播放时间段的示意图。参照图5,原视频一共包括n个视频分片,其中,第0个视频分片对应的播放时间段为0至t1,第1个视频分片对应的播放时间段为t1至t2,第2个视频分片对应的播放时间段为t2至t3,以此类推,第n-1个视频分片对应的播放时间段为t(n-1)至t(n),第n个视频分片对应的播放时间段为t(n)至t(n+1)。从目标视频请求中解析得到的起止时间点为m至n,其中m∈(0,t1),n∈(t2,t3),那么,原视频的第0个视频分片为用于生成目标视频的起始目标分片,第2个视频分片为用于生成目标视频的结束目标分片。

在一个实施例中,根据目标分片的索引地址,生成目标视频对应的索引文件,包括:解析原索引文件,得到原视频的视频分片对应的索引地址;当起始时间点处于起始目标分片对应的播放时间段之中时,则根据起始目标分片对应的索引地址,获取起始目标分片;按照起始时间点、与起始目标分片对应的播放时间段的结束点,从起始目标分片中切分视频,得到目标视频对应的起始分片;存储起始分片,并根据起始分片的存储地址生成目标视频对应的索引文件。

具体地,视频存储服务器还需要解析原视频对应的原索引文件,得到原视频的各个视频分片对应的索引地址。在本实施例中,当起始时间点处于起始目标分片对应的播放时间段之中时,说明不能将整个起始目标分片作为目标视频的一部分,而是需要从起始时间点起,从起始目标分片中切分出一部分视频,将切分出的视频作为目标视频的起始分片。

比如,参照图5,若起始时间点m处于(0,t1)之间,那么视频存储服务器需要从起始目标分片中切分出与(m,t1)这一时间区间段对应的视频数据,将切分出的视频数据作为目标视频对应的起始分片,并将该起始分片另行存储,根据起始分片的存储地址生成目标视频对应的索引文件。

实际上,为了便于其它设备或是视频存储服务器本身能够获取生成的目标视频,视频存储服务器需要为目标视频生成对应的索引文件。根据起始分片的存储地址生成目标视频对应的索引文件,就是将起始分片的存储地址记录在目标视频对应的索引文件中,以便于根据索引文件中记录的存储地址获取该起始分片。

在一个实施例中,上述方法还包括:当起始时间点为起始目标分片对应的播放时间段的起始点时,则将起始目标分片作为目标视频对应的起始分片;根据起始分片的索引地址,生成目标视频对应的索引文件。

在本实施例中,当起始时间点正好为起始目标分片对应的播放时间段的起始点时,说明可以将整个起始目标分片作为构成目标视频的一部分,也就是将起始目标分片直接作为目标视频对应的起始分片,实现对原视频的视频分片的复用,能够节省存储空间,因此,这种情况下,可以直接将解析原索引文件得到的起始分片的索引地址记录在目标视频对应的索引文件中,以便于在播放目标视频时,直接根据对应的索引文件中记录的起始分片的索引地址请求起始分片并播放。

比如,参照图5,若起始时间点m恰好为t1,结束时间点n∈(t2,t3),那么视频存储服务器需要将原视频的第1个视频分片直接作为目标视频对应的起始分片,并根据该起始分片的索引地址生成目标视频对应的索引文件。

在一个实施例中,根据目标分片的索引地址,生成目标视频对应的索引文件,包括:解析原索引文件,得到原视频的视频分片对应的索引地址;当结束时间点处于结束目标分片对应的播放时间段之中时,则根据结束目标分片对应的索引地址,获取结束目标分片;按照与结束目标分片对应的播放时间段的起始点、结束时间点,从结束目标分片中切分视频,得到目标视频对应的结束切片;存储结束分片,并根据结束分片的存储地址生成目标视频对应的索引文件。

在本实施例中,当结束时间点处于结束目标分片对应的播放时间段之中时,说明不能将整个结束目标分片作为目标视频的一部分,而是需要按照结束目标分片对应的播放时间段的起始点、结束时间点从结束目标分片中切分出一部分视频,将切分出的视频作为目标视频的结束分片。

比如,参照图5,若结束时间点n处于(t2,t3)之间,那么视频存储服务器需要从结束目标分片中切分出与(t2,n)这一时间区间段对应的视频数据,将切分出的视频数据作为目标视频对应的结束分片,并将该结束分片另行存储,根据结束分片的存储地址生成目标视频对应的索引文件。

同样地,为了便于其它设备或是视频存储服务器本身能够获取生成的目标视频,视频存储服务器需要为目标视频生成对应的索引文件。根据结束分片的存储地址生成目标视频对应的索引文件,就是将结束分片的存储地址记录在目标视频对应的索引文件中,以便于根据索引文件中记录的存储地址获取该结束分片。

在一个实施例中,上述方法还包括:当结束时间点为结束目标分片对应的播放时间段的结束点时,则将结束目标分片作为目标视频对应的结束分片;根据结束分片的索引地址,生成目标视频对应的索引文件。

在本实施例中,当结束时间点正好为结束目标分片对应的播放时间段的结束点时,说明可以将整个结束目标分片作为构成目标视频的一部分,也就是将结束目标分片直接作为目标视频对应的结束分片,实现对原视频的视频分片的复用,能够节省存储空间,因此,这种情况下,可以直接将解析原索引文件得到的结束分片的索引地址记录在目标视频对应的索引文件中,以便于在播放目标视频时,直接根据对应的索引文件中记录的结束分片的索引地址请求结束分片并播放。

比如,参照图5,若结束时间点n恰好为t3,那么视频存储服务器需要将原视频的第2个视频分片直接作为目标视频对应的结束分片,并根据该结束分片的索引地址生成目标视频对应的索引文件。

在一个实施例中,上述方法还包括:将起始目标分片与结束目标分片之间的视频分片作为中间目标分片;根据目标分片的索引地址,生成目标视频对应的索引文件,包括:解析原索引文件,得到原视频的视频分片对应的索引地址;直接将中间目标分片作为目标视频对应的中间分片;根据中间分片的索引地址,生成目标视频对应的索引文件。

具体地,视频存储服务器从原视频的视频分片中确定了起始目标分片以及结束目标分片后,还可以将在起始目标分片与结束目标分片之间的视频分片作为中间目标分片,而整个中间目标分片可以作为构成目标视频的一部分,也就是将中间目标分片直接作为目标视频对应的中间分片,实现对原视频的视频分片的复用,能够节省存储空间。因此,在这种情况下,视频存储服务器可以直接将解析原索引文件得到的中间分片的索引地址记录在目标视频对应的索引文件中,以便于在播放目标视频时,直接根据对应的索引文件中记录的中间分片的索引地址请求中间分片并播放。

当然,当确定的起始目标分片与结束目标分片是原视频的相邻视频分片时,则起始目标分片与结束目标分片之间不存在其它视频分片,这种情况下只需要根据起始目标分片与结束目标分片生成目标视频。

如图6所示,为一个实施例中根据原视频生成的目标视频的视频分片的示意图。参照图6可知,若起始时间点m∈(0,t1),n∈(t2,t3),那么需要根据原视频的第0个视频分片重新生成目标视频的起始分片,将第1个视频分片作为中间分片直接复用,还需要根据第2个视频分片重新生成目标视频的结束分片。目标视频对应的索引文件中需要存储用于查找到起始分片、结束分片的存储地址,还需要存储用于查找到第1个视频分片的索引地址。

在一个实施例中,上述方法还包括:获取目标视频的起始分片;从起始分片对应的播放画面中,截取与起止时间点中的起始时间点对应的截图;将截图作为目标视频的视频封面,并将视频封面和目标视频的视频标识关联。

在本实施例中,视频存储服务器还可以存储生成的目标视频的视频封面,以便于将生成的目标视频与该视频封面链接后进行展示。具体地,视频存储服务器可以获取目标视频的起始分片,从起始分片对应的播放画面中,截取出播放画面作为视频封面,该播放画面可以是与起始时间点对应的截图。进一步地,视频存储服务器可以截图作为目标视频的视频封面,并将该视频封面与目标视频的视频标识关联。

在一个实施例中,上述方法还包括:获取终端发送的视频查询请求;响应于视频查询请求,向终端返回目标视频的视频封面,以使终端在视频播放入口页面中展示目标视频的视频封面。

这里的终端可以是安装了视频播放器的用户终端,视频存储服务器可以接收终端发送的视频查询请求,从视频查询请求中提取视频关键字,并向终端返回与该视频关键字相关的原视频。可选地,视频存储服务器还可以返回与原视频相关的目标视频对应的视频封面。这样,终端就可以通过视频播放器展示原视频以及与原视频关联的目标视频对应的视频封面。

当然,视频存储服务器也可以单独将生成的各个目标视频对应的视频封面推送至终端,那么终端就可以在视频播放入口页面中展示目标视频对应的视频封面,当用户点击目标视频对应的视频封面时,终端可以获取视频封面所链接的目标视频对应的索引文件,根据索引文件得到目标视频的目标分片对应的索引地址,根据索引地址请求目标分片,并根据目标分片播放目标视频。

如图7所示,为一个实施例中展示目标视频对应的视频封面的界面示意图。参照图7,在视频播放入口页面700中,显示了多个视频封面702,每个视频封面链接至对应的目标视频,视频封面中还显示了视频标题704。当用户点击某个目标视频对应的视频封面时,可以实现播放目标视频。

在一个实施例中,视频存储服务器可以获取视频编辑服务器发送的视频查询请求,根据视频查询请求返回原视频对应的视频封面以及与原视频相关的目标视频对应的视频封面。可选地,还可以返回与目标视频相关的起止时间点、视频标题等信息,这样,视频编辑服务器可以展示视频列表信息,以便于根据当前的原视频生成其它起止时间点对应的目标视频。

如图8所示,为一个具体的实施例中视频生成方法的流程示意图,该视频生成方法由视频存储服务器执行,具体包括以下步骤:

s802,接收目标视频请求。

s804,解析目标视频请求,得到待生成的目标视频在原视频中的起始时间点和结束时间点。

s806,获取原视频对应的原索引文件。

s808,解析原索引文件,得到原视频的视频分片对应的播放时长和索引地址。

s810,按照原视频的视频分片的播放顺序,依次将视频分片对应的播放时长进行拼接,得到各视频分片在原视频中的播放时间段。

s812,将包含起始时间点的播放时间段对应的视频分片作为起始目标分片。

s814,判断起始时间点是否为起始目标分片对应的播放时间段的起始点;若否则执行步骤s818;若是则执行步骤s816。

s816,根据起始目标分片对应的索引地址,获取起始目标分片;按照起始时间点、与起始目标分片对应的播放时间段的结束点,从起始目标分片中切分视频,得到目标视频对应的起始分片;存储起始分片,并根据起始分片的存储地址生成目标视频对应的索引文件。

s818,将起始目标分片作为目标视频对应的起始分片;根据起始分片的索引地址,生成目标视频对应的索引文件。

s820,将包含结束时间点的播放时间段对应的视频分片作为结束目标分片。

s822,判断结束时间点是否为结束目标分片对应的播放时间段的结束点,若是则执行步骤s824;若否则执行步骤s826。

s826,根据结束目标分片对应的索引地址,获取结束目标分片;按照与结束目标分片对应的播放时间段的起始点、结束时间点,从结束目标分片中切分视频,得到目标视频对应的结束切片;存储结束分片,并根据结束分片的存储地址生成目标视频对应的索引文件。

s824,将结束目标分片作为目标视频对应的结束分片;根据结束分片的索引地址,生成目标视频对应的索引文件。

s828,将起始目标分片与结束目标分片之间的视频分片作为中间目标分片;

s830,直接将中间目标分片作为目标视频对应的中间分片;根据中间分片的索引地址,生成目标视频对应的索引文件。

s832,为目标视频分配视频标识,将索引文件与视频标识关联。

s834,从起始分片对应的播放画面中,截取与起止时间点中的起始时间点对应的截图。

s836,将截图作为目标视频的视频封面,并将视频封面与目标视频的视频标识关联。

s838,获取终端发送的视频查询请求。

s840,响应于视频查询请求,向终端返回目标视频的视频封面,以使终端在视频播放入口页面中展示目标视频的视频封面。

图8为一个实施例中视频生成方法的流程示意图。应该理解的是,虽然图8的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图8中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

图9为另一个实施例中视频生成方法的应用环境图。参照图9,该视频生成方法应用于视频处理系统。该视频处理系统包括视频编辑服务器910、视频存储服务器920、视频应用服务器930与终端940。

视频编辑服务器910和视频存储服务器920通过网络连接。视频编辑服务器910可以用于向视频存储服务器920发送目标视频请求,目标视频请求携带待生成的目标视频在原视频中的起止时间点,视频存储服务器120可以用于接收并解析目标视频请求,得到待生成的目标视频在原视频中的起止时间点;从原视频的视频分片中确定与起止时间点匹配的目标分片,根据目标分片的索引地址,生成目标视频对应的索引文件;为目标视频分配视频标识,并将索引文件和视频标识关联。视频存储服务器920还可以用于将视频标识返回至视频编辑服务器910。

视频编辑服务器910与视频应用服务器930通过网络连接,视频编辑服务器910可以用于将视频标识发送至视频应用服务器930。

视频应用服务器930与终端940通过网络连接,视频应用服务器930可以用于接收终端940发送的视频查询请求,响应视频查询请求,向终端940返回目标视频对应的视频标识,终端940就可以用于根据视频标识获取对应的索引文件,并解析索引文件,得到目标视频的目标分片对应的索引地址;根据索引地址请求目标分片,并根据目标分片播放目标视频。

视频编辑服务器910、视频存储服务器920和视频应用服务器930可以集成在一起或者是多个服务器组成的服务器集群来实现。终端940具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。

如图10所示,在一个实施例中,提供了一种视频播放方法。本实施例主要以该方法应用于上述图9中的终端940举例说明。参照图10,该视频播放方法具体包括如下步骤:

s1002,进入视频播放入口页面。

其中,视频播放入口页面可用于容纳多个视频封面,终端可以提高视频播放入口页面,并在该视频播放入口页面中显示大量的视频封面。每个视频封面链接至对应的视频数据。在一个具体的应用场景中,用户可启动终端上安装的视频播放器,进入视频播放器所提供的视频播放入口页面。

s1004,在视频播放入口页面中展示视频封面。

s1006,在视频封面中触发视频播放事件。

其中,视频播放事件是在视频封面中触发的播放视频的事件。视频播放事件可以是用户触发的针对视频封面的按压操作、点击操作或滑动操作等。视频封面是用于播放该视频封面所连接的视频的入口,用户可通过触发视频播放事件进入到该视频封面所链接的视频的播放页面,在播放页面中播放视频。

s1008,响应于视频播放事件,获取视频封面所链接的目标视频对应的索引文件,并根据索引文件得到目标视频的目标分片对应的索引地址;其中,目标分片是从原视频的视频分片中确定的与起止时间点匹配的视频分片,起止时间点是目标视频在原视频中起止处的时间点。

其中,目标视频是基于起止时间点从原视频的视频分片中确定的目标分片生成的。具体可以是按照前文实施例中所提供的视频生成方法得到的,在此不再重复说明。目标视频的索引文件中记录了目标视频的各个目标分片的索引地址,终端可以在检测到视频播放事件后,根据该视频封面所连接的目标视频对应的索引文件,解析得到目标视频的各个目标分片对应的索引地址。

s1010,根据索引地址请求目标分片,并根据目标分片播放目标视频。

具体地,终端可以根据索引文件中记录的各个目标分片的索引地址依次获取目标分片后进行解码,实现完整地播放整部目标视频。

上述视频播放方法,直接从原视频的视频分片中确定待生成的目标视频的目标分片,根据目标分片的索引地址生成目标视频对应的索引文件,可以在需要播放视频时,直接根据目标分片的索引地址播放目标视频,实质上是原视频与目标视频复用了若干视频分片,相比于从原视频中剪辑出一段视频,再人为切分得到目标分片后另行存储目标分片的方式,不仅能够大大地减少存储空间,并且也不需要人工去剪辑、切分视频。

在一个实施例中,如图11所示,提供了一种视频生成装置1100,该装置包括接收模块1102、解析模块1104、目标分片确定模块1106、索引文件生成模块1108和存储模块1110,其中:

接收模块1102,用于接收目标视频请求;

解析模块1104,用于解析目标视频请求,得到待生成的目标视频在原视频中的起止时间点;

目标分片确定模块1106,用于从原视频的视频分片中确定与起止时间点匹配的目标分片;

索引文件生成模块1108,用于根据目标分片的索引地址,生成目标视频对应的索引文件;

存储模块1110,用于为目标视频分配视频标识,并将索引文件和视频标识关联。

在一个实施例中,目标分片确定模块1106还用于获取原视频对应的原索引文件;解析原索引文件,得到原视频的视频分片对应的播放时长;按照原视频的视频分片的播放顺序,依次将视频分片对应的播放时长进行拼接,得到各视频分片在原视频中的播放时间段;根据包含起止时间点的播放时间段所对应的视频分片确定目标分片。

在一个实施例中,起止时间点包括起始时间点和结束时间点;目标分片确定模块1106还用于将包含起始时间点的播放时间段对应的视频分片作为起始目标分片;将包含结束时间点的播放时间段对应的视频分片作为结束目标分片。

在一个实施例中,索引文件生成模块1108还用于解析原索引文件,得到原视频的视频分片对应的索引地址;当起始时间点处于起始目标分片对应的播放时间段之中时,则根据起始目标分片对应的索引地址,获取起始目标分片;按照起始时间点、与起始目标分片对应的播放时间段的结束点,从起始目标分片中切分视频,得到目标视频对应的起始分片;存储起始分片,并根据起始分片的存储地址生成目标视频对应的索引文件。

在一个实施例中,索引文件生成模块1108还用于当起始时间点为起始目标分片对应的播放时间段的起始点时,则将起始目标分片作为目标视频对应的起始分片;根据起始分片的索引地址,生成目标视频对应的索引文件。

在一个实施例中,索引文件生成模块1108还用于解析原索引文件,得到原视频的视频分片对应的索引地址;当结束时间点处于结束目标分片对应的播放时间段之中时,则根据结束目标分片对应的索引地址,获取结束目标分片;按照与结束目标分片对应的播放时间段的起始点、结束时间点,从结束目标分片中切分视频,得到目标视频对应的结束切片;存储结束分片,并根据结束分片的存储地址生成目标视频对应的索引文件。

在一个实施例中,索引文件生成模块1108还用于当结束时间点为结束目标分片对应的播放时间段的结束点时,则将结束目标分片作为目标视频对应的结束分片;根据结束分片的索引地址,生成目标视频对应的索引文件。

在一个实施例中,目标分片确定模块1106还用于将起始目标分片与结束目标分片之间的视频分片作为中间目标分片;索引文件生成模块1108还用于解析原索引文件,得到原视频的视频分片对应的索引地址;直接将中间目标分片作为目标视频对应的中间分片;根据中间分片的索引地址,生成目标视频对应的索引文件。

在一个实施例中,视频生成装置1100还包括视频封面生成模块,用于获取目标视频的起始分片;从起始分片对应的播放画面中,截取与起止时间点中的起始时间点对应的截图;将截图作为目标视频的视频封面,并将视频封面和目标视频的视频标识关联。

在一个实施例中,视频生成装置1100还包括视频查询请求获取模块,用于获取视频查询请求;响应于视频查询请求,返回目标视频的视频封面,以使终端在视频播放入口页面中展示目标视频的视频封面。

上述视频生成装置1100,直接从原视频的视频分片中确定待生成的目标视频的目标分片,根据目标分片的索引地址生成目标视频对应的索引文件,并将索引文件与为目标视频分配的视频标识关联后,可以在需要播放视频时,直接根据目标分片的索引地址播放目标视频,实质上是原视频与目标视频复用了若干视频分片,相比于从原视频中剪辑出一段视频,再人为切分得到目标分片后另行存储目标分片的方式,不仅能够大大地减少存储空间,并且也不需要人工去剪辑、切分视频。

在一个实施例中,如图12所示,提供了一种视频播放装置1200,该装置包括展示模块1202、获取模块1204、索引地址获取模块1206和播放模块1208,其中:

展示模块1202,用于进入视频播放入口页面;在视频播放入口页面中展示视频封面;

获取模块1204,用于在视频封面中触发视频播放事件;

索引地址获取模块1206,用于响应于视频播放事件,获取视频封面所链接的目标视频对应的索引文件,并根据索引文件得到目标视频的目标分片对应的索引地址;其中,目标分片是根据原视频的视频分片中与起止时间点匹配的视频分片确定的,起止时间点是目标视频在原视频中起止处的时间点;

播放模块1208,用于根据索引地址请求目标分片,并根据目标分片播放目标视频。

上述视频播放装置1200,直接从原视频的视频分片中确定待生成的目标视频的目标分片,根据目标分片的索引地址生成目标视频对应的索引文件,可以在需要播放视频时,直接根据目标分片的索引地址播放目标视频,实质上是原视频与目标视频复用了若干视频分片,相比于从原视频中剪辑出一段视频,再人为切分得到目标分片后另行存储目标分片的方式,不仅能够大大地减少存储空间,并且也不需要人工去剪辑、切分视频。

图13示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的视频存储服务器120或图9中的视频存储服务器920。如图13所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现视频生成方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行视频生成方法。

图14示出了另一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图9中的终端940。如图14所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现视频播放方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行视频播放方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图13、图14中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,本申请提供的视频生成装置1100可以实现为一种计算机程序的形式,计算机程序可在如图13所示的计算机设备上运行。计算机设备的存储器中可存储组成该视频生成装置的各个程序模块,比如,图11所示的接收模块1102、解析模块1104、目标分片确定模块1106、索引文件生成模块1108和存储模块1110。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的视频生成方法中的步骤。

例如,图13所示的计算机设备可以通过如图11所示的视频生成装置中的接收模块1102执行步骤s202。计算机设备可通过解析模块1104执行步骤s204。计算机设备可通过目标分片确定模块1106执行步骤s206。计算机设备可通过索引文件生成模块1108执行步骤s208。计算机设备可通过存储模块1110执行步骤s210。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述视频生成方法的步骤。此处视频生成方法的步骤可以是上述各个实施例的视频生成方法中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述视频生成方法的步骤。此处视频生成方法的步骤可以是上述各个实施例的视频生成方法中的步骤。

在一个实施例中,本申请提供的视频播放装置1200可以实现为一种计算机程序的形式,计算机程序可在如图14所示的计算机设备上运行。计算机设备的存储器中可存储组成该视频播放装置的各个程序模块,比如,图12所示的展示模块1202、获取模块1204、索引地址获取模块1206和播放模块1208。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的视频播放方法中的步骤。

例如,图14所示的计算机设备可以通过如图12所示的视频播放装置中的展示模块1202执行步骤s1002和s1004。计算机设备可通过获取模块1204执行步骤s1006。计算机设备可通过索引地址获取模块1206执行步骤s1008。计算机设备可通过播放模块1208执行步骤s1010。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述视频播放方法的步骤。此处视频播放方法的步骤可以是上述各个实施例的视频播放方法中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述视频播放方法的步骤。此处视频播放方法的步骤可以是上述各个实施例的视频播放方法中的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1