CN112752117B - 一种视频缓存方法、装置、设备及存储介质 - Google Patents

一种视频缓存方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN112752117B
CN112752117B CN202011613189.3A CN202011613189A CN112752117B CN 112752117 B CN112752117 B CN 112752117B CN 202011613189 A CN202011613189 A CN 202011613189A CN 112752117 B CN112752117 B CN 112752117B
Authority
CN
China
Prior art keywords
played
video
proportion
determining
caching
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.)
Active
Application number
CN202011613189.3A
Other languages
English (en)
Other versions
CN112752117A (zh
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.)
Bigo Technology Pte Ltd
Original Assignee
Bigo Technology Pte 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 Bigo Technology Pte Ltd filed Critical Bigo Technology Pte Ltd
Priority to CN202011613189.3A priority Critical patent/CN112752117B/zh
Publication of CN112752117A publication Critical patent/CN112752117A/zh
Application granted granted Critical
Publication of CN112752117B publication Critical patent/CN112752117B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • 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/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23109Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion by placing content in organized collections, e.g. EPG data repository
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4332Content storage operation, e.g. storage operation in response to a pause request, caching operations by placing content in organized collections, e.g. local EPG data repository

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明实施例公开了视频缓存方法、装置、设备及存储介质。该方法包括:确定当前播放视频之后的待播放视频集合,待播放视频集合中包括预设个数的按照预设排列顺序进行播放的待播放视频,对待播放视频集合进行缓存过程建模,得到待播放视频集合的体验质量模型,根据贪心算法确定体验质量模型中需要进行预缓存的目标视频的个数和每个目标视频的预缓存比例。本发明实施例提供的技术方案,对待播放视频集合进行缓存过程建模,并利用贪心算法对所构建的体验质量模型进行求解,能够合理地确定需要进行缓存的视频的个数和每个视频对应的预缓存比例,解决视频播放过程中的卡顿问题,在视频流媒体连续播放过程中卡顿率更低,可观看视频的比例更大。

Description

一种视频缓存方法、装置、设备及存储介质
技术领域
本发明实施例涉及通讯网络技术领域,尤其涉及一种视频缓存方法、装置、设备及存储介质。
背景技术
随着网络技术和硬件性能的不断发展,语音和文字交流已无法满足人们的需求。高清实时视频逐渐成为人们沟通和娱乐的重要方式。其中,短视频流媒体播放成为了一个日常娱乐活动,而播放过程中的卡顿问题和用户体验息息相关。
网络的波动性很大程度上会造成用户播放原始高清视频时出现卡顿,目前业界已经使用了多码率视频来对抗网络播动,即单个播放源会转码成多个不同分辨率码率的源。并且为了减少视频加载的时间,在用户观看当前视频时,如果当前视频已经缓存完成,会基于当前网络缓存后面几个视频的一部分。但是关于缓存视频的数量以及单个视频的预缓存比例如何确定尚未有更好的技术方案。
发明内容
本发明实施例提供了视频缓存方法、装置、设备及存储介质,能够动态合理地确定需要进行缓存的视频的个数和每个视频对应的预缓存比例,从而解决视频播放过程中的卡顿问题。
第一方面,本发明实施例提供了一种视频缓存方法,该方法包括:
确定当前播放视频之后的待播放视频集合,所述待播放视频集合中包括预设个数的按照预设排列顺序进行播放的待播放视频;
对所述待播放视频集合进行缓存过程建模,得到所述待播放视频集合的体验质量模型,所述体验质量模型用于表征体验质量;
根据贪心算法确定所述体验质量模型中需要进行预缓存的目标视频的个数和每个目标视频的预缓存比例,所述目标视频的个数小于或者等于所述预设个数。
第二方面,本发明实施例提供了一种视频缓存装置,该装置包括:
视频集合确定模块,用于确定当前播放视频之后的待播放视频集合,所述待播放视频集合中包括预设个数的按照预设排列顺序进行播放的待播放视频;
质量模型确定模块,用于对所述待播放视频集合进行缓存过程建模,得到所述待播放视频集合的体验质量模型,所述体验质量模型用于表征体验质量;
参数确定模块,用于根据贪心算法确定所述体验质量模型中需要进行预缓存的目标视频的个数和每个目标视频的预缓存比例,所述目标视频的个数小于或者等于所述预设个数。
第三方面,本发明实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如本发明实施例提供的视频缓存方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例提供的视频缓存方法。
本发明实施例中提供的视频缓存方案,首先确定当前播放视频之后的待播放视频集合,待播放视频集合中包括预设个数的按照预设排列顺序进行播放的待播放视频,然后对待播放视频集合进行缓存过程建模,得到待播放视频集合的体验质量模型,最后根据贪心算法确定体验质量模型中需要进行预缓存的目标视频的个数和每个目标视频的预缓存比例。通过采用上述技术方案,对待播放视频集合进行缓存过程建模,并利用贪心算法对所构建的体验质量模型进行求解,可以动态合理地确定需要进行缓存的视频的个数和每个视频对应的预缓存比例,从而解决视频播放过程中的卡顿问题,在视频流媒体连续播放过程中卡顿率更低,视频更清晰,可观看视频的比例更大。
附图说明
图1为本发明实施例一提供的一种视频缓存方法的流程图;
图2为本发明实施例二提供的一种视频缓存方法的流程图;
图3为本发明实施例三提供的一种视频缓存方法的流程图;
图4为本发明实施例四提供的一种视频缓存装置的结构示意图;
图5为本发明实施例五提供的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。此外,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
实施例一
图1为本发明实施例一提供的一种视频缓存方法的流程图,该方法可以由视频缓存装置执行,其中该装置可由软件和/或硬件实现,一般可集成在计算机设备中。
参考图1,本实施例中可以包括如下步骤:
S101,确定当前播放视频之后的待播放视频集合,待播放视频集合中包括预设个数的按照预设排列顺序进行播放的待播放视频。
其中,按照预设排列顺序进行播放的待播放视频可以理解为:待播放视频集合中的待播放视频的播放顺序为预设排列顺序。预设排列顺序可以为预先设置好的,例如按照视频的类型、大小或者时间等设置的排列顺序;预设排列顺序也可以是根据当前情况动态确定的。以个性化视频推荐场景为例,可以是基于用户属性、视频库中视频的视频属性以及当前播放视频的视频属性等因素,采用预设召回规则召回预设个数的满足用户个人喜好的视频,并按照预设排序规则对所召回的视频进行排序,得到按照预设排列顺序进行排列的视频,假设这些视频会按照预设排列顺序依次进行播放,则将这些视频构成的集合称为待播放视频集合。
目前,高清实时视频逐渐成为人们沟通和娱乐的重要方式,以短视频流媒体播放过程为例,用户通常通过上下滑或左右滑来切换视频,从而选择感兴趣的视频进行播放并观看。为了减少视频加载的时间,在用户观看当前视频时,如果当前视频已经缓存完成,会基于当前网络缓存后面几个视频的一部分,然而由于用户行为和喜好的不确定性,如果当前视频已经缓存完成,但是用户只观看了小部分就手动划走,此时会造成缓存数据量的浪费,又如当缓存速度不够时,预缓存比例太小可能会导致播放卡顿等问题,这些都会降低用户的体验感和满意度。
为了解决上述问题,需要先根据流媒体确定出当前播放视频之后的待播放视频集合,当前播放视频和待播放视频集合中的各视频的类型或长度不做限定,可以是短视频,也可以是长视频等。假设当前播放视频为v0,处于v0之后的待播放视频集合中包括预设个数的按照预设排列顺序进行播放的待播放视频,如v1,v2,…,vn(n为正整数),播放顺序为:v0之后播放的是v1,v1之后播放的是v2,以此类推。在确定了当前播放视频之后的待播放视频集合之后,可以方便后续对待播放视频集合进行缓存过程建模。
本发明实施例中预设个数可以是预先设计好的,也可以视具体情况而定,对预设个数不做具体限制。
S102,对待播放视频集合进行缓存过程建模,得到待播放视频集合的体验质量模型。
其中,体验质量模型用于表征体验质量。体验质量(Quality of Experience,简称QoE)可以为:基于与网络客观相关的一些参数以及与用户主观相关的参数来衡量用户满意度的指标,通常涉及的是网络和服务端对端的质量,是用户对业务的主观体验。
在确定了待播放视频集合之后,可以先选择待播放视频集合中每个待播放视频的变量,例如可以是待播放视频的观看比例或者卡顿率等,其中,观看比例可以理解为用户在切换至播放下一个视频时,当前视频已播放时长与当前视频总时长的比值,可以用于表示用户对视频的喜爱程度,可以通过视频的历史播放记录获取。卡顿率为视频播放过程中出现画面滞帧现象的概率。然后根据确定的变量选择建模算法,例如相关、聚类、分类(决策树)、时间序列、回归、神经网络等,最后算法选定后,进行缓存过程建模,能够得到待播放视频集合的体验质量模型。还可以通过假设推导或者数据拟合等方法得到待播放视频集合的体验质量模型,本实施例对具体的建模方法不做具体限制。
S103,根据贪心算法确定体验质量模型中需要进行预缓存的目标视频的个数和每个目标视频的预缓存比例。
其中,目标视频的个数小于或者等于所述预设个数。贪心算法是指在对问题求解时,总是做出在当前看来最好的选择。也就是说,一个问题的整体最优解可以通过一系列局部的最优解的选择达到,并且每次的选择可以依赖以前的选择,但不依赖于后面要作的选择。
利用贪心算法求取局部最优解的性质,在得到体验质量模型之后,通过贪心算法可以确定出待播放视频集合中每个待播放视频能够缓存的最大缓存比例,从而根据该最大缓存比例,以及该最大缓存比例所对应的待播放视频能够确定体验质量模型中需要进行预缓存的目标视频的个数和每个目标视频的预缓存比例。
本实施例提供的技术方案,首先确定当前播放视频之后的待播放视频集合,待播放视频集合中包括预设个数的按照预设排列顺序进行播放的待播放视频,然后对待播放视频集合进行缓存过程建模,得到待播放视频集合的体验质量模型,最后根据贪心算法确定体验质量模型中需要进行预缓存的目标视频的个数和每个目标视频的预缓存比例,通过对待播放视频集合进行缓存过程建模,并利用贪心算法对所构建的体验质量模型进行求解,可以动态合理地确定需要进行缓存的视频的个数和每个视频对应的预缓存比例,从而解决视频播放过程中的卡顿问题,在视频流媒体连续播放过程中卡顿率更低,视频更清晰,可观看视频的比例更大。
实施例二
图2为本发明实施例二提供的一种视频缓存方法的流程图,本实施例是在上述各可选实施例的基础上进行优化。具体的,如图2所示,本实施例中对得到体验质量模型的过程进行详细的解释说明。
参考图2,本实施例中可以包括如下步骤:
S201,确定当前播放视频之后的待播放视频集合,待播放视频集合中包括预设个数的按照预设排列顺序进行播放的待播放视频。
S202,针对待播放视频集合中的每个待播放视频,根据当前待播放视频中各预设参数的值和各预设参数的权重值,确定当前待播放视频的体验质量子模型。
其中,各预设参数包括所述当前待播放视频的码率、卡顿率、出视频时间以及观看比例。码率为视频数据传输时单位时间传送的数据位数。出视频时间可以理解为以当前播放视频的缓存速度缓存至对应的出视频比例所需要的时间。出视频比例可以理解为视频可进行播放时对应的时长与视频总时长的比值。
针对待播放视频集合中的每个待播放视频(即v1,v2,…,vn),根据当前待播放视频的码率和码率的权重值、卡顿率和卡顿率的权重值、出视频时间和出视频时间的权重值,以及观看比例和观看比例的权重值,通过加权方式可以确定当前待播放视频的体验质量子模型。
可选的,所述当前待播放视频的码率与所述体验质量子模型对应的体验质量正相关,所述卡顿率与所述体验质量子模型对应的体验质量负相关,所述出视频时间与所述体验质量子模型对应的体验质量负相关,所述观看比例与所述体验质量子模型对应的体验质量正相关。
由于当前待播放视频的码率和观看比例越大,用户观看时的体验感会越好,而卡顿率和出视频时间较大会使用户的体验感变差,因此当前待播放视频的码率和观看比例对体验质量子模型对应的体验质量的影响是正相关的,卡顿率和出视频时间对体验质量子模型对应的体验质量的影响是负相关的。
具体的,当前待播放视频的体验质量子模型可以通过下式表示:
QoEi(pi,vi)=α·ri-β·si-γ·qi+θ·ci (1)
其中,QoEi表示当前待播放视频对应的体验质量,vi(1≤i≤n)表示当前待播放视频,pi表示当前待播放视频的预缓存比例,ri表示当前待播放视频的码率,α表示当前待播放视频的码率所对应的权重值,si表示当前待播放视频的卡顿率,β表示当前待播放视频的卡顿率所对应的权重值,qi表示当前待播放视频的出视频时间,γ表示当前待播放视频的出视频时间所对应的权重值,ci表示当前待播放视频的观看比例,θ表示当前待播放视频的观看比例所对应的权重值,且α、β、γ和θ的值均大于0。
本发明实施例中根据当前待播放视频的码率、卡顿率、出视频时间以及观看比例与体验质量子模型对应的体验质量的相关关系确定体验质量子模型,使得最终得到的体验质量子模型更为准确,从而待播放视频集合的体验质量模型也更接近实际情况。
可选的,在所述确定当前播放视频之后的待播放视频集合之时,还可以包括:获取当前播放视频的平均缓存速度;相应的,所述当前待播放视频的卡顿率可以具体通过以下方式得到:根据所述当前待播放视频的总播放时长、码率、未缓存比例和所述平均缓存速度,确定所述当前待播放视频的未缓存比例对应的播放时长;将所述未缓存比例对应的播放时长和总播放时长相减,得到第一数值;将所述第一数值和总播放时长相除,得到第二数值;将所述第二数值和第一预设阈值中较大的数值确定为所述当前待播放视频的卡顿率。
其中,第一预设阈值可以设置为1,也可以是其他数值,本实施例中对第一预设阈值的大小不做具体限制。
具体的,将当前待播放视频的总播放时长与码率相乘可以得到当前待播放视频总数据量的字节数;未缓存比例可以通过1减去当前待播放视频的预缓存比例得到;接着将当前待播放视频总数据量的字节数和未缓存比例相乘得到当前待播放视频的未缓存比例对应的数据量的字节数;再将当前待播放视频的未缓存比例对应的数据量的字节数和平均缓存速度相除,得到当前待播放视频的未缓存比例对应的播放时长。
相应的,当前待播放视频的卡顿率可以通过下式表示:
Figure BDA0002875522830000091
其中,li表示当前待播放视频的总播放时长,bw表示当前播放视频的平均缓存速度,max表示最大值。
本发明实施例中通过当前待播放视频的预缓存比例、码率和当前播放视频的平均缓存速度,能够更准确的得到卡顿率。
进一步的,所述当前待播放视频的出视频时间可以具体通过以下方式得到:根据所述当前待播放视频的总播放时长、码率、目标出视频比例和所述平均缓存速度,确定当前待播放视频的出视频时间。
其中,目标出视频比例可以为:视频缓存到可以进行播放时所对应的比例,它的数值可以是预先确定好的,也可以视具体情况而定,本实施例不做具体限制。
本发明实施例中,通过当前待播放视频的总播放时长、码率、目标出视频比例和当前播放视频的平均缓存速度,能够更准确的得到当前待播放视频的出视频时间。
更进一步的,所述根据所述当前待播放视频的总播放时长、码率、目标出视频比例和所述平均缓存速度,确定当前待播放视频的出视频时间,可以具体包括:将所述目标出视频比例与当前待播放视频的预缓存比例相减得到的值确定为当前待播放视频的待缓存比例;将所述待缓存比例和第二预设阈值中较大的数值与总播放时长相乘,得到所述待缓存比例对应的待缓存时长;将所述待缓存时长与码率相乘,得到对应的待缓存数据量的字节数;将所述待缓存数据量的字节数与所述平均缓存速度相除,得到所述当前待播放视频的出视频时间。
其中,第二预设阈值可以设置为0,也可以是其他的数值,本实施例中对第二预设阈值的大小不做具体限制。
具体的,当前待播放视频的出视频时间可以通过下式表示:
Figure BDA0002875522830000101
其中,ε表示目标出视频比例。
S203,根据待播放视频集合中所有待播放视频分别对应的体验质量子模型,确定待播放视频集合的体验质量模型。
针对待播放视频集合中的每一个待播放视频,根据S202求出每一个待播放视频对应的体验质量子模型之后,根据待播放视频集合中所有待播放视频分别对应的体验质量子模型,能够确定待播放视频集合的体验质量模型。
进一步的,所述根据所述待播放视频集合中所有待播放视频分别对应的体验质量子模型,确定所述待播放视频集合的体验质量模型,可以具体包括:对所述待播放视频集合中所有待播放视频分别对应的体验质量子模型进行求和操作,得到所述待播放视频集合的体验质量模型。
具体的,将待播放视频集合中每个待播放视频对应的体验质量子模型进行求和操作之后,可以得到待播放视频集合的体验质量模型,该体验质量模型可以通过下式表示:
Figure BDA0002875522830000111
其中,QoE表示待播放视频集合的体验质量,QoEi表示vi对应的体验质量。
本发明实施例中,对待播放视频集合中所有待播放视频分别对应的体验质量子模型进行求和操作得到的待播放视频集合的体验质量模型更为准确,从而最终确定的目标视频的个数和每个目标视频的预缓存比例也更准确,有利于提高用户的观看体验,避免预缓存数据量的浪费。
S204,根据贪心算法确定体验质量模型中需要进行预缓存的目标视频的个数和每个目标视频的预缓存比例。
本实施例提供的技术方案,首先确定当前播放视频之后的待播放视频集合,待播放视频集合中包括预设个数的按照预设排列顺序进行播放的待播放视频,接着针对待播放视频集合中的每个待播放视频,根据当前待播放视频中各预设参数的值和各预设参数的权重值,确定当前待播放视频的体验质量子模型,然后根据待播放视频集合中所有待播放视频分别对应的体验质量子模型,确定待播放视频集合的体验质量模型,最后根据贪心算法确定体验质量模型中需要进行预缓存的目标视频的个数和每个目标视频的预缓存比例,通过先确定待播放视频集合中每个待播放视频的体验质量子模型,再将待播放视频集合中每个待播放视频对应的体验质量子模型进行求和操作,得到的待播放视频集合的体验质量模型更准确,也更接近实际情况,同时利用贪心算法对所构建的体验质量模型进行求解,所确定的目标视频的个数和每个目标视频对应的预缓存比例也更准确,从而能够有效解决视频播放过程中的卡顿问题,在视频流媒体连续播放过程中卡顿率更低,视频更清晰,可观看视频的比例更大。
实施例三
图3为本发明实施例三提供的一种视频缓存方法的流程图,本实施例是在上述各可选实施例的基础上进行优化。具体的,如图3所示,本实施例中对确定体验质量模型中需要进行预缓存的目标视频的个数和每个目标视频的预缓存比例的过程进行详细的解释说明。
参考图3,本实施例中可以包括如下步骤:
S301,确定当前播放视频之后的待播放视频集合,待播放视频集合中包括预设个数的按照预设排列顺序进行播放的待播放视频。
S302,对待播放视频集合进行缓存过程建模,得到待播放视频集合的体验质量模型。
S303,针对待播放视频集合中的每个待播放视频,确定当前待播放视频缓存数据量的字节数,并根据当前待播放视频缓存数据量的字节数确定当前待播放视频的第一缓存比例,根据贪心算法确定体验质量子模型对应的体验质量达到最大值时对应的当前待播放视频的第二缓存比例,将第一缓存比例和第二缓存比例中较大的数值确定为当前待播放视频的预缓存比例。
针对待播放视频集合中的每个待播放视频,可以先根据当前待播放视频相应的参数确定当前待播放视频缓存数据量的字节数,接着根据当前待播放视频缓存数据量的字节数确定当前待播放视频的第一缓存比例;然后根据贪心算法通过遍历当前待播放视频的预缓存比例的方式,确定体验质量子模型对应的体验质量达到最大值时对应的当前待播放视频的第二缓存比例;最后比较第一缓存比例和第二缓存比例的大小,将第一缓存比例和第二缓存比例中较大的数值确定为当前待播放视频的预缓存比例。
当前待播放视频的第二缓存比例可以通过下式表示:
p2max=argmaxpi{QoEi(pi,vi)|0≤pi≤1} (5)
其中,p2max表示当前待播放视频的第二缓存比例。
可选的,在所述确定当前播放视频之后的待播放视频集合之时,还可以具体包括:获取当前播放视频的剩余播放时长;相应的,所述确定当前待播放视频缓存数据量的字节数,可以具体包括:将所述剩余播放时长和所述平均缓存速度相乘,得到第一缓存字节数;获取在当前待播放视频之前每个已进行预缓存的待播放视频的总播放时长、码率和缓存比例;针对所述每个已进行预缓存的待播放视频,将对应的总播放时长和对应的码率相乘得到第一乘积,将所述第一乘积和对应的缓存比例相乘,得到所述每个已进行预缓存视频的待播放视频的第二缓存字节数;累加所有第二缓存字节数,得到在当前待播放视频之前已进行预缓存视频的待播放视频的总缓存字节数;将所述第一缓存字节数和所述总缓存字节数相减,得到所述当前待播放视频缓存数据量的字节数。
具体的,当前待播放视频缓存数据量的字节数可以通过下式表示:
Figure BDA0002875522830000131
其中,maxdownsize表示当前待播放视频缓存数据量的字节数,tleft表示当前播放视频的剩余播放时长,lj表示当前待播放视频之前每个已进行预缓存的待播放视频的总播放时长、rj表示当前待播放视频之前每个已进行预缓存的待播放视频的码率,pj表示当前待播放视频之前每个已进行预缓存的待播放视频的缓存比例,可以理解为在当前待播放视频之前的待播放视频已经缓存的比例满足可以开始缓存当前待播放视频的缓存条件。
本发明实施例中,通过将当前播放视频的第一缓存字节数与在当前待播放视频之前已进行预缓存视频的待播放视频的总缓存字节数相减,所确定的当前待播放视频缓存数据量的字节数更准确,从而有利于提高当前待播放视频的第一缓存比例的准确性。
进一步的,所述根据所述当前待播放视频缓存数据量的字节数确定当前待播放视频的第一缓存比例,可以具体包括:将所述当前待播放视频缓存数据量的字节数和所述当前待播放视频的码率相除,得到第三数值;将所述第三数值与所述当前待播放视频的总播放时长相除,得到第四数值;将所述第四数值和第三预设阈值中较小的数值确定为所述当前待播放视频的第一缓存比例。
其中,第三预设阈值可以设置为1,也可以是其他数值,本实施例中对第三预设阈值的大小不做具体限制。
具体的,当前待播放视频的第一缓存比例可以通过下式表示:
Figure BDA0002875522830000141
其中,p1max表示当前待播放视频的第一缓存比例。
本发明实施例中,通过式(7)确定的第一缓存比例更为准确,并且保证了第一缓存比例不会超过第三预设阈值。
S304,根据待播放视频集合中各待播放视频分别对应的预缓存比例确定需要进行缓存的目标视频的个数和每个目标视频的预缓存比例。
在得到待播放视频集合中的每个待播放视频的预缓存比例,即得到v1,v2,…,vn分别对应的预缓存比例p1,p2,…,pn之后,根据待播放视频集合中每个待播放视频分别对应的预缓存比例的具体数值可以确定需要进行缓存的目标视频的个数和每个目标视频的预缓存比例。
示例性的,若p1,p2,…,pn中pi(1≤i≤n)的数值大于0,则pi所对应的视频vi属于目标视频,pi为对应的目标视频的预缓存比例。
可选的,所述根据所述待播放视频集合中各待播放视频分别对应的预缓存比例确定所述需要进行缓存的目标视频的个数和每个目标视频的预缓存比例,可以具体包括:若所述当前待播放视频缓存数据量的字节数达到第四预设阈值,则将所述当前待播放视频的前一个待播放视频在所述待播放视频集合中排列顺序的序号确定为所述需要进行缓存的目标视频的个数,将被确定为目标视频的每个待播放视频对应的预缓存比例确定为每个目标视频的预缓存比例。
其中,第四预设阈值可以设置为0,也可以视具体情况而定,本实施例中对第四预设阈值的大小不做具体限制。
具体的,如果当前待播放视频缓存数据量的字节数达到第四预设阈值,说明当前能够进行预缓存的视频的个数已经达到了上限值,在待播放视频集合中处于当前待播放视频之后的待播放视频无法缓存,那么需要进行缓存的目标视频的个数等于当前待播放视频的前一个待播放视频在待播放视频集合中排列顺序的序号。当前待播放视频以及在待播放视频集合中处于当前待播放视频之前的待播放视频为目标视频,每个目标视频的预缓存比例等于被确定为目标视频的每个待播放视频对应的预缓存比例。例如,假设当前待播放视频为v4,它的缓存数据量的字节数为0,则需要进行缓存的目标视频的个数为3,目标视频为v1、v2和v3,每个目标视频对应的预缓存比例分别为p1、p2和p3
本发明实施例中,通过在当前待播放视频缓存数据量的字节数达到第四预设阈值,确定目标视频的个数和每个目标视频的预缓存比例,所得到的目标视频个数和每个目标视频的预缓存比例更准确,从而有利于提高用户的观看体验。
本实施例提供的技术方案,首先确定当前播放视频之后的待播放视频集合,待播放视频集合中包括预设个数的按照预设排列顺序进行播放的待播放视频,接着对待播放视频集合进行缓存过程建模,得到待播放视频集合的体验质量模型,然后针对待播放视频集合中的每个待播放视频,确定当前待播放视频缓存数据量的字节数,并根据当前待播放视频缓存数据量的字节数确定当前待播放视频的第一缓存比例,根据贪心算法确定体验质量子模型对应的体验质量达到最大值时对应的当前待播放视频的第二缓存比例,将第一缓存比例和第二缓存比例中较大的数值确定为当前待播放视频的预缓存比例,最后根据待播放视频集合中各待播放视频分别对应的预缓存比例确定需要进行缓存的目标视频的个数和每个目标视频的预缓存比例,对待播放视频集合进行缓存过程建模,并利用贪心算法对所构建的体验质量模型进行求解,通过将第一缓存比例和第二缓存比例中较大的数值确定为当前待播放视频的预缓存比例,由此得到的目标视频的个数和每个目标视频的预缓存比例更为准确,从而能够有效解决视频播放过程中的卡顿问题,在视频流媒体连续播放过程中卡顿率更低,视频更清晰,可观看视频的比例更大。
实施例四
图4为本发明实施例四提供的一种视频缓存装置的结构示意图,该装置可由软件和/或硬件实现,一般可集成在计算机设备中。如图4所示,该装置可以包括:
视频集合确定模块401,用于确定当前播放视频之后的待播放视频集合,所述待播放视频集合中包括预设个数的按照预设排列顺序进行播放的待播放视频;
质量模型确定模块402,用于对所述待播放视频集合进行缓存过程建模,得到所述待播放视频集合的体验质量模型,所述体验质量模型用于表征体验质量;
参数确定模块403,用于根据贪心算法确定所述体验质量模型中需要进行预缓存的目标视频的个数和每个目标视频的预缓存比例,所述目标视频的个数小于或者等于所述预设个数。
本实施例中提供的技术方案,首先确定当前播放视频之后的待播放视频集合,待播放视频集合中包括预设个数的按照预设排列顺序进行播放的待播放视频,然后对待播放视频集合进行缓存过程建模,得到待播放视频集合的体验质量模型,最后根据贪心算法确定体验质量模型中需要进行预缓存的目标视频的个数和每个目标视频的预缓存比例。通过采用上述技术方案,对待播放视频集合进行缓存过程建模,并利用贪心算法对所构建的体验质量模型进行求解,可以动态合理地确定需要进行缓存的视频的个数和每个视频对应的预缓存比例,从而解决视频播放过程中的卡顿问题,在视频流媒体连续播放过程中卡顿率更低,视频更清晰,可观看视频的比例更大。
本实施例提供的视频缓存装置可适用于上述任意实施例提供的视频缓存方法,具备相应的功能和有益效果。
实施例五
本发明实施例五提供了一种计算机设备,该计算机设备中可集成本发明实施例提供的视频缓存装置。图5为本发明实施例五提供的一种计算机设备的结构示意图,如图5所示:该计算机设备包括存储器501、处理器502和通信装置503;计算机设备中处理器502的数量可以是一个或多个,图5中以一个处理器502为例;计算机设备中的存储器501、处理器502和通信装置503可以通过总线或其他方式连接,图5中以通过总线连接为例。
本实施例提供的一种计算机设备可用于执行上述任意实施例提供的视频缓存方法,具备相应的功能和有益效果。
实施例六
本发明实施例六还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可实现上述任意实施例中的视频缓存方法,该方法具体可以包括:
确定当前播放视频之后的待播放视频集合,所述待播放视频集合中包括预设个数的按照预设排列顺序进行播放的待播放视频;
对所述待播放视频集合进行缓存过程建模,得到所述待播放视频集合的体验质量模型,所述体验质量模型用于表征体验质量;
根据贪心算法确定所述体验质量模型中需要进行预缓存的目标视频的个数和每个目标视频的预缓存比例,所述目标视频的个数小于或者等于所述预设个数。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的视频缓存方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述视频缓存装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
上述实施例中提供的视频缓存装置、设备以及存储介质可执行本发明任意实施例所提供的视频缓存方法,具备执行该方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的视频缓存方法。
注意,上述仅为本发明的较佳实施例。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由权利要求范围决定。

Claims (13)

1.一种视频缓存方法,其特征在于,包括:
确定当前播放视频之后的待播放视频集合,所述待播放视频集合中包括预设个数的按照预设排列顺序进行播放的待播放视频;
对所述待播放视频集合进行缓存过程建模,得到所述待播放视频集合的体验质量模型,所述体验质量模型用于表征体验质量;
根据贪心算法确定所述体验质量模型中需要进行预缓存的目标视频的个数和每个目标视频的预缓存比例,所述目标视频的个数小于或者等于所述预设个数;
所述对所述待播放视频集合进行缓存过程建模,得到所述待播放视频集合的体验质量模型,包括:
针对所述待播放视频集合中的每个待播放视频,根据当前待播放视频中各预设参数的值和所述各预设参数的权重值,确定所述当前待播放视频的体验质量子模型,所述各预设参数包括所述当前待播放视频的码率、卡顿率、出视频时间以及观看比例;
根据所述待播放视频集合中所有待播放视频分别对应的体验质量子模型,确定所述待播放视频集合的体验质量模型。
2.根据权利要求1所述的方法,其特征在于,所述当前待播放视频的码率与所述体验质量子模型对应的体验质量正相关,所述卡顿率与所述体验质量子模型对应的体验质量负相关,所述出视频时间与所述体验质量子模型对应的体验质量负相关,所述观看比例与所述体验质量子模型对应的体验质量正相关。
3.根据权利要求2所述的方法,其特征在于,所述根据所述待播放视频集合中所有待播放视频分别对应的体验质量子模型,确定所述待播放视频集合的体验质量模型,包括:
对所述待播放视频集合中所有待播放视频分别对应的体验质量子模型进行求和操作,得到所述待播放视频集合的体验质量模型。
4.根据权利要求1所述的方法,其特征在于,在所述确定当前播放视频之后的待播放视频集合之时,还包括:
获取当前播放视频的平均缓存速度;
相应的,所述当前待播放视频的卡顿率通过以下方式得到:
根据所述当前待播放视频的总播放时长、码率、未缓存比例和所述平均缓存速度,确定所述当前待播放视频的未缓存比例对应的播放时长;
将所述未缓存比例对应的播放时长和总播放时长相减,得到第一数值;
将所述第一数值和总播放时长相除,得到第二数值;
将所述第二数值和第一预设阈值中较大的数值确定为所述当前待播放视频的卡顿率。
5.根据权利要求4所述的方法,其特征在于,所述当前待播放视频的出视频时间通过以下方式得到:
根据所述当前待播放视频的总播放时长、码率、目标出视频比例和所述平均缓存速度,确定当前待播放视频的出视频时间。
6.根据权利要求5所述的方法,其特征在于,所述根据所述当前待播放视频的总播放时长、码率、目标出视频比例和所述平均缓存速度,确定当前待播放视频的出视频时间,包括:
将所述目标出视频比例与当前待播放视频的预缓存比例相减得到的值确定为当前待播放视频的待缓存比例;
将所述待缓存比例和第二预设阈值中较大的数值与总播放时长相乘,得到所述待缓存比例对应的待缓存时长;
将所述待缓存时长与码率相乘,得到对应的待缓存数据量的字节数;
将所述待缓存数据量的字节数与所述平均缓存速度相除,得到所述当前待播放视频的出视频时间。
7.根据权利要求6所述的方法,其特征在于,所述根据贪心算法确定所述体验质量模型中需要进行预缓存的目标视频的个数和每个目标视频的预缓存比例,包括:
针对所述待播放视频集合中的每个待播放视频,确定当前待播放视频缓存数据量的字节数,并根据所述当前待播放视频缓存数据量的字节数确定当前待播放视频的第一缓存比例,根据所述贪心算法确定所述体验质量子模型对应的体验质量达到最大值时对应的当前待播放视频的第二缓存比例,将所述第一缓存比例和所述第二缓存比例中较大的数值确定为所述当前待播放视频的预缓存比例;
根据所述待播放视频集合中各待播放视频分别对应的预缓存比例确定所述需要进行缓存的目标视频的个数和每个目标视频的预缓存比例。
8.根据权利要求7所述的方法,其特征在于,在所述确定当前播放视频之后的待播放视频集合之时,还包括:
获取当前播放视频的剩余播放时长;
相应的,所述确定当前待播放视频缓存数据量的字节数,包括:
将所述剩余播放时长和所述平均缓存速度相乘,得到第一缓存字节数;
获取在当前待播放视频之前每个已进行预缓存的待播放视频的总播放时长、码率和缓存比例;
针对所述每个已进行预缓存的待播放视频,将对应的总播放时长和对应的码率相乘得到第一乘积,将所述第一乘积和对应的缓存比例相乘,得到所述每个已进行预缓存视频的待播放视频的第二缓存字节数;
累加所有第二缓存字节数,得到在当前待播放视频之前已进行预缓存视频的待播放视频的总缓存字节数;
将所述第一缓存字节数和所述总缓存字节数相减,得到所述当前待播放视频缓存数据量的字节数。
9.根据权利要求8所述的方法,其特征在于,所述根据所述当前待播放视频缓存数据量的字节数确定当前待播放视频的第一缓存比例,包括:
将所述当前待播放视频缓存数据量的字节数和所述当前待播放视频的码率相除,得到第三数值;
将所述第三数值与所述当前待播放视频的总播放时长相除,得到第四数值;
将所述第四数值和第三预设阈值中较小的数值确定为所述当前待播放视频的第一缓存比例。
10.根据权利要求8所述的方法,其特征在于,所述根据所述待播放视频集合中各待播放视频分别对应的预缓存比例确定所述需要进行缓存的目标视频的个数和每个目标视频的预缓存比例,包括:
若所述当前待播放视频缓存数据量的字节数达到第四预设阈值,则将所述当前待播放视频的前一个待播放视频在所述待播放视频集合中排列顺序的序号确定为所述需要进行缓存的目标视频的个数,将被确定为目标视频的每个待播放视频对应的预缓存比例确定为每个目标视频的预缓存比例。
11.一种视频缓存装置,其特征在于,包括:
视频集合确定模块,用于确定当前播放视频之后的待播放视频集合,所述待播放视频集合中包括预设个数的按照预设排列顺序进行播放的待播放视频;
质量模型确定模块,用于对所述待播放视频集合进行缓存过程建模,得到所述待播放视频集合的体验质量模型,所述体验质量模型用于表征体验质量;
参数确定模块,用于根据贪心算法确定所述体验质量模型中需要进行预缓存的目标视频的个数和每个目标视频的预缓存比例,所述目标视频的个数小于或者等于所述预设个数;
所述质量模型确定模块,具体用于:
针对所述待播放视频集合中的每个待播放视频,根据当前待播放视频中各预设参数的值和所述各预设参数的权重值,确定所述当前待播放视频的体验质量子模型,所述各预设参数包括所述当前待播放视频的码率、卡顿率、出视频时间以及观看比例;
根据所述待播放视频集合中所有待播放视频分别对应的体验质量子模型,确定所述待播放视频集合的体验质量模型。
12.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-10中任一项所述的方法。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-10中任一项所述的方法。
CN202011613189.3A 2020-12-30 2020-12-30 一种视频缓存方法、装置、设备及存储介质 Active CN112752117B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011613189.3A CN112752117B (zh) 2020-12-30 2020-12-30 一种视频缓存方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011613189.3A CN112752117B (zh) 2020-12-30 2020-12-30 一种视频缓存方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN112752117A CN112752117A (zh) 2021-05-04
CN112752117B true CN112752117B (zh) 2023-03-28

Family

ID=75649924

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011613189.3A Active CN112752117B (zh) 2020-12-30 2020-12-30 一种视频缓存方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN112752117B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113810773B (zh) * 2021-09-17 2024-03-01 北京百度网讯科技有限公司 视频下载方法及装置、电子设备和存储介质
CN113986849A (zh) * 2021-10-26 2022-01-28 中国第一汽车股份有限公司 音乐缓存方法、装置、电子设备及存储介质
CN114697752B (zh) * 2022-03-30 2023-04-11 北京字跳网络技术有限公司 一种视频处理方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107105224A (zh) * 2017-03-24 2017-08-29 深圳信息职业技术学院 一种视频体验质量评估的方法、装置与系统
CN109302623A (zh) * 2018-11-01 2019-02-01 南京大学 一种基于QoE模型动态自适应视频的传输方法
CN110072130A (zh) * 2019-04-11 2019-07-30 西安交通大学 一种基于http/2的has视频切片推送方法
CN110087110A (zh) * 2019-06-12 2019-08-02 深圳市大数据研究院 应用深度搜索动态调控视频播放的方法及装置
CN110708578A (zh) * 2019-10-22 2020-01-17 北方工业大学 一种视频码率自适应调整方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170034024A1 (en) * 2015-07-28 2017-02-02 Futurewei Technologies, Inc. Parametric model for video scoring
WO2017026991A1 (en) * 2015-08-07 2017-02-16 Hitachi, Ltd. Dynamic caching and predictive maintenance for video streaming
CN107888981B (zh) * 2017-11-16 2020-12-18 北京小米移动软件有限公司 音视频预加载方法、装置、设备及存储介质
CN108260014A (zh) * 2018-04-12 2018-07-06 腾讯科技(上海)有限公司 一种视频播放方法和终端以及存储介质
CN110300315B (zh) * 2019-07-24 2021-08-13 北京达佳互联信息技术有限公司 一种视频码率确定方法、装置、电子设备及存储介质
CN111432246B (zh) * 2020-03-23 2022-11-15 广州市百果园信息技术有限公司 推送视频数据的方法、装置及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107105224A (zh) * 2017-03-24 2017-08-29 深圳信息职业技术学院 一种视频体验质量评估的方法、装置与系统
CN109302623A (zh) * 2018-11-01 2019-02-01 南京大学 一种基于QoE模型动态自适应视频的传输方法
CN110072130A (zh) * 2019-04-11 2019-07-30 西安交通大学 一种基于http/2的has视频切片推送方法
CN110087110A (zh) * 2019-06-12 2019-08-02 深圳市大数据研究院 应用深度搜索动态调控视频播放的方法及装置
CN110708578A (zh) * 2019-10-22 2020-01-17 北方工业大学 一种视频码率自适应调整方法

Also Published As

Publication number Publication date
CN112752117A (zh) 2021-05-04

Similar Documents

Publication Publication Date Title
CN112752117B (zh) 一种视频缓存方法、装置、设备及存储介质
US11228794B2 (en) Method, computer device, and storage medium for media code rate self-adaptation
US20150142702A1 (en) Predicting Call Quality
US20150081924A1 (en) Streaming Media
Hoßfeld et al. To each according to his needs: Dimensioning video buffer for specific user profiles and behavior
Baccour et al. Proactive video chunks caching and processing for latency and cost minimization in edge networks
CN104822068A (zh) 流媒体代理缓存替换方法及装置
CN110809167B (zh) 一种视频播放方法、装置、电子设备及存储介质
García et al. Quality-control algorithm for adaptive streaming services over wireless channels
WO2016134564A1 (zh) 一种用户感知评估方法及装置
CN106686409A (zh) 一种流媒体码率自适应方法及装置、服务器、终端
CN112887795A (zh) 视频播放方法、装置、设备和介质
Sun et al. Optimal strategies for live video streaming in the low-latency regime
Phong et al. Joint preloading and bitrate adaptation for short video streaming
CN112672227B (zh) 基于边缘节点的业务处理方法、装置、节点以及存储介质
Zhang et al. A QOE-driven approach to rate adaptation for dynamic adaptive streaming over http
US9537707B2 (en) System for self organization of an internet protocol television grid
CN115514684B (zh) 音频卡顿评估的方法及装置
Li QoE‐Based Performance Evaluation for Adaptive Media Playout Systems
EP4038892B1 (en) Methods, systems, and media for streaming video content using adaptive buffers
Yan et al. Admission control for wireless adaptive HTTP streaming: An evidence theory based approach
CN107609039B (zh) 基于cdn的热门影片在近端缓存服务器的空间分配方法
CN117560531B (zh) 一种带宽探测方法、装置、电子设备及存储介质
JP7501662B2 (ja) 客観評価装置、客観評価方法、及び客観評価プログラム
WO2022237461A1 (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
GR01 Patent grant
GR01 Patent grant