一种视频播放方法及装置与流程

专利2022-06-29  66


本申请涉及通信技术领域,尤其涉及一种视频播放方法及装置。



背景技术:

随着多媒体技术与网络技术的快速发展,数字视频迅速增长;各个视频平台之间的竞争日益激烈,视频平台为了能够提升用户体验,吸引更多用户关注视频内容,通常会在视频中较为精彩在位置上进行标注,例如,在视频的进度条上进行打点,形成多个打点位置,用户在触动或点击某一个打点位置时,会在该打点位置处显示该打点位置处视频内容的文字信息,这样有利于用户可以在较短的时间内切换到想要观看的位置,也可以保证用户能够较快的发现视频中较为精彩的部分。

但由于视频界面的限制,为了不影响用户正常观看视频,显示的文字信息通常是较为简短的语句,对于一些情节复杂的电影、电视剧,这些简短的语句所能表述的内容有限,不能使用户较好对视频内容有所了解,文字信息并不能很好的对视频内容进行概括,影响用户体验。



技术实现要素:

本申请提供一种视频播放方法及装置,用以解决现有技术中显示的文字信息并不能很好的对视频内容进行概括,影响用户体验的问题。

第一方面,本申请实施例提供了一种视频播放方法,所述方法包括:首先,服务器会接收到终端设备的第一请求,所述第一请求用于请求所述终端设备需要播放的视频地址;所述服务器在接收到所述第一请求后,可以确定所述视频地址和视频的打点信息,之后将所述视频地址和所述打点信息携带在所述第一响应中,之后向所述终端设备发送第一响应,所述打点信息包括所述视频的打点位置和所述打点位置对应的视频片段的存储地址。

通过上述方法,所述终端设备在需要播放视频时,可以与所述服务器进行交互获取视频地址,同时也获取视频的打点信息,且所述打点信息中包括所述视频的打点位置对应的视频片段的存储地址,所述终端设备可以在播放视频时,播放所述打点位置处的视频片段,能够更直观的显示所述打点位置处的视频内容,可以有效改善用户体验。

在一种可能的设计中,所述服务器向所述终端设备发送第一响应,所述终端设备可与所述服务器交互,获取所述打点位置对应的视频片段,具体的,所述服务器可以先接收所述终端设备发送第二请求,所述第二请求用于请求所述打点位置对应的视频片段,且所述第二请求包括所述打点位置对应的视频片段的存储地址;之后,所述服务器根据所述打点位置对应的视频片段的存储地址获取所述打点位置对应的视频片段,再向所述终端设备发送第二响应,所述第二响应包括所述打点位置对应的视频片段。

通过上述方法,所述终端设备在需要获取视频片段时,可以通过与所述服务器交互的方式,根据所述打点位置对应的视频片段的存储地址可以较为灵活、便捷的获取所述视频片段。

在一种可能的设计中,所述服务器向所述终端设备发送第一响应之前,所述服务器需要先确定所述打点信息,也就是确定所述打点位置和所述打点位置对应的视频片段。具体过程如下:所述服务器先将所述视频分割为多个视频片段;之后,所述服务器基于预设的神经网络模型,确定每个视频片段的精彩度;再根据所述每个视频片段的精彩度选取n个视频片段;选取了n个视频片段后,所述服务器根据所述n个视频片段在所述视频中的位置确定所述视频的n个打点位置,如此,其中一个所述打点位置是与所述n个视频片段中的一个视频片段对应的。

通过上述方法,确定的打点位置为所述视频中与精彩度相关的视频片段所在的位置,使得所述终端设备可以显示较为精彩的视频片段,可以方便用户较快的浏览到所述视频中的精彩片段。

在一种可能的设计中,所述服务器基于预设的神经网络模型,确定每个视频片段的精彩度时,可以先基于预设的神经网络模型,提取所述每个视频片段的第一特征,所述第一特征包括下列的部分或全部:帧序列的时间特征,帧序列的空间特征;也就是说,所述第一特征是所述视频片段的本身属性。之后,所述服务器根据所述每个视频片段的第一特征确定所述每个视频片段的精彩度。

通过上述方法,所述服务器可以从所述视频片段的本身属性确定精彩度,能够较为客观的反映所述视频片段的精彩程度(可以简称为精彩度)。

在一种可能的设计中,所述服务器将视频分割为多个视频片段的方式有许多种,下面列举其中一种:

所述服务器先对所述视频进行镜头分割,进行了镜头分割之后,可以获得多组图像帧,其中,每组图像帧包括连续的多帧图像;之后,所述服务器将所述多组图像帧合成为一个或多个预设长度的视频片段。

通过上述方法,先进行镜头分割后再合成视频片段,镜头分割可以确保切割后不会影响后续合成的视频片段内容的完整性,可以较好的将视频片段提供给用户。

在一种可能的设计中,所述服务器将视频分割为多个视频片段的方式有许多种,下面列举其中另一种:

所述服务器先对所述视频进行镜头分割,获得多组图像帧,其中,每组图像帧包括连续的多帧图像;之后,将多组图像帧中显示的场景或人物相似的图像帧合成为一个或多个视频片段,也就是说,一个所述视频片段中的任意相邻两帧图像的相似度在预设范围内。

通过上述方法,所述服务器可以提取将相似的场景或人物的图像帧合成为视频片段,使得视频片段显示的内容相关性较强,可以为用户提供更好的观看体验。

第二方面,本申请实施例提供了一种视频播放方法,所述方法包括:首先,终端设备确定需要播放视频,或确定之后会有播放视频的需求后,向服务器发送第一请求,之后,再接收所述服务器发送的第一响应,所述第一请求用于请求所述终端设备需要播放的视频地址,所述第一响应中包括所述视频地址和视频的打点信息,所述打点信息包括所述视频的打点位置和所述打点位置对应的视频片段的存储地址;在获取了所述视频地址和所述打点信息后,所述终端设备可以根据所述视频地址获取所述视频,还可以根据所述打点位置对应的视频片段的存储地址在所述打点位置上加载对应的视频片段;在加载了所述视频片段后,可以播放所述视频和所述视频片段。

通过上述方法,所述终端设备在播放所述视频时,也可以显示所述视频的打点位置对应的视频片段,视频片段相较于文字信息更加直观,可以更加方便、快捷且客观的使用户了解视频的内容。

在一种可能的设计中,所述终端设备根据所述打点位置对应的视频片段的存储地址在所述打点位置上加载对应的视频片段时,可以通过与所述服务器的交互,获取所述视频片段,并进行加载,首先,所述终端设备可以向所述服务器发送第二请求,所述第二请求用于请求所述打点位置对应的视频片段,所述第二请求包括所述打点位置对应的视频片段的存储地址;之后,所述终端设备会接收到所述服务器发送的第二响应,所述第二响应包括所述打点位置对应的视频片段;在接收到所述第二响应后,所述终端设备再根据所述第二响应在所述打点位置上加载对应的视频片段。

通过上述方法,所述终端设备在需要获取视频片段时,可以通过所述服务器进行交互,能够更加灵活、便捷从所述服务器获取所述视频片段。

在一种可能的设计中,所述终端设备播放所述视频过程中,显示距离当前播放位置最近的至少一个所述打点位置对应的视频片段。

通过上述方法,可以较方便的向用户显示即将要播放的视频内容,且显示视频片段的方式可以使用户更加方便的了解视频内容。

在一种可能的设计中,所述终端设备播放所述视频时,可以在接收到所述打点位置的触发操作后,播放所述打点位置对应的视频片段。

通过上述方法,可以较方便和直观的向用户显示想要获知的视频内容,可以较好的提高用户体验。

第三方面,本申请实施例提供了一种视频片段生成方法,所述方法包括:首先,服务器可以先将视频分割为多个视频片段;之后,所述服务器再基于预设的神经网络模型,确定每个视频片段的精彩度;并且所述服务器还可以根据所述每个视频片段的精彩度从所述多个视频片段选取n个视频片段;再对所述n个视频片段进行视频合成,例如可以合成一个短视频,所述服务器还可以向所述终端设备提供所述短视频。

通过上述方法,所述预设的神经网络模型确定的视频片段的精彩度更加客观,使得所述服务器可以将所述视频中较为精彩的部分提取并进行视频合成,还可以通过所述终端设备播放给用户观看,可以使得用户较快、较直观的获知视频内容。

第四方面,本申请实施例提供了一种视频片段生成方法,所述方法包括:首先,服务器可以先将视频分割为多个视频片段;之后,所述服务器再基于预设的神经网络模型,确定每个视频片段的精彩度;且所述服务器可以根据所述每个视频片段的精彩度从所述多个视频片段选取n个视频片段;之后,所述服务器可以保存所述n个视频片段。所述服务器还可以将保存的所述n个视频片段分享给所述终端设备。

通过上述方法,所述预设的神经网络模型确定的视频片段的精彩度可以更直接的反映出视频片段的精彩程度,所述服务器中可以保存所述视频中较为精彩的视频片段,并可以通过终端设备向用户展示,可以提高所述视频对用户的吸引力。

第五方面,本申请实施例还提供了一种服务器,有益效果可以参见第一方面的描述此处不再赘述。所述服务器具有实现上述第一方面的方法实例中行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。在一个可能的设计中,所述服务器的结构中包括接收单元和发送单元,还可以包括处理单元,这些单元可以执行上述第一方面方法示例中的相应功能,具体参见方法示例中的详细描述,此处不做赘述。

第六方面,本申请实施例还提供了一种终端设备,有益效果可以参见第二方面的描述此处不再赘述。所述终端设备具有实现上述第二方面的方法实例中行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。在一个可能的设计中,所述终端设备的结构中包括发送单元、接收单元、加载单元和播放单元,这些单元可以执行上述第二方面方法示例中的相应功能,具体参见方法示例中的详细描述,此处不做赘述。

第七方面,本申请实施例还提供了一种服务器,有益效果可以参见第三方面的描述此处不再赘述。所述服务器具有实现上述第三方面的方法实例中行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。在一个可能的设计中,所述服务器的结构中包括分割单元、确定单元、选取单元以及合成单元,还可以包括存储单元,这些单元可以执行上述第三方面方法示例中的相应功能,具体参见方法示例中的详细描述,此处不做赘述。

第八方面,本申请实施例还提供了一种服务器,有益效果可以参见第四方面的描述此处不再赘述。所述服务器具有实现上述第四方面的方法实例中行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。在一个可能的设计中,所述服务器的结构中包括分割单元、确定单元、选取单元以及存储单元,这些单元可以执行上述第四方面方法示例中的相应功能,具体参见方法示例中的详细描述,此处不做赘述。

第九方面,本申请实施例还提供了一种服务器,有益效果可以参见第一方面的描述此处不再赘述。所述服务器的结构中包括处理器,还可以包括收发器或存储器,所述处理器被配置为支持所述终端设备执行上述第一方面方法中相应的功能。所述存储器与所述处理器耦合,其保存所述服务器必要的程序指令和数据。所述收发器,用于与其他设备进行通信。

第十方面,本申请实施例还提供了一种终端设备,有益效果可以参见第二方面的描述此处不再赘述。所述终端设备的结构中包括处理器和收发器,还可以包括存储器,所述处理器被配置为支持所述终端设备执行上述第二方面方法中相应的功能。所述存储器与所述处理器耦合,其保存所述终端设备必要的程序指令和数据。所述收发器,用于与其他设备进行通信,还可以包括显示器,用于接收所述处理器的指示,显示视频或视频片段。

第十一方面,本申请实施例还提供了一种服务器,有益效果可以参见第三方面的描述此处不再赘述。所述服务器的结构中包括处理器,还可以包括收发器或存储器,所述处理器被配置为支持所述终端设备执行上述第三方面方法中相应的功能。所述存储器与所述处理器耦合,其保存所述服务器必要的程序指令和数据。所述收发器,用于与其他设备进行通信。

第十二方面,本申请实施例还提供了一种服务器,有益效果可以参见第四方面的描述此处不再赘述。所述服务器的结构中包括处理器,还可以包括收发器或存储器,所述处理器被配置为支持所述终端设备执行上述第四方面方法中相应的功能。所述存储器与所述处理器耦合,其保存所述服务器必要的程序指令和数据。所述收发器,用于与其他设备进行通信。

第十三方面,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。

第十四方面,本申请还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。

第十五方面,本申请还提供一种计算机芯片,所述芯片与存储器相连,所述芯片用于读取并执行所述存储器中存储的软件程序,执行上述各方面所述的方法。

附图说明

图1为现有技术中打点位置显示文字信息的示意图;

图2为本申请提供的一种网络系统的架构示意图;

图3为本申请提供的一种视频播放方法示意图;

图4为本申请提供的神经网络结构示意图;

图5为本申请提供的一种视频片段生成的方法示意图;

图6为本申请提供的另一种视频片段生成的方法示意图;

图7为本申请提供的一种服务器的结构示意图;

图8为本申请提供的一种终端设备的结构示意图;

图9为本申请提供的一种服务器的结构示意图;

图10为本申请提供的一种服务器的结构示意图;

图11为本申请提供的一种终端设备的结构示意图;

图12为本申请提供的一种服务器的结构示意图。

具体实施方式

本申请提供了一种视频播放方法及装置,用以解决现有技术中显示的文字信息并不能很好的对视频内容进行概括,影响用户体验的问题。

为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述。方法实施例中的具体操作方法也可以应用于装置实施例或系统实施例中。

视频打点(videodotting)是指对视频中的关键帧进行描述,以对视频内容进行内容概括的过程,如图1所示,在现有的视频打点方案中,终端设备通常是在视频的进度条上设置一个或多个打点位置,打点位置上标注了该位置处视频内容的文字信息,用户可以通过滑动鼠标将光标移动至打点位置,此时,会在该打点位置处显示视频内容的文字信息,但通常视频内容的文字信息较为简洁,不能直观的反映出视频内容的精彩程度,容易使得用户错过一些较为精彩的画面,不能有效提高用户体验。

如图2所示,为本申请实施例提供的一种网络架构示意图,该网络架构中包括终端设备和服务器。

所述服务器是部署在云端的远程服务器,也可以是网络中设置的可以提供业务的服务器,所述服务器具有视频处理功能以及数据计算功能,例如所述服务器可以执行视频分割、视频片段的精彩度确定等功能;所述服务器可以是超多核服务器、部署有图形处理器(graphicsprocessingunit,gpu)集群的计算机、大型的分布式计算机、硬件资源池化的集群计算机等等,在本申请实施例中所述服务器可以生成打点信息,并在所述终端设备向所述服务器请求视频地址后,向所述终端设备发送视频地址和打点信息。

所述服务器还可以对视频进行分割,然后确定分割后得到一个或多个视频片段的精彩度,还可以从分割后的视频片段中选取较为精彩的多个视频片段进行视频合成,也可以保存较为精彩的视频片段。

所述服务器可以保存有所述终端设备所需的视频数据,其中包括视频的源数据,分割后的视频片段,每个视频片段的精彩度,视频合成后的视频(对应本申请实施例中的第一视频),以及动态图。

所述终端设备可以向所述服务器发起请求(在本申请实施例中对应第一请求以及第二请求),以便从所述服务器获取相关数据(如视频地址、打点信息、视频片段的存储地址、视频片段、视频合成后的视频、动态图等)。

所述终端设备在获得相关数据后,进行加载或显示等操作,例如,所述终端设备在获取所述视频地址后,会根据所述视频地址获取所述视频;当所述终端设备获取所述打点信息后,可以根据所述打点信息在所述视频的打点位置上加载视频片段,所述终端设备在加载了所述视频片段后,还可以播放所述视频片段;当所述终端设备获取所述视频合成后的视频或动态图,可以向用户显示视频合成后的视频或动态图。

本申请中的终端设备,又可称之为用户设备(userequipment,ue),可以部署在陆地上,包括室内或室外、手持或车载;也可以部署在水面上(如轮船等);还可以部署在空中(例如飞机、气球和卫星上等)。所述终端设备可以是手机(mobilephone)、平板电脑(pad)、带无线收发功能的电脑、虚拟现实(virtualreality,vr)设备、增强现实(augmentedreality,ar)设备、工业控制(industrialcontrol)中的无线设备、无人驾驶(selfdriving)中的无线设备、远程医疗(remotemedical)中的无线设备、智能电网(smartgrid)中的无线设备、运输安全(transportationsafety)中的无线设备、智慧城市(smartcity)中的无线设备、智慧家庭(smarthome)中的无线设备等等。

在本申请实施例中,服务器可以向所述终端设备提供需要播放的视频地址以及所述视频的打点信息,且所述打点信息中包括所述视频的打点位置和所述打点位置对应的视频片段的存储地址,使得所述终端设备可以基于所述打点信息在所述视频的打点位置上加载对应的视频片段,并进行播放,显然,相对于现有的打点方案中单纯的显示文字信息,在所述视频的打点位置显示视频片段,可以更加直观的反映出视频内容,能够有效的提升用户体验。下面基于如图2所示的网络系统,对本申请实施例提供的一种视频播放方法进行介绍,如图3所示,所述方法包括:

步骤301:终端设备向服务器发送第一请求,所述第一请求用于请求所述终端设备需要播放的视频地址。

所述终端设备在确定需要播放视频时,若在本地未存储所述视频,可以向所述服务器发送第一请求,以请求所述终端设备需要播放的视频地址,其中请求所述终端设备需要播放的视频地址的方式有多种,例如,可以在所述第一请求中携带有所述视频的标识信息,以及指示获取所述视频地址的信元,上述方式仅是举例,凡是可以请求所述终端设备需要播放的视频地址的方式均适用于本申请实施例。

步骤302:所述服务器接收所述终端设备的第一请求后,所述服务器向所述终端设备发送第一响应,所述第一响应包括视频地址和视频的打点信息,所述打点信息包括所述视频的打点位置和所述打点位置对应的视频片段的存储地址。

步骤303:所述终端设备根据所述视频地址获取所述视频,根据所述打点位置对应的视频片段的存储地址在所述打点位置上加载对应的视频片段。

步骤304:所述终端设备播放所述视频和所述视频片段。

所述服务器在接收到所述第一请求后,为了可以将所述视频地址和视频的打点信息发送给所述终端设备,所述服务器需要先对所述视频进行解析,生成打点信息,也就是说需要确定所述视频的打点位置和所述打点位置对应的视频片段。

在实际应用中,所述服务器生成打点信息的方式有许多种,本申请不做限定,凡是生成的打点信息中包括所述视频的打点位置和每个打点位置对应的视频片段的存储地址方式均适用于本申请实施例。

本申请实施例提供了一种生成打点信息的方式,下面对这种方式进行介绍:

首先,所述服务器可以先将所述视频分割为多个视频片段。本申请实施例中,并不限定所述服务器分割视频的方式,所述服务器可以将所述视频按预设的长度分割为多个视频片段;所述服务器也可以根据所述视频的所展示的内容,将所述视频分割为多个视频片段,每个视频片段所述展示的内容不同;例如,所述服务器可以将所述视频中所述显示的内容包括某一个特定场景或人物的片段分割出来,合成为一个视频片段;若所述视频中包括多个不同的场景或人物,则可以为分割为多个视频片段。

以下列举两种所述服务器分割视频获得视频片段的方式:

方式一、将所述视频进行分割获得多个预设长度的视频片段。

在这种方式中,所述服务器首先对所述视频进行镜头分割,获得多组图像帧,其中,每组图像帧包括连续的多帧图像。

通常,视频中的镜头类型分为两种:突变镜头、渐变镜头。突变镜头是指视频中的一组连续的相关联的图像帧直接切换到下一组连续的相关联的图像帧,中间没有过渡;渐变镜头是指视频中的一组图像帧通过色差或空间的效果,逐渐过渡到下一组图像帧。

所述服务器在对所述视频进行镜头分割时,根据视频的镜头类型对所述视频进行视频分割;在镜头分割的过程中,针对突变镜头,确定突变镜头中一组图像帧切换到下一组图像帧的节点,作为切割点,进行分割,将切割点的前一个图像帧作为该组图像帧的结束帧,切割点的下一个图像帧作为下一组图像帧的起始帧;针对渐变镜头,确定渐变镜头在一组图像帧切换到下一组图帧像的渐变区间中,将渐变区间的前一个图像帧作为该组图像帧的结束帧,渐变区间的后一个图像帧的作为下一组图像帧的起始帧。所述服务器在进行镜头分割时,可以采用使用直方图特征的差异性分割视频镜头,如利用快速镜头分割(fastshotsegmentation,fast)算法确定切割点实现镜头分割,也可以采用其他方法,如采用三维全卷积神经网络(3dimensionfullyconvolutionalnetworks,3d-fcn)进行镜头分割。

所述服务器在对所述视频进行镜头分割的过程中,在所述视频中确定多个切割点,进而获得了多组图像帧,每组图像帧中包括连续的多帧图像。

为区分不同组的图像帧,所述服务器可以通过镜头分割获取每组图像帧的起始帧的帧号(起始图像帧的帧号)和终止帧的帧号(结束图像帧的帧号),还可以确定出每组图像帧的起始时间戳和终止时间戳。

作为一种可选的实施方式,所述服务器在进行镜头分割后,还可以去除每组图像帧中的过渡图像,过渡图像包括下列图像帧的部分或全部:全黑或全白的图像帧、显示的场景或人物较为模糊的图像帧以及融合帧。

所述融合帧是指视频中两个不同的图像帧融合形成的图像帧,例如视频中,前一个图像画面逐渐消失或变暗,后一个图像画面逐渐明显或变亮,中间存在前后两个图像画面重叠的图像帧,该种图像帧即为融合帧。

在确定了多组图像帧后,所述服务器可以将所述多组图像帧合成为一个或多个预设长度的视频片段。

对于多组图像帧中的任一组图像帧,按照播放每组图像帧所需的时间长度(每组图像帧播放的时间跨度)与预设长度的关系可以将多组图像帧分为三种类型;类型一、时间长度大于预设长度的一组图像帧,也就是说该组图像帧所包括的图像帧的个数较多,该组图像帧可以展示多个情景,该组图像帧构成一个长镜头;类型二、时间长度小于预设长度,且图像帧的个数小于设定数值的一组图像帧,也就是说该组图像帧所包括的图像帧的个数较少,该组图像帧可能不足以展示一个完整的情景,该组图像帧形成短镜头;类型三、时间长度等于预设长度,或时间长度与预设长度的差值较小,属于预设范围内;在这种情况下,可以认为该组图像帧的时间长度约等于预设的长度,也就是说该组图像帧所包括的图像帧的个数也介于长镜头和短镜头包括的图像帧的个数之间,该组图像帧可以展示一个或几个情景,该组图像帧构成单个镜头。

在本申请实施例中,视频片段的预设长度指示的是播放所述视频片段的时长;且预设长度可以根据具体场景进行设置,本申请实施例并不限定设置的方式。

对于不同类型的任一组图像帧,所述服务器可以采用对应的方式合成一个或多个预设长度的视频片段;下面分别就不同类型的任一组图像帧合成视频片段的方法进行说明:

一、对于类型一的任一组图像帧。

由于类型一的任一组图像帧所包含的图像帧较多,该组图像帧的时间长度也较长,若该组图像帧的时间长度大于预设长度,则所述服务器可以将该组图像帧切分为一个或多个预设长度的视频片段。

将第i组图像帧切分后任一个视频片段fi m的起始帧、结束帧、起始时间以及结束时间可由如下公式确定:

其中,l表示预设的长度,在合成视频片段时,视频片段的长度并不一定可以严格的达到l,可以是比l大一些,或小一些,故设置δ表示长度增益,视频片段的长度则介于l-δ和l δ;fi表示第i个视频片段,sk表示视频中的第k组图像帧,(s(k n)_end_time-sk_start_time)>l δ,也就是说,该组图像帧大于预设的长度,其中,m=0,1,2,…,m′-2,m′=int((sk_end_time-sk_start_time)/l),,m'表示第i组图像帧可以切分获得的视频片段的数量;vfps表示视频帧率。f(i m)_start_frame_number表示第i m个视频片段的起始帧的帧号,sk_start_frame_number表示视频中的第k组图像帧的帧号。f(i m)_end_frame_number表示第i m个视频片段的结束帧的帧号,sk_end_time表示视频中的第k组图像帧的帧号的结束时间。

二、对于类型二的任一组图像帧。

由于类型二的任一组图像帧所包含的图像帧较少,该组图像帧的时间长度也较短,若该组图像帧的时间长度小于预设长度,则所述服务器可以将连续的多组图像帧合成为一个或多个预设长度的视频片段。

将多组图像帧合成的任一视频片段fi的起始帧、结束帧、起始时间以及结束时间可由如下公式确定:

其中,l-δ≤s(k n)_end_time-sk_start_time≤l δ,也就是说,连续的多组图像帧的总时间长度处于预设范围内,且与预设的长度相差较小,连续的多组图像帧中任一组图像帧的时间长度小于预设的长度。sk表示视频中的第k组图像帧,sk n表示视频中的第k n组图像帧,关于公式中的参数说明可参见前述说明,此处不再赘述。

三、对于类型三的任一组图像帧。

由于类型三的任一组图像帧所包含的图像帧数介于类型一的任一组图像帧数和类型二的任一组图像帧包括的图像帧数之间,该组图像帧的时间长度较长镜头来说较短,若该组图像帧的时间长度等于预设长度,或在一误差范围内可以看做等于预设长度,则所述服务器可以将该组图像帧合成为一个预设长度的视频片段。

将多组图像帧合成的任一个视频片段fi的起始帧、结束帧、起始时间以及结束时间可由如下公式确定:

其中,l-δ≤sk_end_time-sk_start_time≤l δ,该组图像帧的时间长度与预设长度可看做是相等的,关于公式中的参数说明可参见前述说明,此处不再赘述。

方式二、对视频进行分割获得一个或多个视频片段,其中任一所述视频片段中的任意相邻两帧图像的相似度在预设范围内,也就是说,一个所述视频片段所述展示的是一类场景或相似的人物。

在这种方式中,所述服务器也可以对所述视频进行镜头分割,获得多组图像帧,其中,每组图像帧包括连续的多帧图像。关于镜头分割的方式可参见方式一中关于镜头分割的相关描述,此处不再赘述。

之后,针对镜头分割形成的多组图像帧,可以将所述每组图像帧中展示的场景相似的图像帧合成为一个视频片段,若存在不同的场景,则针对不同的场景分别合成对应的一个视频片段,所述服务器可以将所述多组图像帧合成为多个视频片段。

所述服务器在合成视频片段时,需要确定多组图像帧中各个图像帧所展示的场景是否相似或相同,确定的方式有许多种,本申请实施例并不限定;例如所述服务器可以先提取镜头(如长镜头、短镜头以及单个镜头)的关键帧的视觉特征,利用预设的相似性判断标准,把时间相近、语义内容相关的镜头聚类成一个场景,之后合成为对应的视频片段;所述服务器可以采用3d-fcn提取镜头的关键帧的视觉特征,也可以采用视频帧颜色直方图方法提取镜头的关键帧的视觉特征等;所述服务器可以采用树形支持向量机(supportvectormachine,svm)进行镜头聚类。

在所述服务器在分割获得多个视频片段之后,所述服务器可以直接将每个视频片段在所述视频的起始位置作为所述视频的打点位置,此时每个打点位置对应一个视频片段;所述服务器也可以去掉所述多个视频片段中的部分视频片段,将剩余的视频片段中每个视频片段的起始位置作为所述视频的打点位置;所述服务器去除部分视频片段的方式本申请实施例并不限定,可以是随机去除,也可以去除所述多个视频片段中存在较多过渡镜头,且过渡镜头时间较长的视频片段,也可以根据实际应用场景去除视频片段。

分割获得多个视频片段后,直接确定所述视频的打点位置的方式仅是举例说明,事实上,所述服务器还可以采用其他方式更加精确的确定所述视频的打点位置,所述服务器可以先对每个视频片段的精彩程度进行评价,也就是先确定每个视频片段的精彩度,之后根据每个视频片段的精彩度选取视频片段,再确定所述视频的打点位置。

需要说明的是,本申请实施例中并不限定所述打点信息中包括的打点位置的数量,可以是一个也可以是多个。

针对一个视频片段的精彩程度,衡量的标准有许多种,例如,所述服务器在衡量一个视频片段的精彩程度时,可以依据该视频片段的观看次数,次数越多,该视频片段的精彩程度越高,也就是精彩度越高。在具体实施中,所述服务器可以调取各个视频片段的播放次数,将播放次数作为视频的精彩度,也可以通过预设的函数,将播放次数转换为一个十分制或百分制下的数值,作为该视频片段的精彩度,数值越大表征视频片段越精彩;又例如,所述服务器也可以根据该视频片段中用户发布评论(如弹幕)的数量,用户发布评论的数量越大,该视频片段的精彩程度越高,也就是精彩度越高,在具体实施中,所述服务器可以调取各个视频片段的户发布评论(如弹幕)的数量,将评论的数量作为视频的精彩度,也可以通过预设的函数,将评论的数量转换为一个十分制或百分制下的数值,作为该视频片段的精彩度,数值越大表征视频片段越精彩;又例如,以电影为例,在一个电影中较为精彩的部分通常是人物情感爆发或人物之间有剧烈打斗的场面,人物情感爆发会伴随有人物的声音音调或频率提升,人物之间有剧烈打斗的场面会伴随有一些剧烈的声响,所述服务器在确定各个视频片段的精彩程度时,可以根据各个视频片段在相同的播放声音下,声音的频率或音调确定视频片段的精彩程度。

在一种可能的实施方式中,所述服务器也可以通过各个视频片段的一些特征(如视频片段中每帧图像的亮度、颜色、纹理等图像特征)确定各个视频片段的精彩度,这就需要对每个视频片段进行分析。

在对每个视频片段进行分析时,所述服务器可以基于预设的神经网络模型,确定每个视频片段的精彩度。

首先,所述服务器可以基于预设的神经网络模型,提取所述每个视频片段的第一特征,所述第一特征包括下列的部分或全部:帧序列的时间特征,帧序列的空间特征。

其中,每个视频片段是由图像帧序列构成的,每个视频片段的空间特征对应的是帧序列的空间特征,是所述预设的神经网络模型提取的图像帧的外观特征,表征图像帧的色彩、亮度、对比度、清晰度、纹理等信息的丰富程度。

每个视频片段的时间特征对应的是帧序列的时间特征,是所述预设的神经网络模型提取的连续多个图像帧的外观特征,表征连续多个图像帧的色彩、亮度、对比度、清晰度、纹理等信息的相互关联性,以及多帧图像中物体的运动剧烈程度。

所述预设的神经网络模型是预先通过样本数据训练好的,可以输出视频片段的第一特征的模型,所述样本数据是已经标注了精彩程度的视频片段,通过训练,使得所述预设神经网络模型可以提取视频片段的第一特征。

所述预设的神经网络模型可以只提取视频片段的空间特征,也可以只提取视频片段的时间特征,也可以同时提取视频片段的空间特征和时间特征。

本申请实施例中并不限定所述预设的神经网络模型的中包括的网络层的数量及类型,凡是可以提取视频片段的空间特征的神经网络模型均适用于本申请实施例,下面介绍其中一种神经网络模型以及该神经网络模型的提取第一特征的过程。

如图4所示,为本申请实施例提供的一种神经网络模型的结构,该神经网络模型包括输入层、n个卷积层(为了区分每个卷积层,从输入到输出的方向进行命名,分别为第一卷积层、第二卷积层…第n卷积层)、全连接层、输出层。

对于任一个视频片段有多个图像帧构成,输入到如图4所示的神经网络模型的输入层,输入层将该视频片段中的多个图像帧分组,每个分组包括t个图像帧,之后输入到n个卷积层,每个卷积层对每个分组中的图像帧进行卷积操作(如3d卷积操作)和池化操作(如max-pooling池化),每进行一次卷积操作,每个分组中的图像帧减少两帧,直至到第n卷积层中,进行了卷积操作和池化操作后得到1个图像帧;之后将得到的1个图像帧输入到所述全连接层进行处理,所述全连接层将处理后的数据输入到所述输出层,所述输出层输出视频片段的第一特征(在图4中用hi表示)。

之后,所述服务器根据每个视频片段的第一特征确定每个视频片段的精彩度。

通常,所述预设的神经网络模型提取的第一特征为向量或者形式较为复杂的数据,并不能很直观的反映出视频片段的精度程度,所述服务器可以将提取的视频片段的第一特征转化为较为直观的视频片段精彩度,例如,通过预设的函数,将视频片段的第一特征转换为精彩度,本申请实施例并不限定函数的表征方式,凡是可以将视频片段的第一特征转换为精彩度的函数均适用于本申请实施例。

作为一种可能的实现方式,所述服务器可以通过softmax函数对第一特征进行转换:

其中,hi表示第i个视频片段的精彩度,hi∈(0,1),hi越接近1对应视频片段精彩度越高;wi表示第i个视频片段的第一特征,n表示视频片段的总数。

所述预设的神经网络模型也可以同时具有提取视频片段的第一特征的功能以及将所述视频片段的第一特征转换为精彩度的功能,使得所述预设的神经网络模型可以直接输出视频片段的精彩度。

所述服务器衡量一个视频片段的精彩程度,并确定一个视频片段的精彩度的方法有许多种,上述方式仅是举例说明,凡是可以确定视频片段精彩度的方式均适用于本申请实施例。

所述服务器在确定了每个视频片段的精彩度后,可以根据所述每个视频片段的精彩度选取n个视频片段,例如所述服务器可以选择精彩度从大到小排序之后的前n个视频片段,也可以设置预设的精度度范围,选择精彩度属于所述预设的精度度范围的n个视频片段。

在选取了n个视频片段之后,所述服务器可以根据所述n个视频片段在所述视频中的位置确定所述视频的n个打点位置,其中,一个所述打点位置与所述n个视频片段中的一个视频片段对应。

所述服务器在确定了打点位置和每个打点位置对应的视频片段后,可以将打点位置的信息和对应的视频片段存储在本地,也可以存储在其他服务器中。

其中,所述打点位置的信息是可以标识所述打点位置的信息,包括下列信息的部分或全部:

所述打点位置的标识、所述打点位置在所述视频的进度条上位置。

在一个视频中存在超过一个打点位置的情况下,为了区分不同的打点位置,可以对每个打点位置设置标识,如可以进行编号,也可以通过字母进行区分,也就是说,所述打点位置的标识可以是数字,也可以是字母,还可以是具体的时间点。凡是可以标识不同的所述打点位置的方式均适用于本申请实施例。

针对任一个视频片段,所述服务器可以根据该视频片段在所述视频中的位置确定所述视频的一个打点位置,所述服务器可以将该视频片段在所述视频中的起始位置作为该打点位置,在这种情况下,该视频片段在所述视频中的进度条上的位置为所述视频的一个打点位置,该打点位置与该视频片段存在对应关系。

所述服务器保存的所述打点位置对应的视频片段可以是带有音频,也可以不带有音频的,如动态图。

当所述终端设备向所述服务器发送所述第一请求后,所述服务器可以将携带有所述打点信息的第一响应发送给所述终端设备。

其中,所述第一响应还包括所述视频地址,所述视频地址为所述视频的存储地址。

在本申请实施例中,为了能够使得传输的信息占用的资源较少,所述服务器在所述第一响应中只携带了所述视频地址和所述视频的打点信息,所述终端设备可以在需要展示视频或视频片段时,在根据所述视频地址或所述视频的打点信息获取所述视频或视频片段。

可选的,所述终端设备为了能够更加灵活的播放所述视频或视频片段,也可以向所述服务器发送用于请求所述视频的请求,所述服务器可以反馈携带有所述视频、所述视频的打点位置、所述视频的打点位置对应的视频片段的响应消息,接收到所述响应消息后,所述终端设备可以灵活的选择展示所述视频和所述视频片段的时间和方式。

所述终端设备在接收到所述第一响应之后,为了获取所述视频,所述终端设备可以向所述服务器或存储有所述视频的设备发送获取所述视频的请求,所述请求中可以携带有所述视频地址。

所述终端设备在获取所述视频后,可以预先加载每个打点位置对应的视频片段,也可以预先加载部分打点位置对应的视频片段,如可以只加载在进度条上排序靠前(播放位置靠前)的打点位置对应的视频片段,当所述终端设备播放所述视频的播放到进度条靠后的位置时,再加载剩余的打点位置对应的视频片段。

作为一种可能的实施方式,所述终端设备也可以边播放所述视频,边在所述打点位置上加载对应的视频片段,例如,所述终端设备可以在播放所述视频时,加载距离当前播放位置最近的至少一个或多个所述打点位置对应的视频片段;所述终端设备也可以在播放所述视频时,按照所述打点位置在进度条上的顺序,依次在每个所述打点位置上加载对应的视频片段。

所述终端设备根据所述打点位置对应的视频片段的存储地址在所述打点位置上加载对应的视频片段具体可以包括:所述终端设备可以先向所述服务器发送第二请求,所述第二请求用于请求所述打点位置对应的视频片段,所述第二请求包括所述打点位置对应的视频片段的存储地址,所述终端设备随后接收所述服务器返回的视频片段。

作为一种可能的实施方式,所述第二请求中可以包括所述打点位置对应的视频片段的标识,便于服务器根据该标识获取对应的视频片段并返回给终端设备。

具体的,当所述终端设备只加载所述视频的部分打点位置对应的视频片段,所述第二请求可以用于请求所述视频的部分打点位置对应的视频片段,所述第二请求中包括所述视频的部分打点位置对应的视频片段的存储地址;当所述终端设备需要加载所述视频的所有打点位置对应的视频片段,所述第二请求用于请求所述视频的所有打点位置对应的视频片段,所述第二请求中包括所述视频的所有打点位置对应的视频片段的存储地址。

所述服务器在接收到所述第二请求后,根据所述第二请求,也就是说根据所述所述打点位置对应的视频片段的存储地址获取所述打点位置对应的视频片段,将所述打点位置对应的视频片段携带在第二响应中发送给所述终端设备,所述终端设备接收所述服务器发送的第二响应,即可播放对应的视频片段。

当所述终端设备播放所述视频和所述视频片段时,具体可以分为如下两种情况:

情况一、所述终端设备播放所述视频时,主动播放距离当前播放位置最近的至少一个所述打点位置对应的视频片段。

所述终端设备在可以在距离当前播放位置最近的至少一个所述打点位置处显示小窗口,分别播放对应的视频片段;也可以在所述视频的显示界面进行分屏显示,也就是所述视频的显示界面分为两部分,一部分播放当前的所述视频,另一部分播放距离当前播放位置最近的至少一个所述打点位置对应的视频片段。

情况二、所述终端设备在接收到所述打点位置的触发操作后,播放所述打点位置对应的视频片段。

所述打点位置的触发操作可以是检测到光标停留在所述打点位置处,也可以用户通过鼠标在所述打点位置处进行了单击或双击操作;也可以是检测到用户在所述打点位置处进行了触屏。

在接收到所述打点位置的触发操作后,可以在所述打点位置处显示小窗口,播放对应的视频片段。

需要说明的是,所述终端设备在播放所述视频和所述视频片段时,所述视频和所述视频片段可以是同时播放,如在情况一中,所述终端设备在可以大窗口播放所述视频,在小窗口播放所述视频片段,为了不影响用户体验,在播放所述视频片段时,可以只播放所述视频片段的图像,不播放声音;所述终端设备也可以先暂停播放所述视频,而是只播放所述视频片段,如在情况二中,所述终端设备在接收到所述打点位置的触发操作之后,可以在暂停播放所述视频,在所述打点位置处,展示小窗口,播放所述打点位置对应的视频片段(显示图像以及声音)。

如图5所示,本申请实施例还提供了一种视频片段生成方法,所述方法包括:

步骤501:服务器将视频分割为多个视频片段。

步骤502:所述服务器基于预设的神经网络模型,确定每个视频片段的精彩度。

所述服务器分割视频以及确定每个视频片段的精彩度的方式可以参见如图4所示的实施例中的相关说明,此处不再赘述。

步骤503:所述服务器根据所述每个视频片段的精彩度从所述多个视频片段选取n个视频片段。

所述服务器在选取n个视频片段时,选取的方式有许多种,例如可以选择精彩度从大到小排序之后的前n个视频片段,也可以设置预设的精度范围,选择精彩度属于所述预设的精度范围的n个视频片段。

步骤504:所述服务器对所述n个视频片段进行视频合成。

所述服务器在选取了所述n个视频片段可以将n个视频片段合成为一个视频(为方便说明,用第一视频表示视频合成后的视频)。所述服务器在进行视频合成之后,可以存储视频合成后的视频,例如可以将所述第一视频保存在本地,也可以保存在其他服务器。

之后,所述终端设备可以向所述服务器发送用于请求所述第一视频的地址的请求,所述服务器可以将所述第一视频的地址发送给所述终端设备。

当所述终端设备确定需要所述第一视频,如所述终端设备确定需要显示所述第一视频后,再向所述服务器发送携带有所述第一视频的地址的请求,所述服务器在接收到所述请求后,再将所述第一视频发送给所述终端设备。

作为一种可能的实施方式,所述服务器在对所述n个视频片段进行视频合成后,也可以直接将所述第一视频发送给所述终端设备;所述服务器和所述终端设备之间也可以省去获取所述第一视频的地址的交互,所述终端设备直接向所述服务器发送用于请求所述第一视频的请求,服务器直接将所述第一视频发送给所述终端设备。

如图6所示,本申请实施例还提供了一种视频片段生成方法,所述方法包括:

步骤601:服务器将视频分割为多个视频片段。

步骤602:所述服务器基于预设的神经网络模型,确定每个视频片段的精彩度。

步骤603:所述服务器根据所述每个视频片段的精彩度从所述多个视频片段选取n个视频片段。

所述服务器分割视频、确定每个视频片段的精彩度的方式以及选取视频片段的步骤可以参见如图5所示的实施例中的相关说明,此处不再赘述。

步骤604:所述服务器保存所述n个视频片段。

所述服务器保存的所述n个视频片段可以是带有音频,也可以不带有音频的,如动态图。

所述服务器在保存了所述n个视频片段后,可以将所述n个视频片段发送给所述终端设备,所述服务器可以直接发送,也可以在接收到所述终端设备的请求后发送,下面以所述服务器保存的所述n个视频片段为n个动态图为例进行说明:

所述终端设备可以向所述服务器发送用于请求所述动态图的地址的请求,所述服务器可以将所述动态图的地址发送给所述终端设备。

当所述终端设备确定需要所述动态图,如所述终端设备确定需要显示所述动态图后,再向所述服务器发送携带有所述动态图的地址的请求,所述服务器在接收到所述请求后,再将所述动态图发送给所述终端设备。

作为一种可能的实施方式,所述服务器也可以直接将所述动态图发送给所述终端设备;所述服务器和所述终端设备之间也可以省去获取所述动态图的地址的交互,所述终端设备直接向所述服务器发送用于请求所述动态图的请求,所述服务器直接将所述动态图发送给所述终端设备。

需要说明的是,所述终端设备和所述服务器交互中可以只获取所述n个动态图中的部分动态图,也可以获取全部所述n个动态图,本申请实施例中并不限定。

基于与方法实施例的同一发明构思,本发明实施例提供一种服务器,具体用于实现如图3所示的方法实施例中所述服务器执行的方法,该服务器的结构如图7所示,包括接收单元701和发送单元702;

所述接收单元701,用于接收终端设备的第一请求,所述第一请求用于请求所述终端设备需要播放的视频地址。

所述发送单元702,用于向所述终端设备发送第一响应,所述第一响应包括所述视频地址和视频的打点信息,所述打点信息包括所述视频的打点位置和所述打点位置对应的视频片段的存储地址。

在一种可能的实施方式中,所述服务器还可以将所述视频片段发送给所述终端设备。

具体的,所述服务器700还包括处理单元703,所述接收单元701会接收到所述终端设备发送第二请求,所述第二请求用于请求所述打点位置对应的视频片段,所述第二请求包括所述打点位置对应的视频片段的存储地址;在所述接收单元701接收到所述第二请求后,所述处理单元703根据所述打点位置对应的视频片段的存储地址获取所述打点位置对应的视频片段,之后所述发送单元702可以向所述终端设备发送第二响应,所述第二响应包括所述打点位置对应的视频片段。

为了可以将所述打点信息发送给所述终端设备,所述处理单元703在所述发送单元702向所述终端设备发送第一响应之前,可以用于确定所述打点位置和所述打点位置对应的视频片段;具体的,所述处理单元703先将所述视频分割为多个视频片段;之后,基于预设的神经网络模型,确定每个视频片段的精彩度;并根据所述每个视频片段的精彩度选取n个视频片段;选取了所述n个视频片段后,所述处理单元703可以根据所述n个视频片段在所述视频中的位置确定所述视频的n个打点位置,其中,一个所述打点位置与所述n个视频片段中的一个视频片段对应。

在一种可能的实施方式中,在所述处理单元703基于预设的神经网络模型,确定每个视频片段的精彩度的过程中,所述处理单元703可以基于预设的神经网络模型,提取所述每个视频片段的第一特征,所述第一特征包括下列的部分或全部:帧序列的时间特征,帧序列的空间特征;所述处理单元703之后再根据所述每个视频片段的第一特征确定所述每个视频片段的精彩度。

所述处理单元703将视频分割为多个视频片段的方式有许多种,下面列举其中两种:

方式一、分割获得的视频片段的长度统一,为预设长度。

所述处理单元703先根据视频的镜头类型对所述视频进行镜头分割,获得多组图像帧,其中,每组图像帧包括连续的多帧图像;之后将所述多组图像帧合成为一个或多个预设长度的视频片段。

方式二、分割获得的视频片段显示的是某种特定场景或某个特定人物。

所述处理单元703先根据对所述视频进行镜头分割,获得多组图像帧,其中,每组图像帧包括连续的多帧图像;之后,将所述多组图像帧合成为一个或多个视频片段,其中,一个所述视频片段中的任意相邻两帧图像的相似度在预设范围内。

基于与方法实施例的同一发明构思,本发明实施例提供一种终端设备,具体用于实现如图3所示的方法实施例中所述终端设备执行的方法,该终端设备的结构如图8所示,包括发送单元801、接收单元802、加载单元803和播放单元804,其中:

所述发送单元801,用于向服务器发送第一请求,所述第一请求用于请求所述终端设备需要播放的视频地址。

所述接收单元802,用于接收所述服务器发送的第一响应,所述第一响应中包括所述视频地址和视频的打点信息,所述打点信息包括所述视频的打点位置和所述打点位置对应的视频片段的存储地址。

所述加载单元803,用于根据所述视频地址获取所述视频,根据所述打点位置对应的视频片段的存储地址在所述打点位置上加载对应的视频片段。

所述播放单元804,用于播放所述视频和所述视频片段。

所述加载单元803根据所述打点位置对应的视频片段的存储地址在所述打点位置上加载对应的视频片段时,所述终端设备可以与所述服务器进行交互,具体的,所述发送单元801先向所述服务器发送第二请求,所述第二请求用于请求所述打点位置对应的视频片段,所述第二请求包括所述打点位置对应的视频片段的存储地址;之后,所述接收单元802再接收所述服务器发送的第二响应,所述第二响应包括所述打点位置对应的视频片段;在接收到所述第二响应后,所述加载单元803根据所述第二响应在所述打点位置上加载对应的视频片段。

作为一种可能的实施方式,所述播放单元804在播放所述视频片段时,可以在播放所述视频的过程中,显示距离当前播放位置最近的至少一个所述打点位置对应的视频片段。

作为另一种可能的实施方式,所述播放单元804在播放所述视频片段时,可以在接收到所述打点位置的触发操作后,播放所述打点位置对应的视频片段。

基于与方法实施例的同一发明构思,本发明实施例提供一种服务器,具体用于实现如图5所示的方法实施例中所述服务器执行的方法,该服务器的结构如图9所示,包括分割单元901、确定单元902、选取单元903以及合成单元904,其中:

所述分割单元901,用于将视频分割为多个视频片段。

所述确定单元902,用于基于预设的神经网络模型,确定每个视频片段的精彩度。

所述选取单元903,用于根据所述每个视频片段的精彩度从所述多个视频片段选取n个视频片段。

所述合成单元904,用于对所述n个视频片段进行视频合成。

可选的,所述服务器还可以包括存储单元,所述存储单元用于存储进行视频合成后的视频。

基于与方法实施例的同一发明构思,本发明实施例提供一种服务器,具体用于实现如图6所示的方法实施例中所述服务器执行的方法,该服务器的结构如图10所示,包括分割单元1001、确定单元1002、选取单元1003以及存储单元1004,其中:

所述分割单元1001,用于将视频分割为多个视频片段。

所述确定单元1002,用于基于预设的神经网络模型,确定每个视频片段的精彩度。

所述确定单元1003,用于根据所述每个视频片段的精彩度从所述多个视频片段选取n个视频片段。

所述存储单元1004,用于保存所述n个视频片段。

本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,另外,在本申请各个实施例中的各功能单元可以集成在一个处理器中,也可以是单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。

该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台终端设备(可以是个人计算机,手机,或者网络设备等)或处理器(processor)执行本申请各个实施例该方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

在本申请实施例中,所述服务器和所述终端设备均可以采用集成的方式划分各个功能模块的形式来呈现。这里的“模块”可以指特定asic,电路,执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,和/或其他可以提供上述功能的器件。

在一个简单的实施例中,本领域的技术人员可以想到所述终端设备可采用图8所示的形式。

如图11所示的终端设备1100,包括至少一个处理器1101,可选的,还可以包括收发器1102、存储器1103。

一种可能的实现方式中,所述终端设备1100还可以包括显示器1104。

存储器1103可以是易失性存储器,例如随机存取存储器;存储器也可以是非易失性存储器,例如只读存储器,快闪存储器,硬盘(harddiskdrive,hdd)或固态硬盘(solid-statedrive,ssd)、或者存储器1103是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器1103可以是上述存储器的组合。

本申请实施例中不限定上述处理器1101以及存储器1103之间的具体连接介质。本申请实施例在图中以存储器1103和处理器1101之间通过总线1105连接,总线1105在图中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。该总线1105可以分为地址总线、数据总线、控制总线等。为便于表示,图11中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

处理器1101可以具有数据收发功能,能够与其他设备进行通信,如在本申请实施例中,处理器1101可以向服务器发送第一请求或第二请求,也可以接收来自所述服务器的第一响应或第二响应,在如图11装置中,也可以设置独立的数据收发模块,例如收发器1102,用于收发数据;处理器1101在与其他设备进行通信时,可以通过收发器1102进行数据传输,如在本申请实施例中,处理器1101可以通过收发器1102向服务器发送第一请求或第二请求,也可以通过收发器1102接收来自所述服务器的第一响应或第二响应。

当所述终端设备采用图11所示的形式时,图11中的处理器1101可以通过调用存储器1103中存储的计算机执行指令,使得所述终端设备可以执行上述任一方法实施例中的所述终端设备执行的方法。

具体的,存储器1103中存储有用于实现图8中的发送单元、接收单元、加载单元和播放单元的功能的计算机执行指令,图8中的发送单元、接收单元、加载单元和显示单元的功能/实现过程均可以通过图11中的处理器1101调用存储器1103中存储的计算机执行指令来实现。

或者,存储器1103中存储有用于实现图8中的加载单元和播放单元的功能的计算机执行指令,图8中的加载单元和播放单元的功能/实现过程可以通过图11中的处理器1101调用存储器1103中存储的计算机执行指令来实现,图8的发送单元和接收单元的功能/实现过程可以通过图11中的收发器1102来实现。

存储器1103除用于存储计算机执行指令外,还可以用于存储图8中的发送单元、接收单元、加载单元和播放单元所需要的视频数据或打点信息,如可以存储所述视频地址、所述视频片段、所述视频或所述视频的打点信息。

其中,处理器1101在执行播放单元的功能时,如涉及播放视频或视频片段的操作,处理器1101可以通过终端设备中的显示器1104显示播放的视频或视频片段。

可选的,处理器1101在执行显示单元的功能时,也可以通过其他设备中的显示器显示视频或视频片段,如向其他设备发送播放指令,指示视频或视频片段。

在一个简单的实施例中,本领域的技术人员可以想到所述服务器可采用图12所示的形式。

如图12所示的服务器1200,包括至少一个处理器1201,可选的,还可以包括存储器1202、收发器1203。

存储器1202可以是易失性存储器,例如随机存取存储器;存储器也可以是非易失性存储器,例如只读存储器,快闪存储器,硬盘或固态硬盘、或者存储器1202是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器1202可以是上述存储器的组合。

本申请实施例中不限定上述处理器1201以及存储器1202之间的具体连接介质。本申请实施例在图中以存储器1202和处理器1201之间通过总线1204连接,总线1204在图中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。该总线1204可以分为地址总线、数据总线、控制总线等。为便于表示,图12中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

处理器1201可以具有数据收发功能,能够与其他设备进行通信,在如图12装置中,也可以设置独立的数据收发模块,例如收发器1203,用于收发数据;处理器1201在与其他设备进行通信时,可以通过收发器1203进行数据传输。

当所述服务器采用图12所示的形式时,图12中的处理器1201可以通过调用存储器1202中存储的计算机执行指令,使得所述服务器可以执行上述任一方法实施例中的所述服务器执行的方法。

具体的,存储器1202中存储有用于实现图7中的发送单元、接收单元和处理单元的功能的计算机执行指令,图7中的发送单元、接收单元和处理单元703的功能/实现过程均可以通过图12中的处理器1201调用存储器1202中存储的计算机执行指令来实现。或者,存储器1202中存储有用于实现图7中处理单元703的功能的计算机执行指令,图7中的处理单元703的功能/实现过程可以通过图12中的处理器1201调用存储器1202中存储的计算机执行指令来实现,图7的发送单元和接收单元的功能/实现过程可以通过图12中的收发器1203来实现。

存储器1202除用于存储计算机执行指令外,还可以用于存储图7中的发送单元、接收单元和处理单元所需要的视频数据或打点信息,如可以存储所述视频地址、所述视频片段、所述视频或所述视频的打点信息。

具体的,存储器1202中存储有用于实现图9中的分割单元、确定单元、选取单元以及合成单元的功能的计算机执行指令,图9中的分割单元、确定单元、选取单元以及合成单元的功能/实现过程均可以通过图12中的处理器1201调用存储器1202中存储的计算机执行指令来实现,可选的,所述处理器1201还可以通过所述收发机1203将所述第一视频发送给其他设备。

存储器1202除用于存储计算机执行指令外,还可以用于存储图9中的分割单元、确定单元、选取单元以及合成单元所需要的视频数据,如可以存储所述视频片段、所述视频、所述第一视频。

具体的,存储器1202中存储有用于实现图10中的分割单元、确定单元、选取单元以及存储单元的功能的计算机执行指令,图10中的分割单元、确定单元、选取单元以及存储单元的功能/实现过程均可以通过图12中的处理器1201调用存储器1202中存储的计算机执行指令来实现。可选的,所述处理器1201还可以通过所述收发机1203将所述保存的视频片段发送给其他设备。

存储器1202除用于存储计算机执行指令外,还可以用于存储图10中的分割单元、确定单元、选取单元以及存储单元所需要的视频数据,如可以存储所述视频片段、所述视频或所述动态图。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。


技术特征:

1.一种视频播放方法,其特征在于,所述方法包括:

服务器接收终端设备的第一请求,所述第一请求用于请求所述终端设备需要播放的视频地址;

所述服务器向所述终端设备发送第一响应,所述第一响应包括所述视频地址和视频的打点信息,所述打点信息包括所述视频的打点位置和所述打点位置对应的视频片段的存储地址。

2.如权利要求1所述的方法,其特征在于,所述服务器向所述终端设备发送第一响应之后,还包括:

所述服务器接收所述终端设备发送的第二请求,所述第二请求用于请求所述打点位置对应的视频片段,所述第二请求包括所述打点位置对应的视频片段的存储地址;

所述服务器根据所述打点位置对应的视频片段的存储地址获取所述打点位置对应的视频片段;

所述服务器向所述终端设备发送第二响应,所述第二响应包括所述打点位置对应的视频片段。

3.如权利要求1所述的方法,其特征在于,所述服务器向所述终端设备发送第一响应之前,还包括:

所述服务器将所述视频分割为多个视频片段;

所述服务器基于预设的神经网络模型,确定每个视频片段的精彩度;

所述服务器根据所述每个视频片段的精彩度选取n个视频片段;

所述服务器根据所述n个视频片段在所述视频中的位置确定所述视频的n个打点位置,其中,一个所述打点位置与所述n个视频片段中的一个视频片段对应。

4.如权利要求3所述的方法,其特征在于,所述服务器基于预设的神经网络模型,确定每个视频片段的精彩度,包括:

所述服务器基于预设的神经网络模型,提取所述每个视频片段的第一特征,所述第一特征包括下列的部分或全部:帧序列的时间特征,帧序列的空间特征;

所述服务器根据所述每个视频片段的第一特征确定所述每个视频片段的精彩度。

5.如权利要求3所述的方法,其特征在于,所述服务器将视频分割为多个视频片段,包括:

所述服务器对所述视频进行镜头分割,获得多组图像帧,其中,每组图像帧包括连续的多帧图像;

所述服务器将所述多组图像帧合成为一个或多个预设长度的视频片段。

6.如权利要求3所述的方法,其特征在于,所述服务器将视频分割为多个视频片段,包括:

所述服务器根据视频的镜头类型对所述视频进行镜头分割,获得多组图像帧,其中,每组图像帧包括连续的多帧图像;

所述服务器将所述多组图像帧合成为一个或多个视频片段,其中,一个所述视频片段中的任意相邻两帧图像的相似度在预设范围内。

7.一种视频播放方法,其特征在于,所述方法包括:

终端设备在向服务器发送第一请求后,接收所述服务器发送的第一响应,所述第一请求用于请求所述终端设备需要播放的视频地址,所述第一响应中包括所述视频地址和视频的打点信息,所述打点信息包括所述视频的打点位置和所述打点位置对应的视频片段的存储地址;

所述终端设备根据所述视频地址获取所述视频,根据所述打点位置对应的视频片段的存储地址在所述打点位置上加载对应的视频片段;

所述终端设备播放所述视频和所述视频片段。

8.如权利要求7所述的方法,其特征在于,所述终端设备根据所述打点位置对应的视频片段的存储地址在所述打点位置上加载对应的视频片段,包括:

所述终端设备向所述服务器发送第二请求,所述第二请求用于请求所述打点位置对应的视频片段,所述第二请求包括所述打点位置对应的视频片段的存储地址;

所述终端设备接收所述服务器发送的第二响应,所述第二响应包括所述打点位置对应的视频片段。

9.如权利要求7或8所述的方法,其特征在于,所述终端设备播放所述视频片段,包括:

所述终端设备播放所述视频时,显示距离当前播放位置最近的至少一个所述打点位置对应的视频片段。

10.如权利要求7或8所述的方法,其特征在于,所述终端设备播放所述视频片段,包括:

所述终端设备在接收到所述打点位置的触发操作后,播放所述打点位置对应的视频片段。

11.一种服务器,其特征在于,所述装置包括接收单元和发送单元:

所述接收单元,用于接收终端设备的第一请求,所述第一请求用于请求所述终端设备需要播放的视频地址;

所述发送单元,用于向所述终端设备发送第一响应,所述第一响应包括所述视频地址和视频的打点信息,所述打点信息包括所述视频的打点位置和所述打点位置对应的视频片段的存储地址。

12.如权利要求11所述的服务器,其特征在于,所述服务器还包括处理单元;

所述接收单元,还用于接收所述终端设备发送第二请求,所述第二请求用于请求所述打点位置对应的视频片段,所述第二请求包括所述打点位置对应的视频片段的存储地址;

所述处理单元,用于根据所述打点位置对应的视频片段的存储地址获取所述打点位置对应的视频片段;

所述发送单元,还用于向所述终端设备发送第二响应,所述第二响应包括所述打点位置对应的视频片段。

13.如权利要求11所述的服务器,其特征在于,所述服务器还包括处理单元,所述处理单元在所述发送单元向所述终端设备发送第一响应之前,用于:

将所述视频分割为多个视频片段;

基于预设的神经网络模型,确定每个视频片段的精彩度;

根据所述每个视频片段的精彩度选取n个视频片段;

根据所述n个视频片段在所述视频中的位置确定所述视频的n个打点位置,其中,一个所述打点位置与所述n个视频片段中的一个视频片段对应。

14.如权利要求13所述的服务器,其特征在于,所述处理单元基于预设的神经网络模型,确定每个视频片段的精彩度,具体用于:

基于预设的神经网络模型,提取所述每个视频片段的第一特征,所述第一特征包括下列的部分或全部:帧序列的时间特征,帧序列的空间特征;

根据所述每个视频片段的第一特征确定所述每个视频片段的精彩度。

15.如权利要求13所述的服务器,其特征在于,所述处理单元将视频分割为多个视频片段,具体用于:

根据视频的镜头类型对所述视频进行镜头分割,获得多组图像帧,其中,每组图像帧包括连续的多帧图像;

将所述多组图像帧合成为一个或多个预设长度的视频片段。

16.如权利要求13所述的服务器,其特征在于,所述处理单元将视频分割为多个视频片段,具体用于:

根据对所述视频进行镜头分割,获得多组图像帧,其中,每组图像帧包括连续的多帧图像;

将所述多组图像帧合成为一个或多个视频片段,其中,一个所述视频片段中的任意相邻两帧图像的相似度在预设范围内。

17.一种终端设备,其特征在于,所述装置包括发送单元、接收单元、加载单元和播放单元:

所述发送单元,用于向服务器发送第一请求;

所述接收单元,用于接收所述服务器发送的第一响应,所述第一请求用于请求所述终端设备需要播放的视频地址,所述第一响应中包括所述视频地址和视频的打点信息,所述打点信息包括所述视频的打点位置和所述打点位置对应的视频片段的存储地址;

所述加载单元,用于根据所述视频地址获取所述视频,根据所述打点位置对应的视频片段的存储地址在所述打点位置上加载对应的视频片段;

所述播放单元,用于播放所述视频和所述视频片段。

18.如权利要求17所述的终端设备,其特征在于,所述加载单元根据所述打点位置对应的视频片段的存储地址在所述打点位置上加载对应的视频片段时,

所述发送单元,用于向所述服务器发送的第二请求,所述第二请求用于请求所述打点位置对应的视频片段,所述第二请求包括所述打点位置对应的视频片段的存储地址;

所述接收单元,用于接收所述服务器发送的第二响应,所述第二响应包括所述打点位置对应的视频片段;

所述加载单元,用于根据所述第二响应在所述打点位置上加载对应的视频片段。

19.如权利要求17或18所述的终端设备,其特征在于,所述播放单元在播放所述视频片段,具体用于:

播放所述视频时,显示距离当前播放位置最近的至少一个所述打点位置对应的视频片段。

20.如权利要求17或18所述的终端设备,其特征在于,所述播放单元在播放所述视频片段,具体用于:

在接收到所述打点位置的触发操作后,播放所述打点位置对应的视频片段。

技术总结
一种视频播放方法及装置,用以解决现有技术中显示的文字信息并不能很好的对视频内容进行概括,影响用户体验的问题。在本申请中,终端设备向服务器发送用于请求终端设备需要播放的视频地址的第一请求,并接收服务器发送的第一响应,第一响应中包括视频地址和视频的打点信息,打点信息包括视频的打点位置和打点位置对应的视频片段的存储地址;终端设备根据视频地址获取视频,根据打点位置对应的视频片段的存储地址在打点位置上加载对应的视频片段;在加载了视频片段后,终端设备在播放视频时,也可以显示视频的打点位置对应的视频片段,视频片段相较于文字信息更加直观,可以更加方便、快捷且客观的使用户了解视频的内容。

技术研发人员:张文杰;王莽
受保护的技术使用者:华为技术有限公司
技术研发日:2018.11.28
技术公布日:2020.06.05

转载请注明原文地址: https://bbs.8miu.com/read-53740.html

最新回复(0)