CN111581434A - 视频服务提供方法、装置、电子设备和存储介质 - Google Patents

视频服务提供方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN111581434A
CN111581434A CN202010357891.1A CN202010357891A CN111581434A CN 111581434 A CN111581434 A CN 111581434A CN 202010357891 A CN202010357891 A CN 202010357891A CN 111581434 A CN111581434 A CN 111581434A
Authority
CN
China
Prior art keywords
video
target
view
account
preset
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
Application number
CN202010357891.1A
Other languages
English (en)
Inventor
王兵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Priority to CN202010357891.1A priority Critical patent/CN111581434A/zh
Publication of CN111581434A publication Critical patent/CN111581434A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/74Browsing; Visualisation therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234336Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by media transcoding, e.g. video is transformed into a slideshow of still pictures or audio is converted into text
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本公开关于视频服务提供方法、装置、电子设备和存储介质,所述方法应用于服务器,包括:接收客户端针对目标视频发出的视图获取请求;若确定将所述目标视频对应的静态视图作为对所述视图获取请求的响应,则获取预先保存的所述目标静态视图,所述目标静态视图由所述目标视频对应的视频元素数据生成;向所述客户端返回所述目标静态视图。根据本公开的实施例,预先获取视频元素数据并缓存根据视频元素数据生成的目标静态视图,直接使用缓存的目标静态视图响应客户端的请求以实现对客户端请求的降级处理,不仅有助于降低海量请求对服务器的负载压力从而提高系统稳定性,而且缩短了请求的响应时间提升了用户体验。

Description

视频服务提供方法、装置、电子设备和存储介质
技术领域
本公开涉及视频服务领域,尤其涉及视频服务提供方法、装置、电子设备和存储介质。
背景技术
随着互联网用户对短视频、电影、电视剧等网络视频资源的观看需求日益增长,互联网视频提供服务也得以快速发展。提供视频服务的客户端通常会基于view视图(下文简称视图)在视频展示页面为用户展示视频的预览画面,当用户刷新时,客户端从服务器获取新的视图并基于该视图向用户展示刷新后的预览画面。在面对多个客户端短时间内发出的大量视图获取请求时,为保证范围稳定性,服务器通常会对部分请求做降级处理。
在相关技术中,一种方式是直接放弃对降级请求的有效响应并向客户端返回错误提示,或者强制在等待预设时长后再对上述降级请求进行响应。但是,这种有损处理方式往往导致客户端请求失败或用户等待时间过长,因此用户体验较差。
另一种方式是缓存目标视频对应的视频元素数据,然后在接收到客户端发出的针对目标短视频的视图获取请求后,根据缓存的上述视频元素数据渲染得到目标视图并返回给客户端用于展示。但是,该方法需要对视频元素数据进行实时渲染,所以在海量请求下仍然存在服务器宕机或请求超时等问题,服务稳定性仍然较低。
发明内容
本公开提供了视频服务提供方法、装置、电子设备和存储介质,以至少解决相关技术中的技术问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提出一种视频服务提供方法,应用于服务器,所述方法包括:
接收客户端针对目标视频发出的视图获取请求;
若确定将所述目标视频对应的静态视图作为对所述视图获取请求的响应,则获取预先保存的所述目标静态视图,所述目标静态视图由所述目标视频对应的视频元素数据生成;
向所述客户端返回所述目标静态视图。
可选的,由所述目标视频对应的视频元素数据生成所述目标静态视图,包括:
将所述目标视频对应的视频元素数据中包含的多项子元素数据按照目标视图模型的预设格式进行合并,得到合并后数据;
渲染所述合并后数据以生成所述目标静态视图。
可选的,所述视频元素数据包括下述至少之一:
视频文件地址、音乐信息、字幕信息、封面信息、点赞数量、评论数量、转发数量。
可选的,所述方法还包括:
在所述服务器的当前请求数量不小于预设的第一请求数量、所述目标视频的视频等级不高于预设的第一等级和/或所述客户端的已登录账号的账号请求优先级不大于预设的请求优先级时,确定将所述目标视频对应的静态视图作为对所述视图获取请求的响应。
可选的,确定所述已登录账号的账号请求优先级,包括:
获取所述已登录账号的目标账号属性,所述目标账号属性包括下述至少之一:所述已登录账号的会员类型、所述已登录账号的会员等级、所述已登录账号关注的话题、所述已登录账号的历史观看偏好对应的视频类型;
基于预设的账号属性与账号请求优先级之间的映射关系,确定对应于所述目标账号属性的账号请求优先级。
可选的,基于下述至少之一的视频属性确定所述目标视频的视频等级:
视频标签、视频热度、所述目标视频的发布者的会员类型、所述目标视频的发布者的会员等级、所述目标视频的发布者的活跃度。
可选的,在接收到视频发布账号所发布的新增视频时,还包括:
若所述服务器的当前请求数量不大于预设的第二请求数量、所述目标视频的视频等级不低于预设的第二等级和/或所述视频发布账号的账号属性优先级不大于预设的账号属性优先级,则根据所述新增视频对应的视频元素数据生成所述新增视频对应的静态视图。
可选的,所述方法,
还包括:将所述目标静态视图经过压缩后预先保存在预设的缓存空间内;
所述向所述客户端返回所述目标静态视图,包括:将所述压缩后的目标静态视图发送至所述客户端;或者,对所述压缩后的目标静态视图进行解压,将解压后的所述目标静态视图发送至所述客户端。
可选的,所述方法还包括:
在发生预设的更新触发事件的情况下,针对所述目标静态视图进行更新操作。
可选的,
所述更新触发事件包括:对应于所述目标静态视图的目标视频被删除,所述更新操作包括:删除所述目标静态视图或更改所述目标静态视图的获取权限;或者,
所述更新触发事件包括:对应于所述目标静态视图的目标视频被举报,所述更新操作包括:展示关于所述目标静态视图的审核提醒消息,并在接收到审核指令时根据所述审核指令对所述目标静态视图进行相应处理、删除所述目标静态视图或更改所述目标静态视图的获取权限;或者,
所述更新触发事件包括:所述视频元素数据的变化量满足预设限值或所述目标静态视图的更新周期到时,所述更新操作包括:更新所述目标静态视图整体或更新所述目标静态视图中变化量满足预设限值的所述视频元素数据对应的部分。
可选的,所述方法还包括:
若确定不将所述目标视频对应的静态视图作为对所述视图获取请求的响应,则获取所述目标视频对应的当前视频元素数据;
渲染所述当前视频元素数据以生成目标实时视图;
向所述客户端返回所述目标实时视图。
根据本公开实施例的第二方面,提出一种视频服务提供装置,应用于服务器,所述装置包括:
请求接收模块,被配置为接收客户端针对目标视频发出的视图获取请求;
视图获取模型,被配置为若确定将所述目标视频对应的静态视图作为对所述视图获取请求的响应,则获取预先保存的所述目标静态视图,所述目标静态视图由所述目标视频对应的视频元素数据生成;
视图返回模块,被配置为向所述客户端返回所述目标静态视图。
可选的,由所述目标视频对应的视频元素数据生成所述目标静态视图,包括:
将所述目标视频对应的视频元素数据中包含的多项子元素数据按照目标视图模型的预设格式进行合并,得到合并后数据;
渲染所述合并后数据以生成所述目标静态视图。
可选的,所述视频元素数据包括下述至少之一:
视频文件地址、音乐信息、字幕信息、封面信息、点赞数量、评论数量、转发数量。
可选的,所述装置还包括:
降级确定模块,被配置为在所述服务器的当前请求数量不小于预设的第一请求数量、所述目标视频的视频等级不高于预设的第一等级和/或所述客户端的已登录账号的账号请求优先级不大于预设的请求优先级时,确定将所述目标视频对应的静态视图作为对所述视图获取请求的响应。
可选的,所述降级确定模块,包括:
属性获取单元,被配置为获取所述已登录账号的目标账号属性,所述目标账号属性包括下述至少之一:所述已登录账号的会员类型、所述已登录账号的会员等级、所述已登录账号关注的话题、所述已登录账号的历史观看偏好对应的视频类型;
优先级确定单元,被配置为基于预设的账号属性与账号请求优先级之间的映射关系,确定对应于所述目标账号属性的账号请求优先级。
可选的,基于下述至少之一的视频属性确定所述目标视频的视频等级:
视频标签、视频热度、所述目标视频的发布者的会员类型、所述目标视频的发布者的会员等级、所述目标视频的发布者的活跃度。
可选的,在接收到视频发布账号所发布的新增视频时,所述装置还包括:
视图生成模块,被配置为若所述服务器的当前请求数量不大于预设的第二请求数量、所述目标视频的视频等级不低于预设的第二等级和/或所述视频发布账号的账号属性优先级不大于预设的账号属性优先级,则根据所述新增视频对应的视频元素数据生成所述新增视频对应的静态视图。
可选的,所述装置还包括:
压缩保存模块,被配置为将所述目标静态视图经过压缩后预先保存在预设的缓存空间内;
所述视图返回模块,还被配置为:将所述压缩后的目标静态视图发送至所述客户端;或者,对所述压缩后的目标静态视图进行解压,将解压后的所述目标静态视图发送至所述客户端。
可选的,所述装置还包括:
视图更新模块,被配置为在发生预设的更新触发事件的情况下,针对所述目标静态视图进行更新操作。
可选的,
所述更新触发事件包括:对应于所述目标静态视图的目标视频被删除,所述更新操作包括:删除所述目标静态视图或更改所述目标静态视图的获取权限;或者,
所述更新触发事件包括:对应于所述目标静态视图的目标视频被举报,所述更新操作包括:展示关于所述目标静态视图的审核提醒消息,并在接收到审核指令时根据所述审核指令对所述目标静态视图进行相应处理、删除所述目标静态视图或更改所述目标静态视图的获取权限;或者,
所述更新触发事件包括:所述视频元素数据的变化量满足预设限值或所述目标静态视图的更新周期到时,所述更新操作包括:更新所述目标静态视图整体或更新所述目标静态视图中变化量满足预设限值的所述视频元素数据对应的部分。
可选的,所述装置还包括:
实时数据获取模块,被配置为若确定不将所述目标视频对应的静态视图作为对所述视图获取请求的响应,则获取所述目标视频对应的当前视频元素数据;
实时视图生成模型,被配置为所述当前视频元素数据以生成目标实时视图;
实时视图返回模块,被配置为向所述客户端返回所述目标实时视图。
根据本公开实施例的第三方面,提出一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如上述任一实施例所述的视频服务提供方法。
根据本公开实施例的第四方面,提出一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述任一实施例所述的视频服务提供方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
根据本公开的实施例,在接收到客户端发出的视图获取请求之前即预先获取目标视频对应的视频元素数据,并将上述视频元素数据经过渲染生成的目标静态视图进行缓存。在接收到需要进行降级处理的视图获取请求后,直接将预先生成并缓存的目标静态视图返回给客户端,能够大大加快用户刷新视频后的预览画面显示速度,从而提升用户体验。而且,因为无需实时获取目标视频对应的数据或对数据进行实时渲染等操作,所以即便在突发的海量请求下,服务器的网络资源和计算资源也能够满足需求,从而以存储空间换取响应效率,避免了服务器响应失常,提高了服务稳定性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据本公开的实施例示出的一种视频服务提供方法流程图;
图2是根据本公开的实施例示出的另一种视频服务提供方法流程图;
图3是根据本公开的实施例示出的一种目标视图模型所包含的信息示意图;
图4a-4c是根据本公开的实施例示出的一种用户进行的视频刷新操作示意图;
图5是根据本公开的实施例示出的一种视频服务提供装置的实施例框图;
图6是根据本公开的实施例示出的一种电子设备的结构图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施例并不代表与本公开相一致的所有实施例。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
本公开实施例提供的一种视频服务提供方法,可由服务器执行,所述服务器可以是个人计算机,工业计算机,工控机等能够为客户端提供视频提供服务的网络设备。相应的,客户端可以是安装在终端中的应用程序,也可以是集成在浏览器中的网页版应用,所述终端可以是手机、平板电脑、可穿戴设备、个人计算机、个人数字助理、云计算设备等电子设备。在使用客户端的用户针对目标视频发出视图获取指令后,上述客户端与服务器相互配合获取该目标视频对应的目标视图,并由客户端基于获取到的目标视图展示目标视频对应的视频预览画面,以供用户查看。其中,客户端展示的目标视频对应的视频预览画面可以为静态画面,也可以为动态画面,本公开对此并不进行限制。
请参见图1,为本公开根据一示例性实施例示出的一种视频服务提供方法流程图,所述方法应用于服务器,包括:
在步骤102中,接收客户端针对目标视频发出的视图获取请求。
在用户使用客户端的过程中,通常需要刷新客户端中的视频预览画面,以查看各视频的预览画面及相关信息。
以客户端是安装在手机上的视频APP(Application,应用程序)为例,处于运行状态的APP会在展示页面中为用户展示一个或多个视频预览画面供用户查看,当用户执行滑动或其他预设的刷新操作后,该APP会根据预设的视频选择机制确定刷新后需要显示的目标视频,然后向服务器发送关于该目标视频的视图获取请求,以在接收到服务器返回的该目标视频对应的目标视图后,基于该目标视图为用户展示与上述目标视频对应的视频预览画面,从而完成对用户刷新动作的响应。
在本实施例中,服务器接收到的客户端发送的视图获取请求是由客户端基于用户操作生成的,因此该视图获取请求与用户的刷新操作相对应。实际上,根据客户端在视频刷新情况下的推荐机制不同,上述目标视频的确定方式也有所不同:作为一示例性实施例,由客户端将距离刷新时刻最近的按照预设视频更新周期更新后的视频作为目标视频。
作为另一示例性实施例,由服务器按照预设的推荐机制确定刷新后需要向用户展示的视频,并将这部分视频作为目标视频。相应的,服务器接收到的上述视图获取请求中可以携带目标视频的发布者账号ID和发布时间,或者视频ID等视频唯一标志信息,从而服务器在接收后按照上述视频唯一标志信息确定目标视频;视图获取请求中也可以携带预设的视图获取标识以及客户端已登录账号的账号ID等信息,服务器接收到上述视图获取请求后按照预设的视频推荐机制确定对应于上述请求的目标视频。其中,客户端或服务器根据预设的推荐机制确定目标视频的具体过程可以参见相关技术中记载的内容,本公开对此并不进行限制。
在步骤104中,若确定将所述目标视频对应的静态视图作为对所述视图获取请求的响应,则获取预先保存的所述目标静态视图,所述目标静态视图由所述目标视频对应的视频元素数据生成。
在一实施例中,在接收到视频发布账号所发布的新增视频时,若服务器的当前请求数量不大于预设的第二请求数量、目标视频的视频等级不低于预设的第二等级和/或视频发布账号的账号属性优先级不大于预设的账号属性优先级,则根据新增视频对应的视频元素数据生成新增视频对应的静态视图。当任一视频发布者向服务器中上传任一新增视频后,服务器可以立即判断是否对该新增视频进行静态化处理,也可以在预设时间段后再做判断,还可以在发生预设的触发事件后进行上述判断。若判断对该新增视频进行静态化处理,则可以立即或等待预设时间段后获取该新增视频当前的视频元素数据生成静态视图。
实际上,用户上传的新增视频并非全部需要进行静态化处理,通过上述过程对新上传的视频是否需要进行静态化处理进行判断,使得静态化处理更具有针对性,避免了对全部新增视频进行静态化可能导致的用户体验降低。经过上述静态化处理的任一新增视频都可以作为客户端所发送视图获取请求对应的目标视频,因此,对于上述过程生成的任一静态视图,若其对应的视频被确定为目标视频,则该静态视图即为目标静态视图。
在一实施例中,可以按照目标视图模型对视频元素数据的多项子元素数据进行合并,得到合并后数据;然后渲染合并后数据以生成目标静态视图。具体的,上述目标视图模型中预设有各子元素数据的固定格式,上述合并过程就是将各子元素数据分别按照上述固定格式配置在目标视图模型中的过程。经过上述数据合并及渲染过程所生成的目标视频能够满足实际的视频播放需要。
在一实施例中,任一目标视频对应的视频元素可以包括视频、音乐、字幕、封面、点赞、评论、转发等;相应的,任一目标视频对应的视频元素数据可以包括视频文件地址、音乐信息、字幕信息、封面信息、点赞数量、评论数量和/或转发数量。利用目标视频对应的上述视频元素数据可以合并、渲染得到目标静态视图。
在一实施例中,将目标静态视图经过压缩后预先保存在预设的缓存空间内,如将上述目标静态视图以JSON(JavaScript Object Notation,JS对象简谱)格式缓存到Memcached缓存系统或者Redis(Remote Dictionary Server,即远程字典服务)缓存组件中。相应的,可以将压缩后的目标静态视图发送至客户端,以尽量减小数据传输量从而降低网络传输压力。或者,也可以对压缩后的目标静态视图进行解压,将解压后的目标静态视图发送至客户端,从而充分发挥服务器的计算性能,降低客户端的计算压力。
在一实施例中,在发生预设的更新触发事件的情况下,针对预先生成并保存在预设存储空间中的目标静态视图进行更新操作,以在实现降级处理的前提下,保证静态化后的目标静态视图尽量接近实时视图,从而一定程度上保证用户体验。具体的,上述更新触发事件和相应的更新操作可以有多种情况。例如,更新触发事件可以为对应于目标静态视图的目标视频被删除,此时,相应的更新操作可以为删除目标静态视图,或者更改目标静态视图的获取权限。更新触发事件也可以为对应于所述目标静态视图的目标视频被举报,此时,相应的更新操作可以为展示关于所述目标静态视图的审核提醒消息,并在接收到审核指令时根据所述审核指令对所述目标静态视图进行相应处理、删除所述目标静态视图、或者更改所述目标静态视图的获取权限。更新触发事件还可以为所述视频元素数据的变化量满足预设限值或所述目标静态视图的更新周期到时,此时,相应的更新操作可以为更新所述目标静态视图整体、或者更新所述目标静态视图中变化量满足预设限值的所述视频元素数据对应的部分。
在一实施例中,在服务器的当前请求数量不小于预设的第一请求数量、目标视频的视频等级不高于预设的第一等级和/或客户端的已登录账号的账号请求优先级不大于预设的请求优先级时,可以确定将目标视频对应的静态视图作为对视图获取请求的响应。其中,上述已登录账号的账号属性可以包括下述至少之一:会员类型、会员等级、上述已登录账号关注的话题、上述已登录账号的历史观看偏好。上述目标视频的视频属性包括下述至少之一:视频标签、视频热度、目标视频的发布者的会员类型、目标视频的发布者的会员等级、目标视频的发布者的活跃度。可见,因为服务器的当前请求数量能够反映服务器负载状态、目标视频的视频等级以及已登录账号的账号请求优先级能够分别反映视频本身以及请求用户的等级,因此采用上述指标进行判断能够获得更准确的判断判断结果,从而避免了请求响应时间过长可能导致的用户体验变差。
在步骤106中,向所述客户端返回所述目标静态视图。
若服务器确定对上述视图获取请求对应的视频提供服务进行降级处理,可以将上述预先生成并保存的目标静态视图返回至客户端,以使客户端基于上述目标静态视图生成对应于目标视频的视频预览画面向用户展示。作为对上述视图获取请求的响应,返回给客户端的是经过静态化处理的目标视图,而并非实时视图,从而实现了对上述视图获取请求对应的视频提供服务进行降级处理。
在一实施例中,若服务器确定对上述视图获取请求对应的视频提供服务不进行降级处理,可以获取目标视频对应的当前视频元素数据;渲染当前视频元素数据以生成目标实时视图;向客户端返回所述目标实时视图。此时,返回给客户端的是基于当前时刻的实时视频元素数据生成的实时视图,从而实现了对上述视图获取请求对应的视频提供服务不进行降级处理,即实时响应上述视图获取请求,保证了用户体验。
本公开实施例本质上针对视频提供服务提出了一种服务降级方案:首先接收客户端发送的针对目标视频的视图获取请求,然后在确定对上述请求对应的视频提供服务进行降级处理的情况下,将预先保存的由目标视频对应的视频元素数据生成的目标静态视图返回给客户端作为响应。可见,本公开预先获取目标视频对应的视频元素数据,并将经过合并与渲染生成的目标静态视图缓存在预设存储空间内,在客户端的视图获取请求到来后能够直接将该目标静态视图返回给客户端,缩短了用户的刷新等待时间,提升了用户体现。而且,因为无需实时渲染或实时生成目标视图,所以对服务器的网络资源与计算资源要求更小,从而服务器能够满足短时间内的海亮用户请求,提高了范围的稳定性。
在本公开的实施例中,用户可以使用客户端向服务器发布新增视频或从服务器获取并观看视频,具体的,视频可以为短视频、电影、电视剧等多种形式。下面结合图2所示另一种视频服务提供方法流程图,对服务器通过本公开的技术方案为客户端提供视频提供服务的过程进行详细描述。所述方法应用于客户端,包括:
在步骤202中,接收新增视频。
首先需要说明的是,本公开实施例中的服务器可以是独立服务器,也可以是多台设备构成的服务器集群;客户端可以是安装在终端中的应用程序,也可以是集成在浏览器中的网页版应用,本公开对于服务器和客户端的具体形式并不进行限制。用户通过客户端与服务器建立网络连接,并接受由服务器提供的视频提供服务;当然,服务器可以同时与多个客户端建立上述网络连接。
服务器接收客户端发布的新增视频,该新增视频可以是任一用户使用客户端提供的视频发布功能向服务器发布的。具体的,新增视频的发布者账号可以是个人账号,如发布自己拍摄的视频,自己剪辑的短片等;也可以是机构或组织账号,如发布视频形式的权威信息、推广广告视频等;还可以是应用程序的智能管理机器人,如发布应用公告视频,操作指南视频等,本公开对此并不进行限制。
作为一个示例性实施例,上述发布可以在客户端未登录账号的状态下进行,此时,服务器与上述新增视频一同接接收的还可以包括该视频的名称、发布该视频的客户端标识、发布时间和/或上述任一用户对该视频进行的自定义简介或自定义标签等信息。作为另一示例性实施例,上述发布也可以在客户端中已经登录的账号下进行,此时,上述新增视频通过已登录账号的身份向服务器发布,服务器与上述新增视频一同接接收的除上述信息外,还可以包括已登录账号的账号名称、账号申请时间、账号会员类别,账号会员等级等账号信息。
服务器接收到上述新增视频后,可以将新增视频与上述相关信息关联保存在数据库或服务器的内部存储空间等预设空间内,当然,还可以关联保存该新增视频的大小、文件类型等其他相关信息。
在步骤204中,确定是否对新增视频进行静态化处理。
在一实施例中,直接确定将接收到的新增视频进行静态化处理,也就是说,服务器可以对接收到的全部新增视频都进行静态化处理。
在另一实施例中,可以通过判断服务器的当前请求数量、目标视频的视频等级和/或视频发布账号的账号属性优先级等参数是否满足预设的静态化条件,确定是否对新增视频进行静态化处理。具体的,上述静态化条件可以包括:服务器的当前请求数量不大于预设的第二请求数量、目标视频的视频等级不低于预设的第二等级和/或视频发布账号的账号属性优先级不大于预设的账号属性优先级等。
具体的,可以在服务器的当前负载值不大于预设负载阈值的情况下,判定当前负载值满足预设的静态化条件,进而确定对该新增视频进行静态化处理。上述新增视频的视频属性可以包括基本信息(如视频时长、语种、方言、有无字幕、有无音乐等),标签类别(如科普、搞笑、民俗、音乐、美食等)或其他视频信息,因此可以在该视频中所用方言对应归属地的用户数量不超出预设数量的情况下,判定基本信息满足预设的静态化条件,进而确定对该新增视频进行静态化处理。还可以在该视频具有科普标签的情况下,判定标签类别满足预设的静态化条件,进而确定对该新增视频进行静态化处理;当然,在基于标签类别进行上述判断时需要先确定上述新增视频的标签类别,如由发布者对该新增视频贴标签或有服务器判断该新增视频的标签类别等。在上述过程判定新增视频满足静态化条件的情况下,即对该新增视频进行静态化处理。
在一实施例中,上述视频发布者的账号属性可以包括会员类型(如临时会员、包月付费会员、终身免费会员等)、会员等级(一级、二级、三级等)、所述已登录账号关注的话题(美妆、歌唱比赛、户外直播等)、所述已登录账号的历史观看偏好(观看时长最长的视频类型、观看时长大于预设第一时长的视频类型、观看时长小于预设第二时长的视频类型等)或账号信息,进而可以在会员类型为终身免费会员的情况下,确定对该新增视频进行静态化处理;也可以在该新增视频的视频类型属于观看时长最长的视频类型的情况下,确定对该新增视频进行静态化处理,其他类似不再赘述。当然,也可以综合利用服务器的当前负载值、上述新增视频的视频属性、账号属性及其他信息判定是否对该新增视频进行静态化处理,如通过计算上述多个属性信息的加权平均值的大小来确定是否对该新增视频进行静态化处理等。
对于接收到的新增视频,首先确定是否需要对其进行静态化处理,而非一味的全部进行静态化,保证了部分实时性要求较高的新增视频实时展示,有助于提升用户体验。
本实施例中,作为一示例性实施例,可以先保存新增视频再进行上述判定;或者,作为另一示例性实施例,也可以先进行上述判定再保存新增视频。换言之,“判定是否进行静态化处理”与“保存新增视频”并不存在必然的先后顺序,可以根据实际情况进行调整。实际上,无论是否对该新增视频进行静态化处理,上述新增视频都会被保存在预设的存储空间内。而且,上述预设空间与服务器可以是物理上相互分离的,因此上述步骤102中服务器也可以仅接收客户端上传的视频信息,而由客户端直接将新增视频的视频文件直接上传至预设的或服务器临时分配的存储空间,从而在存储空间使用CDN(Content DeliveryNetwork,内容分发网络)的情况下,省略了由服务器将数据量较大的视频文件转发至存储空间的步骤,有利于降低服务器的网络负荷以提高视频发布效率。
基于上述判定过程,若判定对该新增视频进行静态化处理,则转入步骤206,以在步骤206-步骤210完成对新增视频进行静态化处理的过程;否则,若判定对该新增视频不进行静态化处理,则等待转入步骤212。
在步骤206中,获取新增视频对应的视频元素数据。
实际上,可以在接收到新增视频后立即判定是否进行静态化处理,并在确定进行静态化处理后立即获取新增视频的视频元素数据;也可以在接收到新增视频后等待预设条件满足后判定是否进行静态化处理,并在确定进行静态化处理后等待预设时长再获取新增视频的视频元素数据,即本公开对上述步骤202、步骤204及步骤206之间的时间间隔并不进行限制。但可以理解的是,本步骤206中获取新增视频对应的视频元素数据的时机会导致获取到的视频元素数据有差异,并进而影响到最终生成的静态视图。
在一实施例中,新增视频对应的视频子元素可以包括视频,音乐,字幕,封面,点赞,评论,转发等;相应的,新增视频对应的视频元素数据可以包括:视频文件地址(如http://vediobase/ep123456?from=search&seid=12345654321等),音乐信息(音乐类别、名称、大小、地址等),字幕信息(名称、大小、地址等),封面信息(封面图片格式、封面图片大小、封面图片格式等),点赞数量,评论数量和/或转发数量等多种子元素数据。其中任一类视频元素数据可能包括一项或多项子元素数据,如新增视频的视频文件被分散保存,相应的上述视频文件地址包括多条地址;上述音乐包括原始背景音,原始话音,配乐,特效音乐等多种类别,相应的上述音乐信息包括每种音乐的具体信息;上述点赞数量,评论数量,转发数量等简单数据通常对应一项数据。可以理解的是,根据实际视频的情况不同,新增视频的视频元素数据也可能存在其他数据,例如发布者账号的账号信息(如账号ID,账号唯一标识信息等),发布者账号的会员类型(如临时会员、包月付费会员、终身免费会员等)、发布者账号会员等级(青铜、白银、黄金、钻石等),发布者账号活跃度(如平均每月登录次数,每次登录的平均在线时长等),本公开不再赘述。
上述新增视频的视频元素数据包括的多项子元素数据通常分别保存在不同存储路径下,因此服务器需要根据预设规则分别在不同的路径下获取各子元素数据。具体到任一项子元素数据,可以直接按照服务器中预存的数据保存地址查找并获取该子元素数据,也可以通过该项子元素数据与其他已知子元素数据的已知关系确定该项子元素数据,或者根据该项子元素数据的保存地址与其他已知子元素数据的保存地址之间的关系得到该项子元素的保存地址,再去该地址获取该项子元素数据。
在一实施例中,上述过程获取的某项子元素数据可能为空数据,如新增视频不包含字幕时,上述字幕信息即为空信息;此时,后续处理过程中可以忽略该子元素数据。
在步骤208中,合并视频元素数据包括的多项子元素数据,渲染生成静态视图。
获取到视频元素数据包含的多项子元素数据后,服务器首先按照预设的目标视图模型将获取到的多项子元素数据进行合并,得到合并后数据。其中,上述目标视图模型中预设有各子元素数据的固定格式,上述合并过程就是将各子元素数据分别按照上述固定格式配置在目标视图模型中的过程。配置完成后得到的合并后数据,即为按照上述固定格式配置在目标视图模型中的视频元素数据。上述目标视图模型中各子元素数据的固定格式可以根据视频类型预先设置,如wmv、avi、mpg、mpeg、3gp、mov、mp4、flv等不同格式的新增视频对应不同的固定格式;也可以预设一种或多种固定格式分别对应的一份或多份目标视图模型,在新增视频的子元素数据不符合上述一种或多种固定格式的情况下,可以将其进行格式转换后再合并至某份目标视图模型中。
由前所述,生成静态视图的过程中使用了多项子元素数据,多种子元素数据在目标视图模型中可以有多种组合方式。请参见图3所示的一种目标视图模型所包含的信息示意图;由图3可见,目标视图模型中包括视频ID,发布时间,账号信息(发布者账号、会员类型、会员等级、活跃度等),视频文件地址,音乐信息(音乐类别、名称、大小、地址等),字幕信息(字幕格式、名称、大小、地址等),封面信息(封面图片,格式、大小等)以及点赞数量、评论数量、转发数量等交互信息。上述子元素数据并不限于图3所示的组合方式,如当音乐文件或字幕文件较小时,也可以直接将音乐文件或字幕文件作为子元素数据合并至目标视图模型中而不必包含其地址;当封面图片较大时也可以不包含封面图片而包含封面图片的地址,当然,也可以有其他组合方式,不再赘述。
然后,服务器对合并后数据进行渲染,即经过预设计算将合并后数据的当前格式转换为便于用户理解的特定显示格式。例如,目标数据模型中保存的发布时间为“20191231”,经过渲染将其转换为“up90d”或“hot15d”,相应的,最终展示的预览图像中显示出“该视频已上传90天”或“该视频已保持热门15天”等便于用户理解的人性化展示效果。对合并后的数据进行渲染的具体过程可以参见相关技术中记载的内容,此处不再赘述。
在一实施例中,使用预设的渲染规则对合并后数据进行上述渲染;当然,可以预设多种渲染规则,每种渲染规则对应特定显示效果的预览图像,以在必要时按照预设方式或允许用户自定义目标视频的渲染规则。
经过上述数据合并及渲染的过程,得到新增视频对应的静态视图,实际上,静态视图就是渲染后的数据集合。
在步骤210中,将静态视图保存在预设存储空间中。
在利用新增视频对应的视频元素数据经过合并与渲染生成静态视图后,将该静态视图保存在预设的存储空间内。上述存储空间可以与服务器在物理上位于同一设备内部,也可以单独设置于服务器外部;可以是服务器自身的存储空间,也可以是独立于服务器的存储空间;可以是存取速度较快的缓存设备,也可以是一般的存储设备,本公开对此并不进行限制。在一实施例中,可以将上述静态视图以JSON格式缓存到Memcached缓存系统或者Redis缓存组件中。
在另一实施例,可以将上述静态视图经过压缩后预先保存在预设的缓存空间内;相应的,在压缩后的该静态视图被确定为目标视图后,在后续步骤220中可以将压缩后的目标静态视图发送至客户端,以减少发送数据量从而降低网络资源开销;或者,对压缩后的目标静态视图进行解压,再将解压后的目标静态视图发送至客户端,以充分发挥服务器的运算能力,降低客户端的运行压力。
当任一新增视频对应的静态视图被保存后,实际上已经完成了对新增视频的静态化处理。
从静态视图生成到被请求的时间段内,该静态视图对应的新增视频的视频状态及视频元素数据均可能发生变化。因此,在一实施例中,可以在发生预设的更新触发事件的情况下,针对已保存的静态视图进行更新操作,以在静态化处理的基础上尽量使目标静态视图更接近实时视图,从而提高用户体验。其中,上述更新触发事件可以包括视频被删除、视频被举报、视频元素数据的变化满足预设限值和/或更新周期到时;相应的,上述更新操作可以包括:删除、提交人工审核、限制观看权限、更新静态视图整体和/或更新变化满足预设限值的所述视频元素数据对应的静态视图中的一部分。
在一示例性实施例中,可以对更新触发事件及对应的更新操作预设更新优先级,并在上述更新触发事件发生后按照上述更新优先级对静态视图进行与更新触发事件相对应的更新操作。如,当某新增视频被应用程序管理员、网警、该新增视频的发布者或其他按照预设规则对视频进行清理的人员删除后,立即删除该新增视频对应的静态视图;在某新增视频被举报后,可以在举报人数超出预设人数后直接删除该新增视频对应的静态视图或限制仅发布者自己可见,也可以展示关于目标静态视图的审核提醒消息以供管理人员进行审核,并在接收到管理人员发出的审核指令时根据审核指令对目标静态视图进行相应的处理;在某新增视频的评论数大于预设评论数后,可以直接更新该新增视频对应的静态视图中评论数对应的部分,也可以重新获取当前视频元素数据并用重新生成的新的静态视图替换原来的静态视图,从而实现对该新增视频对应的静态视图的整体更新。可以对某新增视频预设更新周期,如累加形式的12小时,或定点形式的每天凌晨2:00,当预设的更新周期到时后,重新获取当前视频元素数据并使用重新生成的新的静态视图替换原来的静态视图,从而实现对该新增视频对应的静态视图的整体更新;也可以在更新周期到时后,获取变化量满足预设限值的视频元素数据,并基于这部分数据更新静态视图中的相应部分。其中,对于是否发生上述更新触发事件的判断,可以通过订阅事件的方式实现,具体实现过程可参见相关技术中记载的内容。
在另一实施例中,可以设置更新触发事件的优先级为:视频被删除>视频被举报>更新周期到时>视频元素数据的变化满足预设限值,相应的,可以设置更新操作的优先级为:删除>限制观看权限>展示审核提醒消息>更新静态视图整体>更新所述目标静态视图中变化量满足预设限值的所述视频元素数据对应的部分。当然,上述优先级设置及不同更新触发事件及其对应的更新操作均可根据方案的实际场景进行设置,本公开对此并不进行限制。
实际上,上述步骤202-步骤210为针对新增视频的预处理过程,下述步骤212-步骤220为响应客户端发出的视图获取请求的过程,上述两过程之间并不存在时间上的必然联系;也就是说,步骤210与步骤212之间的间隔时间并不确定。而且,任一客户端发布的任一新增视频均有可能被确定为任一用户发出的任一视图获取请求对应的目标视频;相应的,在任一经过静态化处理的新增视频被确定为目标视频后,其对应的静态视图即为目标静态视图。
下面以安装在智能手机上的短视频社区应用“应用K”为例,结合步骤212-步骤220对服务器通过本公开的技术方案响应客户端发出的视图获取请求的过程进行详细描述。
在步骤212中,接收针对目标视频的视图获取请求。
请参见图4a所示的用户进行的短视频刷新操作示意图;如图4a所示,“应用K”的视频展示界面中可以分为“热点”、“关注”和“同城”三大社区。以“热点”社区为例,视频展示界面采用竖向双列的显示方式,假设用户对视频展示界面显示的“A爆笑视频”,“B民风淳朴”,“C跟我唱吧”和“D硬核挑战”四个页面不感兴趣或已经查看完毕,因此其会通过“应用K”客户端支持的点中屏幕向上滑动手指的刷新动作对视频展示界面进行刷新。用户在做出上述刷新动作后,视频展示界面理论上会显示如图4b所示的等待刷新结果画面。
在用户做出上述刷新操作后,“应用K”服务器会接收到客户端发出的针对目标视频的视图获取请求。其中,在一示例性实施例中,客户端接收到用户的上述动作对应的操作指令后,根据预设的视频推荐机制确定刷新后需要显示的目标视频,并将携带有该目标视频的视频ID等相关信息的视图获取请求发送至服务器;在另一示例性实施例中,客户端接收到用户的上述动作对应的操作指令后,向服务器发送视图获取指令,服务器在接收到该指令后按照预设的视频推荐机制确定刷新后需要显示的目标视频。其中,上述客户端或服务器根据预设的视频推荐机制确定目标视频的具体过程可以参见相关技术中记载的内容,本公开对此并不进行限制。
在步骤214中,确定是否对请求对应的服务进行降级处理。
服务器接收到针对目标视频的上述视图获取请求后,在服务器的当前负载状态、客户端的已登录账号的账号属性和/或目标视频的视频属性满足预设静态化条件的情况下,确定对视图获取请求对应的视频提供服务进行降级处理。具体的,上述静态化条件可以包括服务器的当前请求数量不大于预设的第二请求数量、目标视频的视频等级不低于预设的第二等级和/或视频发布账号的账号属性优先级不大于预设的账号属性优先级等。上述已登录账号的账号属性可以包括:会员类型(如临时会员、包月付费会员、终身免费会员等),会员等级(青铜、白银、黄金、钻石等),已登录账号关注的话题(美妆、歌唱比赛、户外直播等),已登录账号的历史观看偏好(观看时长最长的视频类型、观看时长大于预设第一时长的视频类型、观看时长小于预设第二时长的视频类型等)。上述目标视频的视频属性可以包括:视频标签(如搞笑、民俗、音乐、科普等),视频热度(观看人数、点赞人数、账号平均观看次数、通过前述参数计算的热度值等),目标视频的发布者的会员类型,目标视频的发布者的会员等级,目标视频的发布者的活跃度(如平均每月登录次数,每次登录的平均在线时长等)等。
在一实施例中,可以根据上述某一属性参数确定是否对视图获取请求对应的视频提供服务进行降级处理。作为一示例性实施例,在服务器的当前负载小于预设负载值的情况下,确定对视图获取请求对应的视频提供服务不进行降级处理;否则,在服务器的当前负载不小于预设负载值的情况下,确定对视图获取请求对应的视频提供服务进行降级处理。作为另一示例性实施例,在会员类型为临时会员的情况下,或者该目标视频的视频类型属于同区域用户的平均观看时长大于预时长的视频类型的情况下,或者在该目标视频的观看人数超出预设人数或当前热度值大于预设热度值的情况下,确定对视图获取请求对应的视频提供服务进行降级处理。
在另一实施例中,可以根据发出上述视图获取请求的客户端的当前登录账号与目标视频的关系确定是否对视图获取请求对应的视频提供服务进行降级处理。如,在发出上述视图获取请求的客户端的当前登录账号即为目标视频的发布者账号(即发布者查看自己的作品)的情况下,确定对视图获取请求对应的视频提供服务不进行降级处理,从而保证视频上传者能够及时获知自己作品的动态。或者,在发出上述视图获取请求的客户端的当前登录账号前一次针对该目标视频的请求时间小于预设阈值的情况下,确定对视图获取请求对应的视频提供服务进行降级处理,从而避免用户短时间内重复操作或误操作为服务器网络资源和计算资源带来的无效负荷。
在另一实施例中,可以综合利用服务器的当前负载值、上述新增视频的视频属性、账号属性及其他信息判定是否对该新增视频进行静态化处理,如通过计算上述多个属性信息的加权平均值的大小来判定是否对该新增视频进行静态化处理等。
经过上述确定过程,在确定对视图获取请求对应的视频提供服务进行降级处理的情况下,转入步骤216;否则,在确定对视图获取请求对应的视频提供服务不进行降级处理的情况下,转入步骤218。
在步骤216中,获取预存的目标静态视图。
在确定对视图获取请求对应的视频提供服务进行降级处理的情况下,从预设存储空间中获取预先存储的目标视频对应的目标静态视图。具体的,可以通过服务器中预存的目标视频ID或其他视频唯一标志信息与目标静态视图及其保存地址之间的对应关系,在该保存地址中获取上述目标静态视图。
由前所述,因为步骤210与步骤212之间的间隔时间不确定,可能为一分钟、几小时、几天甚至几周等,因此本步骤中获取的目标静态视图实际上是上述间隔时间之前时刻或者是最近一次更新之后时刻对应的目标视频的视图,因此相对于客户端的请求时刻或者向客户端返回该视图的时刻来说,返回的该视图是“静态”的,而非“实时”的。
在步骤218中,获取实时视频元素数据,生成目标实施视图。
在确定对视图获取请求对应的视频提供服务不进行降级处理的情况下,首先获取目标视频对应的当前视频元素数据;然后渲染当前视频元素数据以生成目标实时视图。上述具体的数据获取及数据渲染过程与前述步骤206-步骤208并无本质区别,此处不再赘述。
在一实施例中,可以将生成的上述目标实时视图作为目标视频对应的静态视图进行保存,也可以使用生成的上述目标实时视图替换目标视频已经保存的目标静态视图,以便在后续任一用户发出针对该目标视频的新的视图获取请求后,在确定对视图获取请求对应的视频提供服务进行降级处理的情况下,直接调用该实时视图作为静态视图进行响应,从而进一步加快针对新请求的响应速度。另外,该实时视图的保存、压缩、更新等操作与上述内容并无本质区别,不再赘述。
因为本步骤218中获取的是当前的实时视频元素数据,因此经过合并及渲染生成的也是目标视频对应的实时视图。
在步骤220中,向客户端返回目标视频对应的目标视图。
将步骤216获取的目标视频对应的目标静态视图或步骤218生成的目标视频对应的目标实时视图返回至客户端,作为对客户端针对目标视频发出的视图获取请求的响应。相应的,客户端在接收到服务器返回的目标视图后,基于该目标视图生成对应于目标视频的视频预览画面,并在客户端的视频展示界面中展示,以便于用户查看。
至此,服务器完成了响应客户端发出的视图获取请求的全部过程,此时“应用K”客户端的视频展示界面中展示的视频预览画面如图4c所示,刷新出了三个新的短视频预览画面:“F科普视频”、“G购车指南”和“H特色美食”。
综上可见,本公开中服务器响应客户端发送的视图获取请求的过程,对应图4b所示的刷新后等待过程。而本公开的目的正是为了缩短图4b所示的刷新后等待时间,实际上,采用本公开的上述方案后,图4b所示的等待时间极短,用户难以感知,从而提高了用户的操作体验。
另外,用户在查看基于目标视图展示出的视频预览画面后,若对某视频感兴趣可以通过点击或长按等预设动作打开所述目标视频。用户做出上述预设动作后,客户端可以根据目标视图中的视频文件地址及其他元素的对应地址通过CDN获取对应的元素,进而显示该目标视频以供用户观看。
与前述视频服务提供方法的实施例相对应地,本公开还提出了视频服务提供装置的实施例。
图5是根据本公开的实施例示出的一种视频服务提供装置的示意框图。本实施例所示的视频服务提供装置可以适用于视频服务提供应用,所述应用适用于服务器。与所述服务器对应的客户端本质上就是视频服务获取应用,该客户端可以适用于终端,包括但不限于手机、平板电脑、可穿戴设备、个人计算机等电子设备。所述客户端可以是安装在终端中的应用程序,也可以是集成在浏览器中的网页版应用,用户可以通过视频播放应用播放视频,其中,所述播放的视频可以是短视频,例如视频剪辑、情景短剧等;也可以是长视频,例如电影、电视剧等。
如图5所示,所述视频服务提供装置可以包括:
请求接收模块501,被配置为接收客户端针对目标视频发出的视图获取请求;
视图获取模型502,被配置为若确定将所述目标视频对应的静态视图作为对所述视图获取请求的响应,则获取预先保存的所述目标静态视图,所述目标静态视图由所述目标视频对应的视频元素数据生成;
视图返回模块503,被配置为向所述客户端返回所述目标静态视图。
可选的,由所述目标视频对应的视频元素数据生成所述目标静态视图,包括:
将所述目标视频对应的视频元素数据中包含的多项子元素数据按照目标视图模型的预设格式进行合并,得到合并后数据;
渲染所述合并后数据以生成所述目标静态视图。
可选的,所述视频元素数据包括下述至少之一:
视频文件地址、音乐信息、字幕信息、封面信息、点赞数量、评论数量、转发数量。
可选的,所述装置还包括:
降级确定模块504,被配置为在所述服务器的当前请求数量不小于预设的第一请求数量、所述目标视频的视频等级不高于预设的第一等级和/或所述客户端的已登录账号的账号请求优先级不大于预设的请求优先级时,确定将所述目标视频对应的静态视图作为对所述视图获取请求的响应。
可选的,所述降级确定模块,包括:
属性获取单元504A,被配置为获取所述已登录账号的目标账号属性,所述目标账号属性包括下述至少之一:所述已登录账号的会员类型、所述已登录账号的会员等级、所述已登录账号关注的话题、所述已登录账号的历史观看偏好对应的视频类型;
优先级确定单元504B,被配置为基于预设的账号属性与账号请求优先级之间的映射关系,确定对应于所述目标账号属性的账号请求优先级。
可选的,基于下述至少之一的视频属性确定所述目标视频的视频等级:
视频标签、视频热度、所述目标视频的发布者的会员类型、所述目标视频的发布者的会员等级、所述目标视频的发布者的活跃度。
可选的,在接收到视频发布账号所发布的新增视频时,所述装置还包括:
视图生成模块505,被配置为若所述服务器的当前请求数量不大于预设的第二请求数量、所述目标视频的视频等级不低于预设的第二等级和/或所述视频发布账号的账号属性优先级不大于预设的账号属性优先级,则根据所述新增视频对应的视频元素数据生成所述新增视频对应的静态视图。
可选的,所述装置还包括:
压缩保存模块506,被配置为将所述目标静态视图经过压缩后预先保存在预设的缓存空间内;
所述视图返回模块,还被配置为:将所述压缩后的目标静态视图发送至所述客户端;或者,对所述压缩后的目标静态视图进行解压,将解压后的所述目标静态视图发送至所述客户端。
可选的,所述装置还包括:
视图更新模块507,被配置为在发生预设的更新触发事件的情况下,针对所述目标静态视图进行更新操作。
可选的,
所述更新触发事件包括:对应于所述目标静态视图的目标视频被删除,所述更新操作包括:删除所述目标静态视图或更改所述目标静态视图的获取权限;或者,
所述更新触发事件包括:对应于所述目标静态视图的目标视频被举报,所述更新操作包括:展示关于所述目标静态视图的审核提醒消息,并在接收到审核指令时根据所述审核指令对所述目标静态视图进行相应处理、删除所述目标静态视图或更改所述目标静态视图的获取权限;或者,
所述更新触发事件包括:所述视频元素数据的变化量满足预设限值或所述目标静态视图的更新周期到时,所述更新操作包括:更新所述目标静态视图整体或更新所述目标静态视图中变化量满足预设限值的所述视频元素数据对应的部分。
可选的,所述装置还包括:
实时数据获取模块508,被配置为若确定不将所述目标视频对应的静态视图作为对所述视图获取请求的响应,则获取所述目标视频对应的当前视频元素数据;
实时视图生成模型509,被配置为所述当前视频元素数据以生成目标实时视图;
实时视图返回模块510,被配置为向所述客户端返回所述目标实时视图。
本公开的实施例还提出一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如上述任一实施例所述的视频服务提供方法。
本公开的实施例还提出一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述任一实施例所述的视频服务提供方法。
图6是根据本公开的实施例示出的一种电子设备的示意框图。例如,电子设备600可以是个人计算机,工业计算机,工控机等形式的服务器。
参照图6,电子设备600可以包括以下一个或多个组件:处理组件602,存储器604,电源组件606,多媒体组件608,音频组件610,输入/输出(I/O)的接口612,传感器组件614,以及通信组件618。
处理组件602通常控制电子设备600的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件602可以包括一个或多个处理器620来执行指令,以完成上述视频服务提供方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理组件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。
存储器604被配置为存储各种类型的数据以支持在电子设备600的操作。这些数据的示例包括用于在电子设备600上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件606为电子设备600的各种组件提供电力。电源组件606可以包括电源管理系统,一个或多个电源,及其他与为电子设备600生成、管理和分配电力相关联的组件。
多媒体组件608包括在电子设备600和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件608包括一个前置摄像头和/或后置摄像头。当电子设备600处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件610被配置为输出和/或输入音频信号。例如,音频组件610包括一个麦克风(MIC),当电子设备600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件618发送。在一些实施例中,音频组件610还包括一个扬声器,用于输出音频信号。
I/O接口612为处理组件602和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件614包括一个或多个传感器,用于为电子设备600提供各个方面的状态评估。例如,传感器组件614可以检测到电子设备600的打开/关闭状态,组件的相对定位,例如所述组件为电子设备600的显示器和小键盘,传感器组件614还可以检测电子设备600或电子设备600一个组件的位置改变,用户与电子设备600接触的存在或不存在,电子设备600方位或加速/减速和电子设备600的温度变化。传感器组件614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件614还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件614还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件618被配置为便于电子设备600和其他设备之间有线或无线方式的通信。电子设备600可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它们的组合。在一个示例性实施例中,通信组件618经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件618还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在本公开一实施例中,电子设备600可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述视频服务提供方法。
在本公开一实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器604,上述指令可由电子设备600的处理器620执行以完成上述视频服务提供方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
需要说明的是,在本公开中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本公开实施例所提供的方法和装置进行了详细介绍,本文中应用了具体个例对本公开的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本公开的方法及其核心思想;同时,对于本领域的一般技术人员,依据本公开的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本公开的限制。

Claims (10)

1.一种视频服务提供方法,其特征在于,应用于服务器,所述方法包括:
接收客户端针对目标视频发出的视图获取请求;
若确定将所述目标视频对应的静态视图作为对所述视图获取请求的响应,则获取预先保存的所述目标静态视图,所述目标静态视图由所述目标视频对应的视频元素数据生成;
向所述客户端返回所述目标静态视图。
2.根据权利要求1所述的方法,其特征在于,由所述目标视频对应的视频元素数据生成所述目标静态视图,包括:
将所述目标视频对应的视频元素数据中包含的多项子元素数据按照目标视图模型的预设格式进行合并,得到合并后数据;
渲染所述合并后数据以生成所述目标静态视图。
3.根据权利要求1所述的方法,其特征在于,还包括:
在所述服务器的当前请求数量不小于预设的第一请求数量、所述目标视频的视频等级不高于预设的第一等级和/或所述客户端的已登录账号的账号请求优先级不大于预设的请求优先级时,确定将所述目标视频对应的静态视图作为对所述视图获取请求的响应。
4.根据权利要求3所述的方法,其特征在于,确定所述已登录账号的账号请求优先级,包括:
获取所述已登录账号的目标账号属性,所述目标账号属性包括下述至少之一:所述已登录账号的会员类型、所述已登录账号的会员等级、所述已登录账号关注的话题、所述已登录账号的历史观看偏好对应的视频类型;
基于预设的账号属性与账号请求优先级之间的映射关系,确定对应于所述目标账号属性的账号请求优先级。
5.根据权利要求1所述的方法,其特征在于,在接收到视频发布账号所发布的新增视频时,还包括:
若所述服务器的当前请求数量不大于预设的第二请求数量、所述目标视频的视频等级不低于预设的第二等级和/或所述视频发布账号的账号属性优先级不大于预设的账号属性优先级,则根据所述新增视频对应的视频元素数据生成所述新增视频对应的静态视图。
6.根据权利要求1所述的方法,其特征在于,还包括:
在发生预设的更新触发事件的情况下,针对所述目标静态视图进行更新操作。
7.根据权利要求1所述的方法,其特征在于,还包括:
若确定不将所述目标视频对应的静态视图作为对所述视图获取请求的响应,则获取所述目标视频对应的当前视频元素数据;
渲染所述当前视频元素数据以生成目标实时视图;
向所述客户端返回所述目标实时视图。
8.一种视频服务提供装置,其特征在于,应用于服务器,所述装置包括:
请求接收模块,被配置为接收客户端针对目标视频发出的视图获取请求;
视图获取模块,被配置为若确定将所述目标视频对应的静态视图作为对所述视图获取请求的响应,则获取预先保存的所述目标静态视图,所述目标静态视图由所述目标视频对应的视频元素数据生成;
视图返回模块,被配置为向所述客户端返回所述目标静态视图。
9.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至7中任一项所述的视频服务提供方法。
10.一种存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1至7中任一项所述的视频服务提供方法。
CN202010357891.1A 2020-04-29 2020-04-29 视频服务提供方法、装置、电子设备和存储介质 Pending CN111581434A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010357891.1A CN111581434A (zh) 2020-04-29 2020-04-29 视频服务提供方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010357891.1A CN111581434A (zh) 2020-04-29 2020-04-29 视频服务提供方法、装置、电子设备和存储介质

Publications (1)

Publication Number Publication Date
CN111581434A true CN111581434A (zh) 2020-08-25

Family

ID=72111910

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010357891.1A Pending CN111581434A (zh) 2020-04-29 2020-04-29 视频服务提供方法、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN111581434A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112839184A (zh) * 2020-12-31 2021-05-25 深圳追一科技有限公司 图像处理方法、装置、电子设备及存储介质
CN113505247A (zh) * 2021-07-02 2021-10-15 兰州理工大学 基于内容的高时长视频色情内容检测方法
CN113727139A (zh) * 2021-07-30 2021-11-30 北京达佳互联信息技术有限公司 封面图片的确定方法、装置、服务器及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160345052A1 (en) * 2015-05-19 2016-11-24 Lemobile Information Technology (Beijing) Co., Ltd. Method and device for previewing video files
CN109257611A (zh) * 2017-07-12 2019-01-22 阿里巴巴集团控股有限公司 一种视频播放方法、装置、终端设备和服务器
CN109413483A (zh) * 2018-11-29 2019-03-01 北京字节跳动网络技术有限公司 直播内容的预览方法、装置、设备和介质
CN109657429A (zh) * 2018-09-27 2019-04-19 深圳壹账通智能科技有限公司 视频资源管理方法、设备、系统及计算机可读存储介质
CN110446083A (zh) * 2019-08-29 2019-11-12 北京达佳互联信息技术有限公司 视频播放方法、装置、电子设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160345052A1 (en) * 2015-05-19 2016-11-24 Lemobile Information Technology (Beijing) Co., Ltd. Method and device for previewing video files
CN109257611A (zh) * 2017-07-12 2019-01-22 阿里巴巴集团控股有限公司 一种视频播放方法、装置、终端设备和服务器
CN109657429A (zh) * 2018-09-27 2019-04-19 深圳壹账通智能科技有限公司 视频资源管理方法、设备、系统及计算机可读存储介质
CN109413483A (zh) * 2018-11-29 2019-03-01 北京字节跳动网络技术有限公司 直播内容的预览方法、装置、设备和介质
CN110446083A (zh) * 2019-08-29 2019-11-12 北京达佳互联信息技术有限公司 视频播放方法、装置、电子设备及存储介质

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112839184A (zh) * 2020-12-31 2021-05-25 深圳追一科技有限公司 图像处理方法、装置、电子设备及存储介质
CN112839184B (zh) * 2020-12-31 2022-02-01 深圳追一科技有限公司 图像处理方法、装置、电子设备及存储介质
CN113505247A (zh) * 2021-07-02 2021-10-15 兰州理工大学 基于内容的高时长视频色情内容检测方法
CN113505247B (zh) * 2021-07-02 2022-06-07 兰州理工大学 基于内容的高时长视频色情内容检测方法
CN113727139A (zh) * 2021-07-30 2021-11-30 北京达佳互联信息技术有限公司 封面图片的确定方法、装置、服务器及存储介质

Similar Documents

Publication Publication Date Title
AU2016277657B2 (en) Methods and systems for identifying media assets
US9106942B2 (en) Method and system for managing display of personalized advertisements in a user interface (UI) of an on-screen interactive program (IPG)
US10452250B2 (en) Method for associating media files with additional content
US11416566B2 (en) Methods and systems for determining media content to download
US8928810B2 (en) System for combining video data streams into a composite video data stream
CN111581434A (zh) 视频服务提供方法、装置、电子设备和存储介质
US20150256885A1 (en) Method for determining content for a personal channel
US20220070548A1 (en) System and method for advertising
CA2977959A1 (en) Methods and systems for recommending media content
US11463741B2 (en) Methods and systems for dynamic routing of content using a static playlist manifest
US20140282667A1 (en) Television content management with integrated third party interface
US20130110900A1 (en) System and method for controlling and consuming content
US11432053B1 (en) Dynamic URL personalization system for enhancing interactive television
WO2020135161A1 (zh) 视频播放跳转方法、系统及计算机可读存储介质
US10419825B2 (en) Queue to display information for entities during video playback
US20150244972A1 (en) Methods and systems for determining lengths of time for retaining media assets
CN114666643A (zh) 一种信息显示方法、装置、电子设备及存储介质
CN114554231A (zh) 一种信息显示方法、装置、电子设备及存储介质
CN113568551A (zh) 图片保存方法及装置
US11671668B2 (en) Training of multiple parts of a model to identify behavior to person prediction
CN114003741A (zh) 一种文本展示方法、装置、电子设备及存储介质
CN115495682A (zh) 页面显示方法、装置、电子设备及存储介质
KR20090066859A (ko) 리치미디어 서버와 리치미디어 전송 시스템 및 리치미디어전송 방법

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